找回密码
 立即注册

QQ登录

只需一步,快速开始

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

8*8点阵和数码管显示proteus仿真原理图与单片机代码

[复制链接]
ID:194758 发表于 2017-4-29 13:11 | 显示全部楼层 |阅读模式
8*8点阵proteus仿真与数码管原理图如下:
0.png

0.png

单片机源程序:
  1. #include <reg52.h>


  2. //此表为 LED 的字模, 共阴数码管 0-9  -
  3. unsigned char code   Disp_Tab[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};  //段码控制

  4. //此表为8个数码管位选控制, 共阴数码管 1-8个  -
  5. unsigned char code   dispbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};    //位选控制   查表的方法控制

  6. unsigned char led_buffer0[8]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};

  7. unsigned char code led_buffer[]={
  8. /*--  调入了一幅图像:C:\Users\Administrator\Pictures\numb.bmp  --*/
  9. /*--  宽度x高度=80x8  --*/
  10. 0x00,0x00,0x3E,0x51,0x49,0x45,0x3E,0x00,
  11. 0x00,0x00,0x00,0x42,0x7F,0x40,0x00,0x00,
  12. 0x00,0x00,0x62,0x51,0x49,0x45,0x42,0x00,
  13. 0x00,0x00,0x22,0x49,0x49,0x49,0x36,0x00,
  14. 0x00,0x00,0x18,0x14,0x12,0x7F,0x10,0x00,
  15. 0x00,0x00,0x2F,0x49,0x49,0x49,0x31,0x00,
  16. 0x00,0x00,0x3E,0x49,0x49,0x49,0x32,0x00,
  17. 0x00,0x00,0x01,0x01,0x79,0x05,0x03,0x00,
  18. 0x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00,
  19. 0x00,0x00,0x26,0x49,0x49,0x49,0x3E,0x00,
  20. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  21. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  22. };

  23. unsigned char disp_count=0,numb=0;
  24. unsigned char hour=23,min=45,sec=58;
  25. unsigned int count=0;
  26. bit flash=0;

  27. void delay(long dly)
  28. {
  29.         while(dly--);
  30. }



  31. void main()
  32. {
  33.         unsigned  char i;
  34.         TMOD=0X01;
  35.         TH0=(65536-1000)/256;
  36.         TL0=(65536-1000)%256;
  37.         TR0=1;
  38.         ET0=1;
  39.         EA=1;

  40.         while(1)
  41.          {
  42. //            get_clock();
  43.                 delay(3000);
  44.                 numb++;
  45.                 if(numb>79)
  46.                 {
  47.                         numb=0;
  48.                 }
  49.          }
  50. }

  51. void TIMER0_ISR(void) interrupt 1
  52. {
  53.         P2=0x00;
  54.         TH0=(65536-1000)/256;
  55.         TL0=(65536-1000)%256;

  56.         P0=~led_buffer[numb+disp_count];
  57.         P3=~led_buffer[numb+8+disp_count];
  58.         P2=~dispbit[disp_count];

  59.         disp_count++;
  60.         if(disp_count>7)
  61.         {
  62.                 disp_count=0;
  63.         }
  64.         count++;
  65.         if(count>249)
  66.         {
  67.             count=0;
  68.             flash=!flash;
  69.         }
  70. }
复制代码

下载:
8X8点阵.rar (54.61 KB, 下载次数: 45)
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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