文档详情

单片机技术与应用课件 7.按键输入控制LED亮灭.pptx

发布:2024-10-23约2.09千字共15页下载文档
文本预览下载声明

实训:按键输入控制LED亮灭zigbee技术开发主讲人:XXXZigbeetechnologydevelopment

实训:按键输入控制LED亮灭任务描述将ZigBee模块与CCDebugger仿真器连接在一起,并分别连接到电脑,在IAR软件中新建工程和源文件,编译链接程序,下载调试程序,利用按键扫描的方式实现按键控制ZigBee模块上的LED1的开关功能,即按键SW1按下后松开,LED1亮,按键SW1再次按下后松开,LED1灭。

实训:按键输入控制LED亮灭1.ZigBee模块按键电路分析利用for循环语句编写的1ms延时函数知识链接01.ZigBee模块按键SW1的相关电路

实训:按键输入控制LED亮灭知识链接01初始状态,按键SW1未按下,端口P1_2通过电阻R6与电源相连,P1_2端口为高电平,P1_2的输入模式为上拉模式。02当按键按下时,P1_2端口直接与地相连,P1_2端口为低电平。1.ZigBee模块按键电路分析利用for循环语句编写的1ms延时函数02.电路分析

实训:按键输入控制LED亮灭知识链接01按键相关寄存器02PxINP输入模式选择寄存器(x表示端口号0~2)2.按键相关寄存器及其设置按键SW1与端口P1_2相关,因此相关的寄存器I/O端口相关的常用寄存器。输入模式是上拉,下拉或是三态。

实训:按键输入控制LED亮灭知识链接2.按键相关寄存器及其设置P0INP(0x8F)-P0端口输入模式P1INP(0xF6)-P1端口输入模式P2INP(0xF7)-P2端口输入模式位名称复位读/写描述7:0MDP0_[7:0]0x00R/WP0_7-P0_0输入选择位0:上拉/下拉;1:三态位名称复位读/写描述7:2MDP1_[7:2]000000R/WP1_7-P1_2输入选择位0:上拉/下拉;1:三态1:000R0没有使用位名称复位读/写描述7PDUP20R/W对所有P2端口设置上拉/下拉输入:0:上拉,1:下拉6PDUP10R/W对所有P1端口设置上拉/下拉输入:0:上拉,1:下拉5PDUP00R/W对所有P0端口设置上拉/下拉输入:0:上拉,1:下拉4:0MDP2_[4:0]00000P2_4-P2_0输入选择位0:上拉/下拉;1:三态

实训:按键输入控制LED亮灭实训实施1.搭建开发环境

引入CC2530必要的头文件“iocc2530.h”,定义相关变量等。实训:按键输入控制LED亮灭#includeiocc2530.h#defineLED1P1_0//P1_0端口控制LED1发光二极管#defineSW1P1_2//P1_2端口与按键SW1相连01准备工作实训实施2.在编辑窗口设计程序

实训:按键输入控制LED亮灭voiddelay(unsignedinti)//延时函数{unsignedintj,k;for(j=0;ji;j++){for(k=0;k500;k++);}}02设计延时函数实训实施2.在编辑窗口设计程序

实训:按键输入控制LED亮灭voidInit_Port()//端口初始化函数{P1SEL=~0x05;//设置P1_0、P1_2端口位GPIOP1DIR|=0x01;//P1_0端口设置为输出P1DIR=~0x04;//P1_2端口设置为输入P1INP=~0x04;//设置P1_2端口输入模式为上拉/下拉P2INP=~0x40;//设置P1_2端口输入模式为上拉LED1=0;//LED1灭}03设计端口初始化函数Init_gpio(),配置端口寄存器实训实施2.在编辑窗口设计程序

实训:按键输入控制LED亮灭voidScanKeys()//键盘扫描函数{if(SW1==0){//发现SW1有低电平信号delay(100);//按键去抖动if(SW1==0){//确实是有按键动作while(SW1==0);//等待按键1松开04设计按键扫描函数ScanKeys()。voidmain(void)//主函数LED1=~LED1;//将LED1的灯光开关状态取反}}}实训实施2.在编辑窗口设计程序

实训:按键输入控制LED亮灭voidmain()//主函数{Init_Port();while(1){ScanKeys();}}05设计主函数实训实施2.在编辑窗口设计程序

实训:按键输入控制LED亮灭编译、下载程序。编译无错后,将CCDebugger与ZigBee模块相连,并分别连接到电脑,下载程序,测试程序功能。实训实施3.编

显示全部
相似文档