单片机开发板测试程序流水灯一直循环,在仿真单片机Proteus中测试,只运行一遍后一直停在P2.0口?

#include<reg51.h>//此文件中定义了51的一些特殊功能寄存器inti;sbitLED1=P2^0;sbitLED2=P2^1;sbitLED3=P2^2;... #include <reg51.h> //此文件中定义了51的一些特殊功能寄存器
int i;

sbit LED1=P2^0;
sbit LED2=P2^1;
sbit LED3=P2^2;
sbit LED4=P2^3;
sbit LED5=P2^4;
sbit LED6=P2^5;
sbit LED7=P2^6;
sbit LED8=P2^7;

void main()
{

LED1=1;
for(i=0;i<20000;i++);
LED1=0; //开始向右面走动
for(i=0;i<20000;i++);
LED2=0;
for(i=0;i<20000;i++);
LED3=0;
for(i=0;i<20000;i++);
LED4=0;
for(i=0;i<20000;i++);
LED5=0;
for(i=0;i<20000;i++);
LED6=0;
for(i=0;i<20000;i++);
LED7=0; //结束向右面走动
for(i=0;i<20000;i++);
LED8=0;
for(i=0;i<20000;i++);

}
展开
 我来答
wgq930
2014-08-21 · TA获得超过2262个赞
知道大有可为答主
回答量:4926
采纳率:51%
帮助的人:1941万
展开全部
你的程序不对!
{
P2=0XFE;
for(i=0;i<20000;i++);
P2=0XFD;
for(i=0;i<20000;i++);
P2=0XFB;
for(i=0;i<20000;i++);
P2=0XF7;
for(i=0;i<20000;i++);
P2=0XEF;
for(i=0;i<20000;i++);
P2=0XDF;
for(i=0;i<20000;i++);
P2=0XBF;
for(i=0;i<20000;i++);
P2=0X7F;
for(i=0;i<20000;i++);
}
上面是根据你的思路;
而最简单的是用一句左移指令,就可以搞定。
还是你自己想吧。
梦飞翔plp
2014-08-21
知道答主
回答量:16
采纳率:0%
帮助的人:4.1万
展开全部
你其他的LED全被点亮了,状态不会变,只有LED1会闪烁。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式