标题: 单片机流水灯循环显示源代码 [打印本页]

作者: juppy    时间: 2017-12-7 23:17
标题: 单片机流水灯循环显示源代码
51单片机流水灯循环显示单片机源程序如下:
  1. //头文件及端口的定义//
  2. #include <reg52.h>
  3. #include <intrins.h>          //包含左移和右移函数的头文件//
  4. void delayms(unsigned char ms)        //延时函数//
  5. {unsigned char i  ;
  6. while (ms--){
  7. for (i=0;i<120;i++);
  8. }
  9. }
  10. main()//主函数//
  11. {unsigned char LED;//定义变量//
  12. unsigned char j;
  13. while(1)
  14. {j=0x07;
  15. LED=0xfe;              //赋值循环次数//
  16. P1=LED;       //P0口送0xfe=11111110,二极管低电平亮灯,最右侧第八盏灯点亮//
  17. while (j>0)
  18. {delayms (250);
  19.   LED=_crol_(LED,1);   //调用intrins.h头文件中的crol()函数,将二进制向左移动一位,初始值是 //
  20.                        //0xfe=11111110,向左移,l动一位,就是将0向左移动一位,0xfd=11111101,使彩灯向左一次点亮//
  21.         P1=LED;
  22.         j--;
  23. }
  24.    j=0x7f;      //赋值循环次数//
  25.    LED=0x7f;
  26.    P1=LED;                                        //p0口送0x7f=01111111二极管低电平点亮,最左侧第一盏灯点亮//
  27.    while (j>0)
  28.          {
  29.          delayms(250);
  30.          LED=_cror_(LED,1);   //调用intrins.h头文件中的cror()函数,将二进制向右移动一位,初始值是0x7f=01111111,向右移动一位,就是将//
  31.                             //0向左移动一位。0xbf=10111111,使灯从左向右依次点亮//
  32.           P1=LED;
  33.           j--;

  34.          }
  35. }
  36. }
复制代码

所有资料51hei提供下载:
流水灯循环.zip (13.21 KB, 下载次数: 22)



作者: 阳霜    时间: 2018-9-3 14:47
led=0xfe中0和x是什么意思
作者: 燕默null    时间: 2018-10-25 15:31
阳霜 发表于 2018-9-3 14:47
led=0xfe中0和x是什么意思

那是十六进制的表示方式,代表的是1111 1110
作者: zhang1314hong    时间: 2018-10-25 23:44
j=0x7f; 应该是0x07。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1