找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2681|回复: 0
收起左侧

单片机发光二极管流水显示(采用死循环的方法)

[复制链接]
ID:310898 发表于 2018-4-18 15:04 | 显示全部楼层 |阅读模式
流水灯的单片机源程序如下:
  1. ////////////////////////////////////////////////////////////////////////////
  2. //                给力者单片机开发学习系统,开发学习都给力!              //
  3. ////////////////////////////////////////////////////////////////////////////
  4. //                     学习51单片机,其实可以很简单                       //
  5. ////////////////////////////////////////////////////////////////////////////
  6. #include <AT89X52.h>       //调用51单片机的头文件

  7. //---------------------------------------
  8. //定义一个数据表格
  9. unsigned char code TAB[16]=
  10. {                          //定义表格一定要使用code,这样会做到程序存储区中
  11.     0x01,                  //表格第1步数据0b00000001
  12.     0x02,                  //表格第2步数据0b00000010
  13.     0x04,                  //表格第3步数据0b00000100
  14.     0x08,                  //表格第4步数据0b00001000
  15.     0x10,                  //表格第5步数据0b00010000
  16.     0x20,                  //表格第6步数据0b00100000
  17.     0x40,                  //表格第7步数据0b01000000
  18.     0x80,                  //表格第8步数据0b10000000
  19.     0xC0,                  //表格第9步数据0b11000000
  20.     0xE0,                  //表格第10步数据0b11100000
  21.     0xF0,                  //表格第11步数据0b11110000
  22.     0xF8,                  //表格第12步数据0b11111000
  23.     0xFC,                  //表格第13步数据0b11111100
  24.     0xFE,                  //表格第14步数据0b11111110
  25.     0xFF,                  //表格第15步数据0b11111111
  26.     0x00,                  //表格第16步数据0b00000000
  27. };

  28. //---------------------------------------
  29. //名称: 主函数
  30. //适用:给力者GL9单片机开发学习系统
  31. //---------------------------------------
  32. void main(void)            //主函数,单片机开机后就是从这个函数开始运行
  33. {

  34.     unsigned int a=0;      //定义一个int型变量,做延时用
  35.     unsigned char b=15;    //定义一个char型变量,显示内容用

  36.     while(1)               //死循环,单片机初始化后,将一直运行这个死循环
  37.     {
  38.         for(a=0;a<20000;a++); //延时若干时间,具体时长暂不理会
  39.         if(++b>15) b=0;     //b做加1操作,并限制在0-15以内
  40.         P0=TAB[b];          //将TAB[b]的值送入PO口输出

  41.     }
  42. }

复制代码

所有资料51hei提供下载:
【实验03】发光二极管流水显示.rar (10.07 KB, 下载次数: 8)
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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