找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3668|回复: 1
收起左侧

单片机控制8×8LED点阵屏显示数字的仿真+程序问题 但是hex可以

[复制链接]
ID:431377 发表于 2018-12-17 20:22 | 显示全部楼层 |阅读模式
要求:用单片机的P0口外接74LS245作为控制8×8 LED点阵屏的行驱动,列选通由P1端口控制,程序运行时,8×8 LED点阵屏依次循环显示数字0~9。刷新时间由定时器T1的定时中断来完成。
二、设计方案:
方案1:74LS245驱动芯片加上单片机8255和8X8点阵进行设计。
优点:电路相对稳定,易实现实验方案
缺点:连接的线多,切要对74LS245进行了解,写程序麻烦
方案2:只用单片机8255和8X8点阵来设计,本次用这个
优点;简单,连线少,程序简单
缺点:电路没有方案1的稳定
三、理论设计
软件流图                       
开始
                                ↓
                          定时器1初始化
                                ↓
                              主循环←←←←↑
                                ↓       无↑ ↑
             定时中断函数→→有无中断→→ → ↑ ↑
                                ↓有         ↑
                                ↓           ↑
                          调用显示子函数     ↑
                                ↓→→→→→→↑
原理图;
时钟电路和复位电路;
显示电路;
主要程序段
显示部分;
signed char code tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//给单片机端口赋值为低电平时灯亮
signed char code digittab[10][8]={{0x00,0x00,0x3e,0x41,0x41,0x41,0x3e,0x00},    //0
{0x00,0x00,0x00,0x00,0x21,0x7f,0x01,0x00},    //1
{0x00,0x00,0x27,0x45,0x45,0x45,0x39,0x00},    //2
{0x00,0x00,0x22,0x49,0x49,0x49,0x36,0x00},    //3
{0x00,0x00,0x0c,0x14,0x24,0x7f,0x04,0x00},    //4
{0x00,0x00,0x72,0x51,0x51,0x51,0x4e,0x00},    //5
{0x00,0x00,0x3e,0x49,0x49,0x49,0x26,0x00},    //6
{0x00,0x00,0x40,0x40,0x40,0x4f,0x70,0x00},    //7
{0x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00},    //8
{0x00,0x00,0x32,0x49,0x49,0x49,0x3e,0x00}    //9
};
定时部分:
TMOD=0x10; //设置定时器1为工作方式1
TH1=(65536-3000)/256;
TL1=(65536-3000)%256;//定时600000us
TR1=1; //启动定时器1
ET1=1; //开启定时器1 中断
0.png
0.png

8×8 LED点阵屏显示数字的设计.zip

44.48 KB, 下载次数: 47

_c样本.7z

20.96 KB, 下载次数: 1

评分

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

查看全部评分

回复

使用道具 举报

ID:388477 发表于 2018-12-22 11:49 | 显示全部楼层
正在琢磨这个事,怎么使用数组,感谢分享!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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