51单片机利用独立按键控制流水灯

我想利用独立按键控制流水灯但是我点按键的时候流水灯没有反应还是一直工作···我在考虑是不是加个中断在里面如果是的话请高手指导一下···这是我的程序#include<reg... 我想利用独立按键控制流水灯 但是我点按键的时候流水灯没有反应 还是一直工作···我在考虑是不是加个中断在里面 如果是的话请高手指导一下···这是我的程序
#include <reg51.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit key1=P3^4;
void delayms(uint);
uchar aa;
void main()
{ aa=0xfe;
P3=0xff;
while(1)
{ P1=aa;

delayms(1000);
aa=_crol_(aa,1);
}
if(key1==0)
{
P1=0x7e;
delayms(1000);
P1=0xbd;
delayms(1000);
P1=0xdb;
delayms(1000);
P1=0xe7;
delayms(1000);
while(1);
}
else
P1=aa; }

void delayms(uint xms)
{uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
展开
 我来答
尚云社
2012-12-17 · TA获得超过392个赞
知道小有建树答主
回答量:229
采纳率:0%
帮助的人:283万
展开全部
while(1)
{ P1=aa;

delayms(1000);
aa=_crol_(aa,1);
}
这前面的while(1)根本不会退出,也就是不会执行下面的if(key1 == 0)的语句了,所以按键按下去当然没有反应了
if(key1==0)
{
P1=0x7e;
更多追问追答
追问
你好   如果我加一个定时器应该加在那一块? 是在主函数循环后边加 还是在流水灯层序里面加
追答
这个很方便的。明天写个程序给你吧,需要定时器中断吗?
宿兴电子
2024-11-28 广告
联系我们一、有无震荡源 无源这里的“源”不是指电源,而是指震荡源。也就是说,有源蜂鸣器内部带震荡源,所以只要一通电就会叫。而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。 二、价格不同 有源蜂鸣器往比无源蜂鸣器贵,就是因为里面多个震荡... 点击进入详情页
本回答由宿兴电子提供
百度网友e9f676ee8
2012-12-17 · TA获得超过713个赞
知道小有建树答主
回答量:717
采纳率:66%
帮助的人:581万
展开全部
用定时器做流水灯就不会停止了
追问
我想的是加个定时中断在里面 应该怎么加  加在那一块
追答
写中断程序,把扫流水灯放中断里。这有啥不明白的么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
希彤8J
2012-12-17
知道答主
回答量:30
采纳率:0%
帮助的人:7.3万
展开全部
这是C语言吧 不是51单片机
追问
是51单片机啊  我学的是C的  不是用编绘语言
追答
哦哦    我用的 汇编  这个可能不好帮助你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式