当前位置: 代码迷 >> 单片机 >> 一个很单片机c程序,关于流水灯的。电路图在上面,代码也在上面
  详细解决方案

一个很单片机c程序,关于流水灯的。电路图在上面,代码也在上面

热度:26   发布时间:2016-04-28 15:39:44.0
一个很单片机c程序,关于流水灯的。电路图在下面,代码也在下面。


代码是:

#include<reg52.h>


#include<absacc.h>

sbit LED_BIT = P1 ^ 6;

 

void my_delay(unsigned int n)


{

  unsigned int i,j;

 

  while(n--)


  {

    for(i = 128; i > 0; i --)

  for(j = 10; j > 0; j--);

  

  }

 


}

void main(void)

{

   LED_BIT = 1;

 

   P0 = 0x01;

   LED_BIT = 0;

   my_delay(100);

   LED_BIT = 1;

   P0 = 0x04;

   LED_BIT = 0;

   my_delay(100);

   LED_BIT = 1;

   P0 = 0x10;

  my_delay(100);

 }

我的问题是:程序编译没有报任何错误,然后下载到单片机上面,但是在单片机上面显示的结果却不是我想象中的那样子的。在我的主函数里面没有加入循环,只是亮第一个、第三个、五个灯,但是在单片机上面的流水灯第一个、第三个、五个灯在循环着亮着。这是为什么啊??


------解决方案--------------------
跟我上次犯的毛病一样,在你的程序的最后加一行while(1){}空语句进行等待,要不然你的单片机加电后执行完成你的程序后它无事可做,会继续循环执行你的语句的。
  相关解决方案