单片机数码管显示程序设计PPT教学课件
合集下载
C51单片机03(数码管最终)PPT课件

You Know, The More Powerful You Will Be
谢谢大家
荣幸这一路,与你同行
It'S An Honor To Walk With You All The Way
演讲人:XXXXXX 时 间:XX年XX月XX日
MCS-51 单片机
1
a
2
b
3
c
a
4
dfgb
5
e
6 7 8
e
c
f
d
g
dp
dp
GND
9
单个共阴数码管与51单片机的连接
如何实现数码管静 态显示“5”?
执行语句 P1 = 0x6d;
数码管的静态显示
完整的数码管的静态显示程序 头文件
#include<reg52.h> 主函数
void main(void)
g f COM a b
a f gb
e
c
d DP
e d COM c DP
阳极 1 +5V
0 阴极 0V
LED发光二极管的工作原理
共阳极1 CV+O5CMCV
DP g f e d c b a
DP g
0:亮 1:灭
f ed c ba
0 COM 共阴极
共阳接法
共阴接法
半导体数码显示器内部接法
0:灭 1:亮
12、延时10毫秒
13、… … … … 14、熄灭各个数码管 15、选通第8个数码管,同时禁止其他数码管 16、送第8个数码管要显示的字符的代码段 17、延时10毫秒 18、跳回第一步开始循环执行
数码管的动态显示
程序代码如下: #include <AT89X51.H> #define unchar unsigned char void Delay(unchar delaytime); sbit LED1=P2^0; sbit LED2=P2^1; sbit LED3=P2^2; sbit LED4=P2^3; sbit LED5=P2^4; sbit LED6=P2^5; sbit LED7=P2^6; sbit LED8=P2^7;
谢谢大家
荣幸这一路,与你同行
It'S An Honor To Walk With You All The Way
演讲人:XXXXXX 时 间:XX年XX月XX日
MCS-51 单片机
1
a
2
b
3
c
a
4
dfgb
5
e
6 7 8
e
c
f
d
g
dp
dp
GND
9
单个共阴数码管与51单片机的连接
如何实现数码管静 态显示“5”?
执行语句 P1 = 0x6d;
数码管的静态显示
完整的数码管的静态显示程序 头文件
#include<reg52.h> 主函数
void main(void)
g f COM a b
a f gb
e
c
d DP
e d COM c DP
阳极 1 +5V
0 阴极 0V
LED发光二极管的工作原理
共阳极1 CV+O5CMCV
DP g f e d c b a
DP g
0:亮 1:灭
f ed c ba
0 COM 共阴极
共阳接法
共阴接法
半导体数码显示器内部接法
0:灭 1:亮
12、延时10毫秒
13、… … … … 14、熄灭各个数码管 15、选通第8个数码管,同时禁止其他数码管 16、送第8个数码管要显示的字符的代码段 17、延时10毫秒 18、跳回第一步开始循环执行
数码管的动态显示
程序代码如下: #include <AT89X51.H> #define unchar unsigned char void Delay(unchar delaytime); sbit LED1=P2^0; sbit LED2=P2^1; sbit LED3=P2^2; sbit LED4=P2^3; sbit LED5=P2^4; sbit LED6=P2^5; sbit LED7=P2^6; sbit LED8=P2^7;
51单片机_数码管显示演示幻灯片

