找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2837|回复: 2
收起左侧

单片机4动态数码管显示数据 内附仿真原理图及源程序

[复制链接]
ID:257868 发表于 2017-12-8 13:26 | 显示全部楼层 |阅读模式
(分享设计)这是昨天做的4动态数码管显示数据实验设计
电路设计较为简单·,通过按键的调节,实现
数码管的动态显示。proteus仿真及工程文件
都是原创,分享出来。望各位大神多指教。
proteus仿真电路图.png 工程文件截图.png

单片机源程序:
  1. #include <reg51.h>
  2. #define INT8U unsigned char
  3. #define INT16U unsigned int
  4. sbit K1 = P2^0;
  5. sbit K2 = P2^1;
  6. INT8U code SEG_CODE[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
  7. INT16U Count = 2017;
  8. INT16U Temp;
  9. INT8U array[] = {0,0,0,0};
  10. INT8U Adjust = 0;
  11. INT8U Pre_key = 0x0F;
  12. void delay_ms(INT16U x)
  13. {
  14. INT8U t; while(x--) for(t = 0; t < 120; t++);
  15. }
  16. void digit(INT16U n)
  17. {
  18. array[0] = 0; while (n >= 1000)         { array[0]++;n -= 1000;}
  19. array[1] = 0; while (n >= 100)         { array[1]++;n -= 100;}
  20. array[2] = 0; while (n >= 10)         { array[2]++;n -= 10;}
  21. array[3] = n;
  22. }

  23. void main()
  24. {
  25. INT8U i;
  26. while(1)
  27. {
  28.            P2 = 0x0F;
  29.                   if(!K1)
  30.   {
  31.    delay_ms(100);
  32.   if(!K1)
  33.   {
  34.   delay_ms(100);
  35.   Count++;
  36.   }
  37.   }
  38.    if (!K2)
  39.   {
  40.   delay_ms(100);
  41.   if (!K2)
  42.   {
  43.   delay_ms(100);
  44.       Count--;
  45.           }
  46.           }
  47.           digit(Count);
  48.           for (i=0;i<4;i++)
  49.           {
  50.       P0=0;
  51.           P3=1<<i;
  52.           P3=~P3;
  53.           P0=SEG_CODE[array[i]];
  54.           delay_ms(4);
  55.                 }
  56.                 }
  57.                 }
复制代码
0.png

全部资料51hei下载地址:
4数码管动态显示数据.rar (17.95 KB, 下载次数: 29)

评分

参与人数 2黑币 +53 收起 理由
杀杀杀萨顶顶 + 3 赞一个!
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:243125 发表于 2017-12-11 16:47 | 显示全部楼层
此处留言,日后备用
回复

使用道具 举报

ID:629332 发表于 2020-11-18 16:04 | 显示全部楼层
厉害,赞赞赞赞
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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