CC2530按键控制LED灯开关
发布日期:2021-05-07 18:15:54 浏览次数:12 分类:技术文章

本文共 1119 字,大约阅读时间需要 3 分钟。

文章目录:


实验要求

代码实现

#include "ioCC2530.h"#define D3 P1_0#define D4 P1_1#define D5 P1_3#define D6 P1_4//两个按键#define SW1 P1_2#define SW0 P0_1//延迟函数void Delay(unsigned int t){  while(t--);}//端口初始化函数void Init_Prot(){//配置4个LED灯的引擎  //选择端口的功能  P1SEL &=~0x1B;//设置通用io端口  //配置端口的方向  P1DIR |=0x1B;  //配置SW1按键引脚  P1SEL &=~0x04;  P1DIR &=0x04;//输入模式 清零    //将输入模式设置为上拉模式    P1INP &=~0x04;    P2INP &=~0x40; //第6位清零//配置SW2按键引脚  P0SEL &=~0x02;  P0DIR &=0x02;//输入模式 清零    //将输入模式设置为上拉模式    P0INP &=~0x02;    P2INP &=~0x20; //第5位清零    //第7位对应的是P2端口    //第6位对应的是P1端口    //第5位对应的是P0端口}//灯光检测函数void LED_Check(){  D3=1;  D4=1;  D5=1;  D6=1;  Delay(60000);  Delay(60000);  D3=0;  D4=0;  D5=0;  D6=0;}//按键扫描函数void Scan_Keys(){  //按键1  if(SW1 == 0)//可能有按键按下,那么进行去抖动操作  {    Delay(200);     if(SW1 == 0)//那么就是按键触发的信号     {      //按键处理程序       while(SW1 == 0);//低电平、按下状态       D4=~D4;     }  }     //按键2  if(SW0 == 0)//可能有按键按下,那么进行去抖动操作  {    Delay(200);     if(SW0 == 0)//那么就是按键触发的信号     {      //按键处理程序       while(SW0 == 0);//低电平、按下状态       D6=~D6;     }  }}void main(void){  //端口初始化  Init_Prot();  LED_Check();  while(1)  {    Scan_Keys();  }}

 

上一篇:CC2530按键控制跑马灯的运行与暂停
下一篇:基于CC2530的跑马灯实验

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2025年03月23日 01时08分11秒