11
二 LED显示器静态显示及应用实例
1. 静态显示的特点
静态显示就是单片机将所要显示的数据送出去后,数码管始终显示 该数据(不变),到下一次显示时,再传送一次新的显示数据。
静态显示的接口电路采用一个并行口接一个数码管,数码管的公共 端按共阴极或共阳极分别接地或接VCC。这种接法,每个数码管都要单 独占用一个并行I/O口,以便单片机传送字形码到数码管控制数码管的 显示。显然其缺点就是当显示位数多时,占用I/O口过多。
3。硬件电路设计如下图所示。
20
数码管动态显示电路原理图
21
课后作业: 请同学们在实验板上练习本项目中的所
有情况,学会根据不同的电路修改程序。
22
P2=0x00; P0=0x03; delay(400); P0=0x9f; delay(400); P0=0x25; delay(400);
} void delay(int x) {
int i,j; for(i=0;i<x;i++)
for(j=1;j<120;j++); }
10
LED字型显示代码表
1
7DH
82H
0
0
0
0
1
1
1
07H
F8H
1
1
1
1
1
1
1
7FH
80H
1
1
0
1
1
1
1
6FH
90H
1
1
1
0
1
1
1
77H
88H
1
1
1
1
1
0
0
7CH
《数码管显示》课件

具有高亮度、高对比度、低功耗等优点,是未来显示技术的发展方向之一。
具有高分辨率、低成本等优点,但存在视角较小、响应速度较慢等问题。
LCD显示器
具有高亮度、长寿命、低功耗等优点,但存在色彩表现较差等问题。
LED显示器
05
CHAPTER
数码管显示的实际应用案例
数码管常用于智能家居控制面板,显示温度、湿度、时间等信息,方便用户了解家居环境状况。
《数码管显示》ppt课件
目录
数码管显示概述数码管显示原理数码管显示驱动电路数码管显示技术发展趋势数码管显示的实际应用案例
01
CHAPTER
数码管显示概述
是一种通过控制LED灯的亮灭来显示数字或字符的电子显示器件。
数码管显示器
发光原理
显示效果
利用LED灯的发光特性,通过导通或截止控制LED灯的亮灭,以显示不同的数字或字符。
数码管显示器具有高亮度、高清晰度、低功耗等优点,常用于各种电子设备中。
03
02
01
按位数分类
01
一位、两位、三位、四位等数码管显示器,位数越多,可以显示的数字或字符越多。
按显示内容分类
02
七段数码管显示器、点阵式数码管显示器等,不同的显示内容适用于不同的应用场景。
按控制方式分类
03
静态数码管显示器、动态数码管显示器,静态数码管显示器直接控制每个LED灯的亮灭,而动态数码管显示器则是通过扫描方式控制LED灯的亮灭。
02
CHAPTER
数码管显示原理
数码管内部由多个LED灯珠组成,每个灯珠都有一个阴极和阳极,通过控制阴极和阳极的电压来控制灯珠的亮灭。
发光原理
数码管通常有单色和双色两种类型,单色数码管只能发出红、绿、黄等单色光,而双色数码管则能发出红、绿、黄等两种颜色。
具有高分辨率、低成本等优点,但存在视角较小、响应速度较慢等问题。
LCD显示器
具有高亮度、长寿命、低功耗等优点,但存在色彩表现较差等问题。
LED显示器
05
CHAPTER
数码管显示的实际应用案例
数码管常用于智能家居控制面板,显示温度、湿度、时间等信息,方便用户了解家居环境状况。
《数码管显示》ppt课件
目录
数码管显示概述数码管显示原理数码管显示驱动电路数码管显示技术发展趋势数码管显示的实际应用案例
01
CHAPTER
数码管显示概述
是一种通过控制LED灯的亮灭来显示数字或字符的电子显示器件。
数码管显示器
发光原理
显示效果
利用LED灯的发光特性,通过导通或截止控制LED灯的亮灭,以显示不同的数字或字符。
数码管显示器具有高亮度、高清晰度、低功耗等优点,常用于各种电子设备中。
03
02
01
按位数分类
01
一位、两位、三位、四位等数码管显示器,位数越多,可以显示的数字或字符越多。
按显示内容分类
02
七段数码管显示器、点阵式数码管显示器等,不同的显示内容适用于不同的应用场景。
按控制方式分类
03
静态数码管显示器、动态数码管显示器,静态数码管显示器直接控制每个LED灯的亮灭,而动态数码管显示器则是通过扫描方式控制LED灯的亮灭。
02
CHAPTER
数码管显示原理
数码管内部由多个LED灯珠组成,每个灯珠都有一个阴极和阳极,通过控制阴极和阳极的电压来控制灯珠的亮灭。
发光原理
数码管通常有单色和双色两种类型,单色数码管只能发出红、绿、黄等单色光,而双色数码管则能发出红、绿、黄等两种颜色。
单片机3数码管显示1234PPT课件

