找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 14013|回复: 0
打印 上一主题 下一主题
收起左侧

简单的单片机流水灯代码

[复制链接]
跳转到指定楼层
楼主
ID:354842 发表于 2019-4-19 11:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机流水灯源程序如下:
  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, 下载次数: 18)



评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表