单片机c语言求助
时间:10-02
整理:3721RD
点击:
P3.4口是一个按键,p1.0是一个发光二极管,我想按一下灯就亮,再按一下就灭,求一个程序文件。
#include"reg52.h"
typedef unsigned char uint8;
typedef unsigned int uint16;
sbit KEY = P3^4;
sbit LED = P1^0;
void delay_ms()
{
//自己写
}
void main(void)
{
if(KEY == 0)
{
}
}
没写完
if(KEY == 0)
{
LED = 0;
}
else
{
LED = 1;
}
楼上的程序,KEY是不复位的吧,假如是自复位的要怎么写,能实现吗
要添加WHILE(KEY == 0);语句,保持按键信号
那就检测上升沿或者下降沿罗,然后计数,2种情况
if(key==0)
{
a++;
if(a==1)
{灯亮}
if(a==2)
{灯灭
a=0;}
}
大概是这样 延时之类的自己加。
更简单的是使用 ~ 符合
好!
谢谢分享,谢谢分享
- - 哪有那么麻烦,每检测一次按键,就把IO口翻转一次就行了。检测啥边沿。