•
精选PPT课件
5
程序流程图
开始
N 条件?
Y 位显示
显示数字
延时
结束
精选PPT课件
6
编程与调试
• 建项目、选芯片 • 建C文件 • 编译、连接、生成HEX文件 • 调试
精选PPT课件
7
任务(2)分析
• 判断是否有按键按下 • 加入按防抖和放手防抖 • 判断按下键 • 将最右侧显示数值移位 • 将按键值送入显示存储器
z=P3;
if (z!=0xff)
{ a=0x7f;
for (i=1;i<=6;i++)
{if (z==a)
{
table1[0]=table1[1]; //将低位移出
table1[1]=table1[2];
table1[2]=table1[3]; table1[3]=i; delay(200);
while (P3!=0xff); delay(200);
精选PPT课件
8
程序(2)
• 参考程序
• //头文件: 显示输入
• #include "reg51.h"
• #include "intrins.h"
• #define uchar unsigned char
• //变量定义:
• unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x8 0,0x90};
• 2、计算机、KEIL uVISION软件、 STC-ISP-V3.1软件和等 。
精选PPT课件
4
分析
• 分析控制方法: • (1)、选择4个位控制端口置个十百千万
精选PPT课件
5
程序流程图
开始
N 条件?
Y 位显示
显示数字
延时
结束
精选PPT课件
6
编程与调试
• 建项目、选芯片 • 建C文件 • 编译、连接、生成HEX文件 • 调试
精选PPT课件
7
任务(2)分析
• 判断是否有按键按下 • 加入按防抖和放手防抖 • 判断按下键 • 将最右侧显示数值移位 • 将按键值送入显示存储器
z=P3;
if (z!=0xff)
{ a=0x7f;
for (i=1;i<=6;i++)
{if (z==a)
{
table1[0]=table1[1]; //将低位移出
table1[1]=table1[2];
table1[2]=table1[3]; table1[3]=i; delay(200);
while (P3!=0xff); delay(200);
精选PPT课件
8
程序(2)
• 参考程序
• //头文件: 显示输入
• #include "reg51.h"
• #include "intrins.h"
• #define uchar unsigned char
• //变量定义:
• unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x8 0,0x90};
• 2、计算机、KEIL uVISION软件、 STC-ISP-V3.1软件和等 。
精选PPT课件
4
分析
• 分析控制方法: • (1)、选择4个位控制端口置个十百千万
郭天祥单片机教学LESSON4数码管动态显示优秀课件.ppt

MCS-51单片机的中断系统结构
主程序
中断响应
中断请求
执行主 程序
断点
继续执行 主程序
执行 中断 处理 程序
中断返回
4.1 80C51中断的控制
一、中断允许控制
CPU对中断系统所有中断以及某个中断源的开放和屏 蔽是由中断允许寄存器IE控制的。
▪EX0(IE.0),外部中断0允许位; ▪ET0(IE.1),定时/计数器T0中断允许位; ▪EX1(IE.2),外部中断0允许位; ▪ET1(IE.3),定时/计数器T1中断允许位; ▪ES(IE.4),串行口中断允许位; ▪EA (IE.7), CPU中断允许(总允许)位。
▪TF1(TCON.7):T1溢出中断请求标志位。T1计数溢出时由硬件自 动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU 可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可 以用软件置1或清0,同硬件置1或清0的效果一样。 ▪TR1(TCON.6):T1运行控制位。TR1置1时,T1开始工作;TR1置 0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/ 计数器的启动与停止。 ▪TF0(TCON.5):T0溢出中断请求标志位,其功能与TF1类同。 ▪TR0(TCON.4):T0运行控制位,其功能与TR1类同。
TL0
TCON
TF1 TR1 TF0 TR0 GATE C/T M1 M0 GATE C/T M1 M0
外部中断相关位
T1方式
内部总线 TMOD T0方式
4.2.2 定时/计数器的控制
80C51单片机定时/计数器的工作由两个特殊功 能寄存器控制。TMOD用于设置其工作方式; TCON用于控制其启动和中断申请。
主程序
中断响应
中断请求
执行主 程序
断点
继续执行 主程序
执行 中断 处理 程序
中断返回
4.1 80C51中断的控制
一、中断允许控制
CPU对中断系统所有中断以及某个中断源的开放和屏 蔽是由中断允许寄存器IE控制的。
▪EX0(IE.0),外部中断0允许位; ▪ET0(IE.1),定时/计数器T0中断允许位; ▪EX1(IE.2),外部中断0允许位; ▪ET1(IE.3),定时/计数器T1中断允许位; ▪ES(IE.4),串行口中断允许位; ▪EA (IE.7), CPU中断允许(总允许)位。
▪TF1(TCON.7):T1溢出中断请求标志位。T1计数溢出时由硬件自 动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU 可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可 以用软件置1或清0,同硬件置1或清0的效果一样。 ▪TR1(TCON.6):T1运行控制位。TR1置1时,T1开始工作;TR1置 0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/ 计数器的启动与停止。 ▪TF0(TCON.5):T0溢出中断请求标志位,其功能与TF1类同。 ▪TR0(TCON.4):T0运行控制位,其功能与TR1类同。
TL0
TCON
TF1 TR1 TF0 TR0 GATE C/T M1 M0 GATE C/T M1 M0
外部中断相关位
T1方式
内部总线 TMOD T0方式
4.2.2 定时/计数器的控制
80C51单片机定时/计数器的工作由两个特殊功 能寄存器控制。TMOD用于设置其工作方式; TCON用于控制其启动和中断申请。
51单片机数码管显示程序设计PPT优秀课件

;全局变量定义
FLAG
EQU 20H ;标志位
DISSEG
EQU P0 ;显示段驱动
DISBIT
EQU P2 ;显示位驱动P2.7-P2.2
DISBUF
EQU 21H ;显示缓冲区首地址21H-26H
DISBITBUF
EQU 27H ;当前显示位计数器0-5
FLASH
EQU 28H ;闪烁控制xxxxxx00,将x=1闪烁,=0不闪
INC R0
CJNE R0,#50H,INIT1
;初始化定时器T0
;f=11.0592MHz,2.5ms定时
MOV TMOD,#01H ;模式1
MOV TL0,#05H
MOV TH0,#0F7HSETB TR0;启动
SETB ET0
;开中断
2021/6/3
SETB EA RET
10
动态显示参考程序3:中断服务程序
2021/6/3
9
动态显示参考程序2:主程序
ORG 0000H
LJMP START
ORG 000BH
LJMP T0SERV ;T0中断入口
ORG 0030H
START: MOV SP,#50H ;初始化堆栈
LCALL INIT
;初始化
LOOP: MOV DISBUF,#1
MOV DISBUF+1,#2
;----------2.5MS中断服务程序=动态显示-------
T0SERV: MOV TL0,#05H
MOV TH0,#0F7H
PUSH PSW
;保护现场
PUSH ACC
PUSH DPH
PUSH DPL
SETB RS0
单片机C51程序设计 数码管显示ppt课件

#define WR573(dat)\ {\
P0 = d);\ LE573 = 0;\ }
中断源的符号、称号及产生的条件
INT0:外部中断0,由P3.2端口线引入,低电平或下跳沿引起。 INT1:外部中断1,由P3.3端口线引入,低电平或下跳沿引起。 T0:定时器/计数器0中断,由T0计满回零引起。 T1:定时器/计数器l中断,由T1计满回零引起。 TI/RI:串行I/O中断,串行端口完成一帧字符发送/接纳后引起。
定时/计数器编程运用
初始化程序应完成如下任务: 1.对TMOD赋值,以确定T0和T1的任务方式。 2.计算初值,并将其写入TH0、TL0或TH1、TL1。 3.中断方式时,那么对IE赋值,开放中断。 4.使TR0或TR1置位,启动定时/计数器定时或计数。
TR1:定时器1控制位,置位时定时器1任务 TR0:定时器0控制位,置位时定时器0任务
定时器初值 计算
设单片机晶振频率为6MHZ,求方式1时的定时器初 值.
定时时间=(2X-初值)×机器周期 X由定时器任务方式决议,分别为13、16、8. 机器周期=12/单片机晶振频率 fosc。 由以上公式可知:定时lms所需的机器周期为2us.个数 为500D,即0lF4H,任务方式为1(16位方式)时定时初 值是01F4H.
动态显示
动态显示的特点是将一切位数码管的段选线 并联在一同,由位选线控制是哪一位数码管有 效。选亮数码管采用动态扫描显示。所谓动态 扫描显示即轮番向各位数码管送出字形码和相 应的位选,利用发光管的余辉和人眼视觉暂留 作用,使人的觉得好似各位数码管同时都在显 示。动态显示的亮度比静态显示要差一些,所 以在选择限流电阻时应略小于静态显示电路中 的。
JBCflag ? C002 DECval C002: RET
P0 = d);\ LE573 = 0;\ }
中断源的符号、称号及产生的条件
INT0:外部中断0,由P3.2端口线引入,低电平或下跳沿引起。 INT1:外部中断1,由P3.3端口线引入,低电平或下跳沿引起。 T0:定时器/计数器0中断,由T0计满回零引起。 T1:定时器/计数器l中断,由T1计满回零引起。 TI/RI:串行I/O中断,串行端口完成一帧字符发送/接纳后引起。
定时/计数器编程运用
初始化程序应完成如下任务: 1.对TMOD赋值,以确定T0和T1的任务方式。 2.计算初值,并将其写入TH0、TL0或TH1、TL1。 3.中断方式时,那么对IE赋值,开放中断。 4.使TR0或TR1置位,启动定时/计数器定时或计数。
TR1:定时器1控制位,置位时定时器1任务 TR0:定时器0控制位,置位时定时器0任务
定时器初值 计算
设单片机晶振频率为6MHZ,求方式1时的定时器初 值.
定时时间=(2X-初值)×机器周期 X由定时器任务方式决议,分别为13、16、8. 机器周期=12/单片机晶振频率 fosc。 由以上公式可知:定时lms所需的机器周期为2us.个数 为500D,即0lF4H,任务方式为1(16位方式)时定时初 值是01F4H.
动态显示
动态显示的特点是将一切位数码管的段选线 并联在一同,由位选线控制是哪一位数码管有 效。选亮数码管采用动态扫描显示。所谓动态 扫描显示即轮番向各位数码管送出字形码和相 应的位选,利用发光管的余辉和人眼视觉暂留 作用,使人的觉得好似各位数码管同时都在显 示。动态显示的亮度比静态显示要差一些,所 以在选择限流电阻时应略小于静态显示电路中 的。
JBCflag ? C002 DECval C002: RET
数码管显示设计PPT课件

