51单片机1个按键控制2个灯分别点亮的程序。 5

51单片机1个按键控制程序:按下松开,第1个灯亮;再按下松开,第1个灯灭,第2个灯亮;再按下松开,2个灯都不亮。... 51单片机1个按键控制程序:按下松开,第1个灯亮;再按下松开,第1个灯灭,第2个灯亮; 再按下松开,2个灯都不亮。 展开
 我来答
feng_3220
推荐于2017-05-18 · TA获得超过142个赞
知道小有建树答主
回答量:474
采纳率:0%
帮助的人:293万
展开全部
#include <reg51.h>
#define uchar unsigned char
sbit key = P1^0;
sbit led0 = P1^1;
sbit led1 = P1^2;
uchar count = 0;
void delayms (uchar time)//延时
{
for(time; time>0; time--)
{
TMOD |= 0x01;
TH0 = 0xfc;
TL0 = 0x18;
TR0 = 1; //启动计数器0
while(TF0!=1);//计数溢出
TF0 = 0;
TR0 = 0;
}
}
void scan_key (void)
{
if (!key)
{
delayms (5);
if (!key)
{
delayms (1);
while (!key);
count++;
if (count==3)
{
count = 0;
}
}
}
}
void main (void)
{
P1 = 0xff;
while (1)
{
scan_key ();
if (count==0)
{
led0 = 1;
led1 = 1;
}
if (count==1)
{
led0 = 0;
led1 = 1;
}
if (count==2)
{
led0 = 1;
led1 = 0;
}
}
}
追问
A421.C(3): error C129: missing ';' before 'uchar'  提示有这个问题,是怎么回事?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式