当前位置: 代码迷 >> 单片机 >> 单片机c程序,谁帮小弟我看一下下面的单片机c程序有关问题,有关问题已经注释在程序上了,多谢
  详细解决方案

单片机c程序,谁帮小弟我看一下下面的单片机c程序有关问题,有关问题已经注释在程序上了,多谢

热度:25   发布时间:2016-04-28 16:03:51.0
单片机c程序,哪位高手帮我看一下下面的单片机c程序问题,问题已经注释在程序上了,谢谢。
#include <reg52.h>  
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define Led_port P0 /*定义8个发光二极管端口*/


/*1MS为单位的延时程序*/
void delay_1ms(uint x)
{
  uchar j;
  while(x--){
  for(j=0;j<125;j++)
  {;}
  }  
}


void main()
{

while(1)
{
Led_port = 0x00;
delay_1ms(200);
delay_1ms(200);
delay_1ms(200);
delay_1ms(200);
delay_1ms(200);
delay_1ms(200);
delay_1ms(200);
Led_port = 0xff;
delay_1ms(1400); // 这边和上面的7个200加起来是一样啊,为什么灭灯时间很短?


}


}

------解决方案--------------------
其实你将200改成比如20试试,可能就找到原因了。玩电脑,千万不要让电脑玩了。
------解决方案--------------------
1#很明显的错了,,51单片机的int型2个字节的,unsigned int最大是65535不会溢出的
------解决方案--------------------
不存在溢出问题,UINT的范围应该是0-65535。差别在于少了几次调用过程,还有就是发光管的余辉。
------解决方案--------------------
探讨
不存在溢出问题,UINT的范围应该是0-65535。差别在于少了几次调用过程,还有就是发光管的余辉。
  相关解决方案