物联网CC2530按键控制亮灯流水效果
·
在物联网中职竞赛中,关于CC2530单击控制流水灯的暂停与启动,对问题进行分析,逐步对问题做出解释,其间已标出具体初始,以下是具体代码(IAR软件编辑),初学者如有错误之处请指出
#include <iocc2530.h>
unsigned int chushi = 0;
unsigned int ZTQD = 0;//对效果的启动和暂停做个标志位
void delay(unsigned int T)//写一个简单的延时函数
{
while(T--);
}
void Init_port()//相应引脚初始化
{
P1SEL &= ~0x03;
P1DIR |= 0X03;
}
void Scan_SW1()//对按键进行扫描
{
if(P1_2 == 0)
{
delay(200);
if(P1_2 == 0)//如果按键被按下,执行以下代码
{
while(P1_2 == 0);
if(AJ == 0)//按一下,如果初始为启动那就暂停
{
ZTQD = 1;
}
else if(AJ == 1)//反之如果初始值为暂停那就启动
{
ZTQD = 0;
}
}
}
}
void liushui()
{
delay(20);//每次执行效果时做个延时
if(ZTQD == 0)//效果启动时初始值自增
{
chushi++;
}
if(chushi < 3000)//初始自增至3000前做一灯亮一灯不亮
{
P1_0 = 1;
P1_1 = 0;
}
else if(chushi < 6000)//初始自增至6000前做一灯亮一灯不亮
{
P1_0 = 0;
P1_1 = 1;
}
else//反之初始值为零
{
chushi = 0;
}
}
void main()
{
Init_port();//引脚初始
while(1)
{
Scan_SW1();//按键扫描
liushui();//流水效果
}
}
更多推荐



所有评论(0)