微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于郭天祥老师第二课课后习题8个小灯闪烁的问题!求教

关于郭天祥老师第二课课后习题8个小灯闪烁的问题!求教

时间:10-02 整理:3721RD 点击:
/*8个发光管间隔200ms由上至下,再由下至上,再重复一次,然后全部熄灭再以300ms间隔全部闪烁5次。重复此过程。*/
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void delay (uint);
void main ()
{

while (1)
{   int x;  
  for(x=2;x>0;x--)
  {
   int x;
   uchar temp;
   temp=0x7f;
   P1=temp;
   for (x=7;x>0;x--)
    {
    delay(4);
    temp=_cror_(temp,1);
    P1=temp;
    //delay(4);
    }
   for (x=7;x>0;x--)
    {
     delay(4);
    temp=_crol_(temp,1);
   // delay(4);
    P1=temp;
    }
  }
  for(x=5;x>0;x--)
  {  uchar temd;
   temd=0xff;
   P1=temd ;
   delay(6);
   temd=0x00;
   P1 =temd;
  }
}  
}
void delay (uint z)
{
int x,y;
for(x=z;x>0;x--)
  for(y=12500;y>0;y--)
  for(x=10;x>0;x--);
}
前面流水灯没问题,但是后面8个灯闪烁的时候就是不出效果!

P1 =temd;后面加个延时看看,你现在的程序是灯一点亮就马上熄灭了,肉眼看不到

求教!谢谢! 谢谢了,可能问题比较低级,但是我真的调试了好几遍,就是不知道怎么回事。我用面包板做的。

程序没有问题啊 在学习板也不行吗

恩,对的。我自己做的面包板,流水灯程序都可以走,就是到了8个灯闪烁的时候就是不行了。愁死~~~

恩,对的。刚弄后面的东西的时候突然想到了。谢谢了!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top