为什么数码管子程序要放在流水灯子程序前面才行?

2020-02-05 09:00发布

#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void delay();
void liushuideng ();
void smg();
uchar temp;
sbit duan=P2^6;
sbit wei=P2^7;
void main()
{
while(1)
{
liushuideng ();
smg();
}
}
void delay()//延时子程序约20ms
{
   uchar x,y;
    for (x=200;x>0;x--)
        for(y=100;y>0;y--);   
}
void liushuideng ()//流水灯子程序
{
temp=0xfe;
  while(1)
{
    P1=temp;
    delay();
    temp=_crol_(temp,1);//左移位
    delay();
}
}
void smg()
{
P0=0XFE;
wei=1;
wei=0;
P0=0X66;
duan=1;
duan=0;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
jswd0810
1楼-- · 2020-02-06 08:36
同意楼上意见,建议楼主在程序中除了主程序大循环不要用死循环
xyr
2楼-- · 2020-02-06 13:14
同意楼上意见.
yummo
3楼-- · 2020-02-06 18:38
用定时器吧,每隔几ms刷新一次!

一周热门 更多>