一个非常奇怪的程序问题,就几句找不到原因

2019-07-15 21:35发布

STC89C52R 的单片机,买的学习板,没问题。P0 口接LED,程序如下:
  1. #include <reg52.h>

  2. main()
  3. {
  4.   unsigned int x, y;
  5.   while(1)
  6.   {
  7.     P0 = 0x2d;
  8.     for(x=0;x<1000;x++)for(y=0;y<1000;y++);
  9.     P0 = 0x1b;
  10.     while(x--)while(y--);
  11.   }
  12. }
复制代码本意是要看0X2D 和 0X1B 是否对应 2578 和 3678 。写了这个简单的程序让两种亮法交替。没想到结果,3678  亮后就不变了,一直亮着。无语啊,总觉得 3678 应该亮的时间短些才对,怎么会不灭了呢,怎么也想不通。发个帖子各位看看,有没有人能给解释下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。