基于proteus的51单片机仿真实例六十、8位数码管显示实例
2020-07-17 来源:eefocus
1、本例实现在8位数码管上同时显示多个不同字符。
2、本例使用了8只集成式7段共阳数码管(pruteus中元件标识为7seg-mpx8-ca-blu,共阳为ca,共阴为cc),所有8个数码管的段码引脚a,b,c,d,e,f,g,dp都是分别并联在一起,任何时候发送的段码均会传送到所有数码管上,所有的数码管的共阳极是独立的,本例中个数码管的共阳极分别与8只NPN三极管射极相连,程序运行时,任意时刻仅允许一只数码管的共阳极连接+5V,当向连接段码的端口发送段码值时,相应数字只会显示在某一只数码管上。
3、为了使不同数码管显示不同字符,本例使用的是集成式多位数码管常用的动态扫描显示技术,他利用了人的视觉暂留特征,选通第一只数码管时,发送1的段码;选通第二只数码管时,发送2的段码,...每次仅选通一只数码管,发送相应的段码,每次切换选通下一数码管并发送相应段码的时间间隔非常短,视觉惰性使人感觉不到字符是一个接一个显示在不同的数码管上的,而会觉得所有的字符很稳定的同时显示在不同数码管上。
在控制两位数码管选通的时间间隔时,要注意全屏的扫描频率要高于视觉暂留频率16-20Hz。对于程序中的点亮一位数码管的延时时间,我们可以尝试将延时时间改为其他数值,观察会出现什么样的效果。
4、在keil c51中新建工程ex48,编写如下程序代码,编译并生成ex48hex文件
/*****************************************************************************
* LED数码管显示演示程序 *
* 在8个LED数码管上依次显示1,2,3,4,5,6,7,8 *
*******************************************************************************/
#include #include //段码表 unsigned char code dis_code[11]={0xc0,0xf9,0xa4,0xb0, // 0, 1, 2, 3 0x99,0x92,0x82,0xf8,0x80,0x90, 0xff};// 4, 5, 6, 7, 8, 9, off //毫秒级延时函数 void delay(unsigned int x) { unsigned char i; while(x--) { for(i=0;i<120;i++); } } //主函数 void main() { unsigned char k,m=0x80; //变量定义 P0 = 0xff; //先关闭数码管 P2 = 0x00; // while(1) { for(k = 0;k < 8;k++) //循环8次 { P2 = 0x00; //每显示一位都要关闭位选端口一次 m=_crol_(m,1); //循环左移 P2=m; //每次选通一个位选端口 P0=dis_code[k+1]; //段码送P0口 delay(2); } } } 5、在proteus中新建仿真文件ex48.dsn,电路原理图如下所示 6、将ex48.hex文件载入at89c51中,启动仿真,观察程序运行结果,下图是程序运行结果。我们也可以试着将程序中的 “P2 = 0x00; //每显示一位都要关闭位选端口一次”这句话去掉,然后再观察程序运行结果,观察会出现什么情况,并解释这种情况。
上一篇:单片机2——动态数码管的一些实例
下一篇:(5)单片机动态数码管
- 《逗比小憨憨51单片机Proteus仿真系列》第18期单片机矩阵键盘+数码管显示
- 基于51单片机的温度控制proteus仿真
- 《逗比小憨憨51单片机Proteus仿真系列》第27期单片机步进电机正反转加减速(汇编)
- 《逗比小憨憨51单片机Proteus仿真系列》第11期基于单片机的ADC0804实验(电压采集)
- 《逗比小憨憨51单片机Proteus仿真系列》第19期单片机的5位数码管显示(汇编代码)
- 《逗比小憨憨51单片机Proteus仿真系列》第31期电子琴与倒计时音乐播放器(汇编)
- 《逗比小憨憨51单片机Proteus仿真系列》第27期基于单片机的步进电机驱动(汇编)
- 《逗比小憨憨51单片机Proteus仿真系列》第14期基于单片机的LCD12864显示汉字实验
- 《逗比小憨憨51单片机Proteus仿真系列》第15期基于单片机的LCD12864显示图片实验
- 《逗比小憨憨51单片机Proteus仿真系列》第33期单片机+DAC0832产生三角波(汇编)
- 六大全新产品系列推出,MCX A微控制器家族迎来创新
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 从控制到系统:TI利用边缘AI重塑嵌入式MCU的边界
- 模组复用与整机重测在SRRC、CCC、CTA/NAL认证中的实践操作指南
- 有源晶振与无源晶振的六大区别详解
- 英飞凌持续巩固全球微控制器市场领导地位
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- LoRa、LoRaWAN、NB-IoT与4G DTU技术对比及工业无线方案选型分析
- 意法半导体中国本地造STM32微控制器启动规模量产
- 蓝牙信道探测技术原理与开发套件实践




