微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 51单片机 为何同样的延时程序,延时效果却有长有短

51单片机 为何同样的延时程序,延时效果却有长有短

时间:10-02 整理:3721RD 点击:
//让实验板上的灯来回呈现流水灯的效果。 但上的很快  下的很慢    大伙看视屏吧[media=x,500,375][/media]

#include<REG52.H>
  #define uint unsigned int
  void main()
{
   uint i,j;
   while(1)
  {
   P1=~(1<<j++);  //0000  0001 ,J++是程序完成后自加一个数。1<<j++就是说J等于1移1位,3就是移3位,整体取反是因为灯0才亮
   for(i=0;i<20000;i++);
     if(8==j)  //限位J  是否自加到8 因为只有8个数码管
       {
        j=0;
        while(j<6) //限位 不能让他跳出右移程序
         {
       P1=~(0X40>>j++);
        for(i=0;i<20000;i++);

          }
           j=0;
       }
  }

uint j   要等到  j 回到0, 好久

谢谢大侠的提醒   

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

网站地图

Top