- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 LPC2000系列微处理器 片上外设接口 6.1 引脚连接模块 6.2 GPIO原理及应用 6.3 外部中断输入 6.4 定时计数电路 6.5 UART串行接口 6.6 片上一些其它常用接口(SPI、I2C、A/D、WDT、PWM及RTC) 6.1 引脚连接模块 6.1 引脚连接模块 选择寄存器描述 LPC2000系列微控制器具有三个32位宽度PINSELx寄存器,其中PINSEL0和PINSEL1控制端口P0,PINSEL2根据芯片的不同控制的端口数量也不同。通过这三个寄存器即可实现引脚功能的选择,管脚连接模块寄存器如表6.1所示。 管脚功能选择寄存器0(PINSEL0 ) 管脚功能选择寄存器1(PINSEL1 ) 应用示例 【例6-1】 要求将P0.8、P0.9设置为TxD1、RxD1 通过查阅PINSE0寄存器设置表,得到P0.9和P0.8的控制位为PINSEL0[19:16],当该域设置为[0101B] (0x05)时对应管脚功能选择 RxD1和 TxD1。 简单设置:PINSEL0 = 0x05 16; “读—修改—写”方式 设置: PINSEL0 = (PINSEL0 0xFFF0FFFF) | (0x05 16); 方法:读取原设置数据,通过“与、或”操作仅修改需要设定的位,然后把新的数值写入管脚选择寄存器,实现预置功能。 LPC2000系列微处理器片上外设接口 6.1 引脚连接模块 6.2 GPIO原理及应用 6.3 外部中断输入 6.4 定时计数电路 6.5 UART串行接口 6.6 片上一些其它常用接口(SPI、I2C、A/D、WDT、PWM及RTC) 6.2 GPIO原理 GPIO(General Purpose Input/Output ports---通用输入/输出端口)是ARM系列芯片中的基本资源,用于二进制数据(数字电路的‘0/1’)的输入和输出。 6.2 GPIO GPIO相关寄存器描述——IOxPIN GPIO相关寄存器描述——IOxDIR GPIO相关寄存器描述——IOxSET GPIO相关寄存器描述——IOxCLR 6.2 GPIO 使用GPIO注意要点 GPIO应用示例——GPIO输入应用 读取P0.0引脚状态,对应C代码如下: ... uint32 PinStat; PINSEL0 = 0xFFFFFFFC; (1) 设置P0.0为GPIO IO0DIR = 0xFFFFFFFE; (2) 设置P0.0口为输入 PinStat = IO0PIN; (3) 从IO0PIN读取引脚状态 ... GPIO综合应用 通过读取两个按键K1、K2值,根据读取数值控制发光二极管LED和蜂鸣器Beep。要求有K1键按下,则LED点亮,K2键按下则Beep鸣响,反之熄灭、静音。 实现上述功能,需要把P0.0和P0.1管脚设置为输入,设置P0.7和P0.8为输出,然后根据读取数值,分别控制输出 GPIO综合应用——程序代码 #define K1 1 0 // K1按键连接与P0.0管脚, K1按下时P0.0为低电平 #define K2 1 1 // K2按键连接与P0.1管脚, K2按下时P0.1为低电平 #define BEEP 1 7 // P0.7控制蜂鸣器,高电平蜂鸣 #define LED 1 8 // P0.8控制发光二级管,高电平点亮 /************************************************************* ** 函数名称 :DelayNS() ** 函数功能 :可变参数软件延时 ** 入口参数 :dly 延时参数,值越大,延时越久 ** 出口参数 :无 *************************************************************/ void DelayNS (uint32 dly) { uint32 i; for ( ; dly0; dly--) for (i=0; i50000; i++); } GPIO综合应用——程序代码(续) /************************************************************* ** 函数名称 :main() ** 函数功能 :有K1键按下,则LED点亮,K2键按下则Beep鸣响,反之熄灭、
您可能关注的文档
最近下载
- 2023年一级建造师工程经济历年真题章节练习题集.pdf VIP
- 《肺结核病报告转诊制度》.pdf VIP
- 脑梗塞ppt课件(精).pptx VIP
- 高血压、糖尿病培训试题(附答案).docx VIP
- pixelgridV4.5高分辨率卫星影像数据处理系统卫片使用手册.pdf VIP
- 贵州财经大学 法学综合(民法、经济法)A卷 2018年考研专业课真题.pdf VIP
- 2025年河南省高考对口升学烹饪试卷 .pdf VIP
- 贵州财经大学 法学综合(民法、经济法)B卷 2018年考研专业课真题.pdf VIP
- 论刑法中多次犯的理论与实践剖析:从概念厘定到司法适用.docx VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(最新).pdf VIP
文档评论(0)