- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Zigbee技术基础实验四
Zigbee技术基础实验搭建 实验四 外部中断实验 一、 实验目的 1. 掌握CC2531外部中断的使用方法。 2. 了解CC2531中断寄存器的配置。 二、 实验设备 l ZigBee模块 l JTAG仿真器 l 电源适配器 l IAR 集成开发环境 三、 实验内容 使用两个按键K1和K2产生中断信号,翻转LED灯的状态。这里两个按键不是做键盘用,而是产生中断触发信号。 Zigbee技术基础实验搭建 四、 实验原理 1. 中断: CPU有18个中断源。每个中断源都有它自己的位于一系列SFR寄存器中的中断请求标志。相应标志位请求的每个中断可以分别使能或禁用。中断分别组合为不同的、可以选择的优先级别。 有关中断的详细内容,请参考阅读CC253x数据手册第2.5节。 2. 硬件原理:(如图4-所示) 按键SB2连接CC2531的管脚P1_1。不按下按键SB2时,管脚P1_1为高电平3.3V,即逻辑1。按下按键SB2时,管脚P1_1由高电平3.3V变为低电平0V,即由逻辑1变为逻辑0。 CC2531有21个可编程的I/O口引脚,P0、P1口是完全的8 位口,P2 口只有5 个可使用的位(P2_4,P2_3,P2_2,P2_1,P2_0),全部21个数字I/O口引脚都具有响应外部中断的能力。如果需要响应外部设备,可对I/O口引脚产生中断,同时外部中断事件也能被用来唤醒休眠模式。 Zigbee技术基础实验搭建 Zigbee技术基础实验搭建 图4-1按键原理图 把P1_1配置为输入,并且使能P1_1的外部中断功能,将中断设置为下降沿触发,则按下按键时触发P1_1的外部中断。SB3的工作原理同SB2。 Zigbee技术基础实验搭建 图4- LED原理图 图4-2为LED原理图,LED灯HL7的阴极连接管脚P0_5,当P0_5为0时,LED灯HL7亮,当P0_5为1时,LED灯HL7灭。 Zigbee技术基础实验搭建 3. 实验相关寄存器: 实验中操作了的寄存器有P0,P2(实验一),P1SEL(实验二),P0DIR(实验一),P1DIR(实验三),P1INP(实验二),P1IEN,PICTL,P1IFG,IEN0,IEN2,等寄存器。 3.1 P1IEN (P1口中断使能寄存器): P1IEN寄存器使能或禁止P1口对应位的中断功能。向对应位写入0,则禁止其中断功能,向对应位写入1,则使能其中断功能。复位值为0x00,即默认为禁止所有位的中断功能。 PICTL(中断控制寄存器): 本实验使用的端口为P1,因此只需设置PICTL的第1位P1ICON为1,即下降沿触发。 P1IFG(P1口中断标志寄存器): IEN2(中断使能寄存器2): 本实验使用的端口为P1,因此只需设置IEN2的第4位P1IE为1,即使能P1口中断。 4. 中断的使用方法 为了使能任一中断功能,应当采取下列步骤: l 清除中断标志。 l 如果有,则设置SFR 寄存器中对应的各中断使能位为1。 l 设置寄存器IEN0、IEN1 和IEN2 中对应的中断使能位为1。 l 设置IEN0 中的EA 位为1 使能全局中断。 l 在该中断对应的向量地址上,运行该中断的服务程序。 5. 实验相关函数: #include ioCC2530.h #define YLED P2_0 //定义LED1为P2_0口控制 #define RLED P0_5 //定义LED2为P0_5口控制 #define uchar unsigned char #define uint unsigned int /***************************************** //函数声明 *****************************************/ void Delay(uint n); /***************************************** //io及LED初始化 *****************************************/ void Init_IO_AND_LED(void) { P2DIR |= 0x01; P0DIR |= 0x20; RLED = 1; YLED = 0; //黄灯亮表示系统开始工作 P1IEN = 0X03; //开P1_0 ,P1_1中断掩码 PICTL = 0X02; //P1下降沿触发 EA = 1; //开总中断 IEN2 |= 0X10; // P1IE = 1; P1IFG |= 0x00; //中断标志初
您可能关注的文档
- USB 2.0测试.pdf
- VR网球3TENNIS ACADEMY训练场介绍.pdf
- W. Chaotic versus classical stream ciphers – A comparative study.pdf
- WebRTC初探.pdf
- WPF中2维坐标系统.doc
- X-STREAM H2分析仪资料.pdf
- – Vision-Based Single-Stroke Character Recognition for Wearable Computing – Computer Visi.pdf
- _strong_二维磁法数据多目标粒子群反演算法_strong_.pdf
- ◇Homocysteine-lowering therapy a role in stroke prevention.pdf
- 什么是加拿大Stream-Tek气力输送器.pdf
文档评论(0)