找回密码
 立即注册

QQ登录

只需一步,快速开始

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

Proteus仿真单片机8×8LED点阵屏显示数字源程序

[复制链接]
跳转到指定楼层
楼主
喜欢的可以下载
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include <reg52.h>
  2. #include <intrins.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. uchar code Table_OF_Digits[]=
  6. {
  7.         0x00,0x3e,0x41,0x41,0x41,0x3e,0x00,0x00,
  8.         0x00,0x00,0x00,0x21,0x7f,0x01,0x00,0x00,
  9.         0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00,
  10.         0x00,0x22,0x49,0x49,0x49,0x36,0x00,0x00,
  11.         0x00,0x0c,0x14,0x24,0x7f,0x04,0x00,0x00,
  12.         0x00,0x72,0x51,0x51,0x51,0x4e,0x00,0x00,
  13.         0x00,0x3e,0x49,0x49,0x49,0x26,0x00,0x00,
  14.         0x00,0x40,0x40,0x40,0x4f,0x70,0x00,0x00,
  15.         0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00,
  16.         0x00,0x32,0x49,0x49,0x49,0x3e,0x00,0x00,
  17. };
  18. uchar i=0,t=0,Num_Index = 0;

  19. void main()
  20. {
  21.         P3 = 0x80;
  22.         Num_Index = 0;
  23.         TMOD = 0x00;
  24.         TH0 = (8192-2000)/32;
  25.         TL0 = (8192-2000)%32;
  26.         TR0 = 1;
  27.         IE = 0x82;
  28.         while(1);
  29. }

  30. void LED_Screen_Display() interrupt 1
  31. {
  32.         TH0 = (8192-2000)/32;
  33.         TL0 = (8192-2000)%32;
  34.         P3 = _crol_(P3,1);
  35.         P0 = ~Table_OF_Digits[Num_Index * 8 +i];
  36.         if(++i == 8) i = 0;
  37.         if(++t == 250)
  38.         {
  39.                  t = 0x00;
  40.                 if(++Num_Index == 10) Num_Index = 0;
  41.         }
  42. }
复制代码

51hei附件下载:
Keil2代码与Proteus7.5仿真下载(注意版本一定要是Keil2和Proteus7.5):
36 8×8LED点阵屏显示数字.zip (31.15 KB, 下载次数: 39)

评分

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

查看全部评分

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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