📄 main.c
字号:
//CD WXL
#include <ioCC2430.h>
#define uint unsigned int
#define uchar unsigned char
//定义控制灯的端口
#define RLED P1_0 //定义LED1为P10口控制
#define YLED P1_1 //定义LED2为P11口控制
#define ON 0
#define OFF 1
#define K1 P1_2
#define K2 P1_3
//函数声明
void Delay(uint); //延时函数
void Initial(void); //初始化P口
void InitKey(void);
uchar KeyScan(void);
uchar Keyvalue = 0 ;
uchar GlintFlag[2] = {0,0};
/****************************
//延时
*****************************/
void Delay(uint n)
{
uint tt;
for(tt = 0;tt<n;tt++);
for(tt = 0;tt<n;tt++);
for(tt = 0;tt<n;tt++);
for(tt = 0;tt<n;tt++);
for(tt = 0;tt<n;tt++);
}
/*****************************************
//按键初始化
*****************************************/
void InitKey(void)
{
P1SEL &= ~0X0C;
P1DIR &= ~0X0C; //按键在P12 P13
P1INP |= 0x0c; //上、下拉
}
/****************************
//初始化程序
*****************************/
void Initial(void)
{
P1DIR |= 0x03; //P10、P11定义为输出
RLED = 1;
YLED = 1; //LED
}
/*****************************************
//读键值
*****************************************/
uchar KeyScan(void)
{
if(K1 == 0)
{
Delay(100);
if(K1 == 0)
{
while(!K1);
return(1);
}
};
if(K2 == 0)
{
Delay(100);
if(K2 == 0)
{
while(!K2);
return(2);
}
};
return(0);
}
/***************************
//主函数
***************************/
void main(void)
{
Initial(); //调用初始化函数
InitKey();
RLED = 0; //开红灯,表示系统工作
while(1)
{
Keyvalue = KeyScan(); //扫键
if(Keyvalue>0)
{
if(Keyvalue == 1)
GlintFlag[0] = !GlintFlag[0];
if(Keyvalue == 2)
GlintFlag[1] = !GlintFlag[1];
};
if(GlintFlag[0]==1)
{
RLED = !RLED; //闪灯
Delay(4000);
}
else
RLED = OFF; //关灯
if(GlintFlag[1]==1)
{
YLED = !YLED;
if(GlintFlag[0] == 0)
Delay(4000);
}
else
YLED = OFF;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -