本人刚学stc,c语言编程,什么都不会,望各位海涵。说明:按下按键灯灭,不按亮。我的程序如下:
#include "15W4KxxS4.h"
#define uint16 unsigned int
sbit KEY = P5^4; //用户按键S3用IO口P54
sbit LED_B = P0^6; //蓝色LED用IO口P06
void delay_ms(uint16 x)
{
uint16 j,i;
for(j=0;j<x;j++)
{
for(i=0;i<1100;i++);
}
}
void KEY_Scan(void)
{
if(KEY == 1)
{
delay_ms(10); //防止抖动
if(KEY== 1) //按键按下
{
LED_B=0; //点亮蓝色指示灯
while(KEY == 0); //等待按键释放
LED_B=1; //熄灭蓝色指示灯
}
}
}
int main()
{
P0M1 &= 0xBF; /*1011 1111 */ P0M0 &= 0xBF; //设置P0.6为准双向口
P5M1 &= 0xEF; /*1110 1111 */ P5M0 &= 0xEF; //设置P5.4为准双向口
while(1)
{
KEY_Scan(); //按键输入检测函数
}
}
|