《中职 物联网应用基础实训4.3教学课件 网页制作基础教程(Dreamweaver CS6 第2版) .pptx》由会员分享,可在线阅读,更多相关《中职 物联网应用基础实训4.3教学课件 网页制作基础教程(Dreamweaver CS6 第2版) .pptx(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、中职 物联网应用基础实训4.3 教学课件 网页制作基础教程(Dreamweaver CS6 第2版)工信版第四单元CC2530单片机基础任务卡4.3 流水闪烁I/O端口的配置应用任务卡4.3 流水闪烁I/O端口的配置应用CC2530是TI公司开发的一款专门用于无线传感器网络中进行数据传输的集成芯片。CC2530结合了ZigBee协议栈(Z-Stack),提供了强大和完整的ZigBee解决方案。要让CC2530单片机完成特定的工作,需要为单片机植入相应功能的程序。开发人员利用编程工具将编写好的控制代码编译生成二进制文件如.hex文件,下载到CC2530单片机中。任务提出3任务卡4.3 流水闪烁I
2、/O端口的配置应用CC2530模块是Zigbee节点板的核心部分,CC2530芯片有21个I/O引脚,其中部分引脚可以控制Zigbee节点板上的LED灯,本任务要实现对LED灯的控制,因此需要知道CC2530是如何向外输出控制信号的,LED是如何与CC2530进行连接和工作的,以及怎样通过程序来控制CC2530输出所需要的信号。问题1:CC2530有哪些1/O端口??问题2:CC2530的1/O端口有什么特性?问题3:如何编写程序控制I/O端口对外输出信号?拓展问题:要控制CC2530的I/O端口需要用到哪些寄存器?任务提出31.了解CC2530的I/O端口及端口所具备的特性2.熟悉CC253
3、0控制I/O口的相关寄存器3.能够根据实际应用对I/O口进行配置4.能够使用IAR编写程序通过CC2530的I/O端口控制Zigbee节点板的LED灯。5.熟练.hex文件的烧写。任务目标3任务卡4.3 流水闪烁I/O端口的配置应用1.了解CC2530的I/O口(1)观察图4-22CC2530芯片的引脚布局和Zigbee模块上的CC2530芯片。CC2530单片机采用QFN40封装,外观是一个正方形,每个边上有10个引脚,总共40个引脚。(2)CC2530的40个引脚中有21个数字I/O引脚,这些引脚组成3个8位端口,分别为端口0、端口1和端口2,表示为P0、P1和P2。其中,P0和P1是完全
4、的8位端口,而P2仅有5位可以使用。根据引脚布局图,了解这些引脚的位置和名称。任务实施3图4-12任务卡4.3 流水闪烁I/O端口的配置应用2.CC2530通用I/O端口相关的寄存器CC2530的所有I/O端口都可通过SFR寄存器P0,P1和P2进行位和字节寻址。每个端口引脚都可以单独设置为通用I/O或外设I/O。用户可以通过配置相关的寄存器使用I/O端口。(1)常用寄存器及其功能如表4-6所示。任务卡4.3 流水闪烁I/O端口的配置应用(2)寄存器配置PxSEL端口功能选择寄存器,各位功能配置如表4-7所示。任务卡4.3 流水闪烁I/O端口的配置应用PxDIR端口方向设置寄存器,各位功能配置
5、如表4-8所示。配置举例:例1:P1SEL&=0 x02;此语句相当于P1SEL=P1SEL&0 x02;作用是设置P1SEL寄存器的值为其原来值与0 x02进行&运算的结果。假设P1SEL原来的值为xxxxxxxx,0 x02转换为二进制为11111101,两者进行&(按位与)运算后的值为xxxxxx0 x,即此运算设置了P1SEL寄存器的第1位为0,也就是设置P1_1端口为通用I/O端口。计算过程如表4-9所示。任务卡4.3 流水闪烁I/O端口的配置应用例2:P1DIR|=0 x02;分析得,此语句为修改寄存器P1DIR的值为xxxxxx1x,即设置了P1DIR寄存器的第1位为1,目的是设
6、置P1_1端口的数据传输方向为输出。例3:P1_1=1;此语句为设置寄存器P1第1位的值为1,即使P1_1引脚端口输出1(高电平)。任务卡4.3 流水闪烁I/O端口的配置应用3.实现流水灯2个LED循环亮灭(间隔1秒,亮1秒)。(1)用Visio软件绘制本程序流程图,如图4-24所示。任务卡4.3 流水闪烁I/O端口的配置应用(2)代码参考#include/引用头文件#defineuintunsignedint/宏定义类型#defineucharunsignedchar/宏定义类型#defineLED1P1_0/定义LED1为D3由P10口控制#defineLED2P1_1/定义LED2为D4
7、由P11口控制voiddelay(uintn)/延时函数uinti;for(i=0;ttn*n;i+);任务卡4.3 流水闪烁I/O端口的配置应用voidmain(void)/主函数P1DIR|=0 x03;/P10、P11定义为输出LED1=0;/LED1初始状态为灭LED2=0;/LED2初始状态为灭while(1)delay(100);/延时LED1=1;/点亮LED1delay(100);/延时LED1=0;/熄灭LED1LED2=1;/点亮LED2delay(100);/延时LED2=0;/熄灭LED2任务卡4.3 流水闪烁I/O端口的配置应用(3)将上述程序进行编译,下载到zigb
8、ee板子上。观察zigbee板子的LED灯亮灭状态切换的效果。(4)扫描二维码4-4可查看本任务流水灯程序运行效果,源程序代码参考4单元资源文件夹内的4.3。(5)尝试修改上述程序内容,实现其他LED灯的亮灭闪烁效果任务卡4.3 流水闪烁I/O端口的配置应用二维码4_41.总结通过向I/O口输出信号控制LED灯的亮灭,寄存器的设置。2.目标达成测试(1)CC2530芯片有40个引脚,其中个I/O引脚。这些引脚组成3个8位端口,分别为端口0、端口1和端口2,表示为、和。(2)PxSEL寄存器是端口寄存器,用来将某个引脚设置为通用I/O或者是外设I/O。(3)PxDIR寄存器是端口寄存器,当端口为
9、通用I/O端口时,用来设置某个引脚的数据传输方向。任务总结3任务卡4.3 流水闪烁I/O端口的配置应用(3)PxDIR寄存器是端口寄存器,当端口为通用I/O端口时,用来设置某个引脚的数据传输方向。(4)在下方写出将P0端口的所有引脚设置为通用I/O端口,且数据方向为输出的语句。(5)拓展作业:分析下列语句的含义和作用。P1SEL&=0 x03;P1DIR|=0 x02;任务卡4.3 流水闪烁I/O端口的配置应用1.下列表4-6是CC2530的两个寄存器的设置要求,请解读含义,并写出相应的语句。(1)含义:(2)配置语句:能力拓展3任务卡4.3 流水闪烁I/O端口的配置应用2.用IAR编写程序烧写到CC2530上,使Zigbee节点板的四个LED灯按照自左向右的顺序流水闪烁,每个LED灯的点亮1秒,间隔时间为1秒。3.参考知识链接内容,编写程序实现利用按键SW1控制LED灯的亮灭。能力拓展3任务卡4.3 流水闪烁I/O端口的配置应用