科目:《单片机原理及应用》 课题:数码管显示设计
电子电器应用与维修专业 王永国
1、LED数码管显示
▪ 对于人机交互式单片机系统来说, 不仅需要响应用户输入,同时也 需要将一些测控信息输出显示。 以便于掌握系统的状态并进行分 析处理。
▪ 目前,在单片机中最常用的是 LED数码管显示。其成本低廉、 使用简便,可以显示数字或特定 的字符。
while(x--) for(t=0;t<120;t++); }
//主程序
void main()
{ uchar i,wei=0xfe;
while(1)
{
wei=0xfe; //显示位控制
for(i=0;i<6;i++) //六位数码管
{
P2=0xff;
P0=0XFF;
//关闭显示
DelayMS(1);
2、单片机控制数码管显示设计
▪ 设计要求: 使用多功能单片机开发教学板,在LED
DISPLAY区域的6只数码管上从高位到低位依次显 示数字O---5。
2.1 硬件电路分析
▪ 使用共阳极LED数码管显示数字;
▪ 数码管显示电路原理图,如图所示。
多位数码管动态显示电路原理图
实验板数码管连接示意图
+5V
位驱动
P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 com1 com2 com3 com4 com5 com6
Байду номын сангаас段驱动
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
a b c d e f g dp
六位共阳极数码管模块 相同的段驱动端都并联在 一起。
电子电器应用与维修专业 王永国
1、LED数码管显示
▪ 对于人机交互式单片机系统来说, 不仅需要响应用户输入,同时也 需要将一些测控信息输出显示。 以便于掌握系统的状态并进行分 析处理。
▪ 目前,在单片机中最常用的是 LED数码管显示。其成本低廉、 使用简便,可以显示数字或特定 的字符。
while(x--) for(t=0;t<120;t++); }
//主程序
void main()
{ uchar i,wei=0xfe;
while(1)
{
wei=0xfe; //显示位控制
for(i=0;i<6;i++) //六位数码管
{
P2=0xff;
P0=0XFF;
//关闭显示
DelayMS(1);
2、单片机控制数码管显示设计
▪ 设计要求: 使用多功能单片机开发教学板,在LED
DISPLAY区域的6只数码管上从高位到低位依次显 示数字O---5。
2.1 硬件电路分析
▪ 使用共阳极LED数码管显示数字;
▪ 数码管显示电路原理图,如图所示。
多位数码管动态显示电路原理图
实验板数码管连接示意图
+5V
位驱动
P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 com1 com2 com3 com4 com5 com6
Байду номын сангаас段驱动
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
a b c d e f g dp
六位共阳极数码管模块 相同的段驱动端都并联在 一起。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MOV DISBUF+2,#3
MOV DISBUF+3,#4+80H;显示小数点
MOV DISBUF+4,#5
MOV DISBUF+5,#6
AJMP LOOP
;---------------初始化子程序-----------------
INIT: MOV R0,#2
;清理内部RAM
CLR A
INIT1: MOV @R0,A
INC CNT_2D5MS
;2.5MS计数器
P2.7=0 延时
(R0)+1
(R0)=10? N Y
(R0)=0
2020/12/10
7
编程练习2-动态显示程序
要求:显示123.456。
T0中断
重装初值 保护现场 选工作寄存器组
提示:
熄灭显示
(1)使用内部RAM21H-26H单元做显示缓冲区。
计算显示位
(2)使用27H单元记当前显示位(位号1-6)。
dp
a0 b0 c0 d0 e1 f1 g0 dp 1
ab c
dp
;共阳极7段数码管驱动段码表
;
pgfedcba
TAB: DB B ;0
DB
B
;1
DB B ;2
DB B ;3
DB
B
;4
DB B ;5
DB B ;6
DB
B
;7
DB B ;8
DB B ;9
4
多位数码管动态显示电路原理图
实验板数码管连接示意图
(3)使用28H单元控制位闪烁,1闪烁,0不闪烁。
(4)使用显示缓冲区单元最高位控制小数点显示,在 高位为1,表示该位显示小数点。
根据当前显示位 查得段驱动码
处理小数点
段驱动码送P0口
(5)fosc=11.0592MHz,使用定时器T0定时2.5ms进 行扫描速率控制。
根据当前显示位 查得位驱动码
(6)T0中断服务程序使用工作寄存器组1工作。
;全局变量定义
FLAG
EQU 20H ;标志位
DISSEG
EQU P0 ;显示段驱动
DISBIT
EQU P2 ;显示位驱动P2.7-P2.2
DISBUF
EQU 21H ;显示缓冲区首地址21H-26H
DISBITBUF
EQU 27H ;当前显示位计数器0-5
FLASH
EQU 28H ;闪烁控制xxxxxx00,将x=1闪烁,=0不闪
C7数码管显示程序设计
2020/12/10
1
主要内容
发光二极管的工作参数 数码管的结构和工作原理 多位数码管动态显示电路原理图 编程练习:驱动一位数码管
2020/12/10
2
发光二极管的工作参数
+5V
发光二极管正常发光时, 电流约为5~10mA,压 降1V左右。
500
P1.0
引脚输出低电平时,发光 二极管导通。
INC R0
CJNE R0,#50H,INIT1
;初始化定时器T0
;f=11.0592MHz,2.5ms定时
MOV TMOD,#01H ;模式1
MOV TL0,#05H
MOV TH0,#0F7H
SETB TR0
;启动
SETB ET0
;开中断
2020/12/10
SETB EA RET
10
动态显示参考程序3:中断服务程序
2020/12/10
9
动态显示参考程序2:主程序
ORG 0000H
LJMP START
ORG 000BH
LJMP T0SERV ;T0中断入口
ORG 0030H
START: MOV SP,#50H ;初始化堆栈
LCALL INIT
;初始化
LOOP: MOV DISBUF,#1
MOV DISBUF+1,#2
;----------2.5MS中断服务程序=动态显示-------
T0SERV: MOV TL0,#05H
MOV TH0,#0F7H
PUSH PSW
;保护现场
PUSH ACC
PUSH DPH
PUSH DPL
SETB RS0
;中断服务使用工作寄存器组1
CLR RS1
;-----------计算时间----------------------------
2020/12/10
限流电阻 R=(5V-1V)/8mA=500 Ω
3
共阳极数码管
共阳极数码管的结构是:将8个发光二极管排 列成一个 “8.” 的形状,所有发光二极管阳极 连接在一起做公共端com,阴极作为各个段的 控制端a,b,c,d,e,f,g,dp。
com
com
a
1
f
b
g
e
c
d
2020/12/10
+5V
位驱动
P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 com1 com2 com3 com4 com5 com6
段驱动
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
2020/12/10
a b c d e f g dp
六位共阳极数码管模块 相同的段驱动端都并联在 一起。
a b c d e f g dp
2020/12/10
6
编程练习1-驱动一位数码管
要求:在第一位显示连续变 化的0-9,间隔时间自定。
参考课本P196页例1,在 keil中编程,生产HEX文件。
开始 (R0)=0 (A)=(R0) 查段码表, 取得段驱动码
段驱动码送P0口
在proteus中观察运行结果。 (参考“ c6定时器应用程 序调试” 介绍的方法)
位驱动码送P2口
2020/12/10
恢复现场
8
返回
动态显示参考程序1:定义变量
;---------------------------------------------------------
;动态显示Leabharlann 序;---------------------------------------------------------
;小数点的处理:
;若显示‘3’,缓冲区放‘3’,若显示‘3.’,缓冲区放‘3+80H’,
最高位为1
S_PULSE
EQU FLAG.0 ;秒脉冲
CNT_2D5MS
EQU 2FH ;2.5MS计数器
CNT_10MS1
EQU 30H ;10MS计数器
CN_0D5S
EQU 31H ;0.5秒计数器
;----------------------------------------------------------
5
在第一位上显示5
位驱动P2.7输出0 段驱动P0口输出“5”的段 码“10010010B”
+5V
0
1
1
1
1
1
P2.7 P2.6 P2.5 P2.4 P2.3 P2.2
com1 com2 com3 com4 com5 com6
0 P0.0 1 P0.1 0 P0.2 0 P0.3 1 P0.4 0 P0.5 0 P0.6 1 P0.7