基于单片机的低频信号发生器的设计毕业设计论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于单片机的低频信号发生器的设计
任务书
一设计题目;低频信号发生器
二设计任务与要求
设计制作低频信号发生器,要求利用单片机产生正弦波,方波及三角波等波形
(1)正弦波
用单片机实现正弦波的输出
输出的波形有1HZ` 10HZ 100HZ 1KHZ 10KHZ 5种可选频率
输出电压范围有0~5V可调(峰峰值)
用六位数码管显示频率
频率误差<1%
(2)方波
频率范围:0.01HZ—100KHZ
频率误差:<0.1%
电压范围:0~10 V
(3)三角波
频率范围:0.01HZ~10KHZ
频率误差:<0.1%
电压范围:0~20V(峰峰值)
失真率:r≤3%
目录
一绪论 (1)
二信号发生器方案设计与选择 (3)
三主要电路原件介绍 (6)
四单元电路硬件设计 (15)
五系统软件设计 (20)
六软件程序 (26)
七结论 (34)
八致谢 (35)
九参考文献 (36)
第1章绪论
1.1 选题背景及其意义
波形发生器也称函数信号发生器,作为实验信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。
目前,市场上常见的波形发生器多为纯硬件的搭接而成,且波形种类有限,多为锯齿波,正弦波,方波,三角波等波形。
信号发生器作为一种常见的应用电子仪器设备,传统的可以完全由硬件电路搭接而成,不用依靠单片机。
但是这种电路存在波形质量差,控制难,可调范围小,电路复杂和体积大等缺点。
在科学研究和生产实践中,如工业过程控制,生物医学,地震模拟机械振动等领域常常要用到低频信号源。
而由硬件电路构成的低频信号其性能难以令人满意,而且由于低频信号源所需的RC很大;大电阻,大电容在制作上有困难,参数的精度亦难以保证;体积大,漏电,损耗显著更是致命的弱点。
一旦工作需求功能有增加,则电路复杂程度会大大增加。
因此需要选择其它的方法来解决此类问题,我们想到了通过单片机来实现所要求的功能,即采用单片机AT89C51还有数模转换DAC0832、运算放大器,此种方法硬件要求简单,编程容易,同时能够实现所要求的功能。
1.2 单片机概述
单片微型计算机简称单片机[3],是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
它最早是被用在工业控制领域。
由于单片机在工业控制领域的广泛应用,单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成复杂的而对体积要求严格的控制设备当中。
INTEL的Z80是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。
其中最成功的是INTEL的8031,此后在8031上发展出了MCS51系列单片机系统。
因为简单可靠而性能不错获得了很大的好评。
尽管2000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到目前基于8031的单片机还在广泛的使用。
在很多方面单片机比专用处理器更适合应用于嵌入式
系统,因此它得到了广泛的应用。
事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。
手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。
汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。
1.3 信号发生器概述
信号发生器可以构成独立的信号源[1],也可以是高性能网络分析仪、频谱分析仪以及自动检测设备的组成部分。
信号发生器的关键技术是多种高性能仪器的支撑技术,因为它能够提供高质量的精密信号源及扫频源,可使相应的系统检测过程大大简化,降低检测费用并且极大的提高了检测精度。
信号发生器的总体趋势将向着高频率覆盖、高频率精度、多功能、多用途、自动化和智能化方向发展。
目前,市场上的信号发生器多种多样,一般按照频带分为以下几种:(1)超高频:频率范围为1MHZ 以上,可达几十兆赫兹。
(2)高频:几百KHZ 到几百MHZ。
(3)低频:频率范围为几十HZ 到几百KHZ。
(4)超低频:频率范围为零点几赫兹到几百赫兹。
超高频信号发生器产生波形一般用LC振荡电路。
高频、低频和超低频信号发生器,大多使用文氏桥振荡电路,及RC振荡电路,通过改变电阻和电容值来改变频率。
用以上原理设计的信号发生器,其输出波一般只有两种,即正弦波和脉冲波,其零点不可调,而且价格比较贵,一般在几百元左右。
在实际应用中,超低频和高频波一般是不用的。
采用单片机AT89C51,加上一片DAC0832 就可以做成一个简单的信号发生器,加上按键电路、显示电路及放大电路,就可以实现频率幅值可调。
这样的信号发生器体积小,价格便宜,耗电少,频率适中,便于携带。
1.4 研究题目及其意义
信号发生器是一种经常使用的设备[2],由纯粹物理器件构成的,传统的设计方法存在许多弊端,如:体积较大、重量较沉、移动不方便、信号失真较大、波形形状调节过于死板,无法满足用户对精度、便携性、稳定性等要求,研究设计出一种具有频率稳定、准确、波形质量好、输出频率范围宽、便携性好等特点的波形发生器具有较好的市场前景。
以满足工业领域对信号源的要求。
本次试验实现利用单片机AT89C51和8位D/A转换芯片DAC0832 共同实现方波、锯齿波、三角波、正弦波这四种常用波形的发生。
根据设计的要求,对
各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。
在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。
并且可以通过数码管和键盘显示模块,键盘可以实现对几种波形的切换。
1.5 本论文主要研究的内容
本设计采用89C51及其外围扩展系统,软件方面主要是应用C语言设计程序。
系统以89C51单片机为核心,配置相应的外设及接口电路,用C语言开发,组成一个多功能信号发生系统。
同时,本系统中任何一部分电路模块均可移植于实用开发系统的设计中,电路设计具有实用性。
本设计将完成以下几个方面的工作:
(1)选芯片,尽量满足一般工业控制要求、以增强其实用性。
(2)原理图设计在保证正确的前提下,尽量采用典型的电路设计。
(3)固化于单片机芯片中的软件采用模块设计,层次清楚,具有上电复位及初始化功能,具有很好的软件开发框架。
(4)掌握单片机仿真软件Proteus7.0的使用。
为此,论文包括以下内容:一绪论。
主要介绍单片机发展概况和信号发生器的概述,为以后几章的介绍奠定基础。
二系统总体方案设计。
本章主要考虑系统性能和功能。
包括两个主要内容:总体方案设计与设计的功能。
其中总体设计方案包括考虑到多个符合条件的方案设计,并且对这几个方案进行比较,包括性能,价格,实用性等,最终确定下最优的设计方案。
系统设计功能包括设计所完成的基本功能。
三系统各元器件的介绍。
本章对电路中所使用的器件功能进行了详细的介绍。
四系统硬件设计。
本章对各功能模块进行了大体的介绍,更好的理解所设计的电路图,理解各功能模块实现的功能。
五系统软件设计。
对软件设计部分作了详细的介绍,各程序模块的实现作了介绍。
六结论。
对设计进行自我的总结。
第2章信号发生器方案设计与选择
信号发生器是指产生所需参数的电测试信号的仪器。
按信号波形可分为正弦信号、波形信号、脉冲信号和随机信号发生器等四大类。
本文利用单片机构造低频信号发生器,可产生正弦波,方波,三角波,锯齿波四种波形,再通过D/A 转换器DAC0832 把数字信号转变为模拟信号,经LM358 放大输出到示波器,与此同时外接8位LED显示输出信号的类型和频率。
2.1 方案设计与选择
信号发生器的设计方案可用多种方案来实现。
在设计前对各种方案进行比较得到最优的涉及方案:
采用软硬件结合法,此波形发生器设计方法同时兼具软硬件设计的优势:既具有纯硬件设计的快速、高性能,同时又具有软件控制的灵活性、智能性。
辅以键盘控制、LED显示等电路,设计出智能型函数波形发生器,采用软硬件结合的方法可以实现功能较全、性能更优的波形发生器,同时还可以扩展波形发生器的功能,比如利用单片机AT89C51和8位D/A转换芯片DAC0832共同实现正弦波、方波、三角波和锯齿波这四种常见波形的发生,并且可以接受外部按键来切换波形,调节频率和幅值。
此方案利用单片机构成的应用系统有较高的可靠性,系统的扩展和系统的配置灵活方便。
容易构成各种规模的应用系统,且应用系统有较高的软硬件利用参数。
单片机具有可编程性,硬件的功能描述可完全在软件上实现,而且设计时间短,成本低,可靠性高。
因此选本方案作为设计的方案。
2.2 设计原理简介
该信号发生器原理框图如图2-1,总体原理为:利用AT89C51单片机构造低频信号发生器,可产生正弦波,方波,三角波,锯齿波四种波形,通过C语言对单片机的编程即可产生相应的波形信号,并可以通过键盘进行各种功能的转换和信号频率的控制,当输出的数字信号通过数模转换成模拟信号也就得到所需要
的信号波形,通过运算放大器的放大输出波形,同时让显示器显示输出的波形信息。
图2-1 信号发生器原理框图
本方案其主要模块包括复位电路、时钟信号、键盘控制、D/A 转化及LED 显示。
其各个模块的工作原理如下:
(1)键盘模块是用于控制信号输入的类型频率,当按键按下时,可以通过单片机编程读取闭合的键号,实现相应的信号输出。
其步骤主要是a、判断是否有键按下;b、去抖动,延时100ms 左右;c、识别被按下的键号;d、处理,实现功能。
(2)复位电路是为单片机复位使用,使单片机接口初始化;89C51 等CMOS51 系列单片机的复位引脚RET 是施密特触发输入脚,内部有一个上拉低电阻,当振荡器起振以后,在RST 引脚上输出2个机械周期以上的高电平,器件便进入复位状态开始,此时ALE、PSEN、P0、P1、P2、P4 输出高电平,RST 上输入返回低电平以后,便退出复位状态开始工作。
该方案采用的是人工开关复位,在系统运行时,按一下开关,就在RST端出现一段高电平,使器件复位。
(3)D/A 转换也称为数模转换,是把数字量变换成模拟量的线性电路。
单片机产生的数字信号通过DAC0832转化成模拟信号,输出相应的电流值,通过LM358 集成运算放大器可以取出模拟量的电压值,最后利用示波器获得输出的模拟信号的波形;衡量数模转换的性能指标有分辨率、转换时间、精度、线性度等。
(4)时钟信号是产生单片机工作的时钟信号,控制着计算机的工作节奏,可以通过提高时钟频率来提高CPU的速度。
89C51内部有一个可控的反相放大器,引脚XTAL1、XTAL2为反相放大器输入端和输出端,在XTAL1、XTAL2 上
外接12MHZ 晶振和30pF 电容便组成振荡器。
时钟信号常用于CPU 定时和计数。
(5)LED 显示器用由若干个发光二极管按一定的规律排列而成,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光用于与显示相关输出波形的信息,包括信号的类型和频率。
2.3 设计功能
(1) 按键GW、SW、BW、QW、WW分别控制信号频率的个位、十位、百位、千位、万位
按键BX控制波形的转换选择
按键ZKBZ、ZKBJ分别控制方波占空比的加减
按键FW控制电路的复位
滑动变阻器控制输出电压大小,控制波形的幅度
(2)本方案输出利用8位LED显示器,该显示器为共阴极,输入段选码低电平有效,用于显示输出信号的类型和频率,如1KHz正弦波,显示为1.01000。
根据设计要求,我们在系统启动时,还要在LED中显示“年级-专业.学号”2秒钟,即显示“08-212.05”。
(3)利用DAC0832 数模转换芯片实现信号的转换,并通过集成运算放大器将信号
放大,输出信号能够在Proteus软件中的示波器中显示。
(4)信号频率范围要求:1—1KHz。
(5)输出信号幅度:0~5V。
第3章主要电路元器件介绍
3.1 AT89C51单片机介绍
3.1.1 单片机简介
AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机[5]。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89C51 提供以下标准功能:4k字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
其外形及引脚排列如图3-1 所示。
图3-1 AT89C51 引脚图
3.1.2 单片机内部结构概述
典型的MCS-51单片机芯片集成了以下几个基本组成部分。
1 一个8位的CPU
2 128B或256B单元内数据存储器(RAM)
3 4KB或8KB片内程序存储器(ROM或EPROM)
4 4个8位并行I/O接口P0~P3。
5 两个定时/计数器。
6 5个中断源的中断管理控制系统。
7 一个全双工串行I/O口UART(通用异步接收、发送器)
8 一个片内振荡器和时钟产生电路。
3.1.3 管脚功能说明
VCC:电源,接+5V
GND:接地
P0口:是一个8位漏极开路输出型双向I/O 端口。
作为输出端口时,每位能以吸收电流的方式驱动8个TTL输入,对端口写1时,又可作高阻抗输入端用。
在访问外部程序或数据存储器时,它是时分多路转换的地址(低8位)/数据总线,在访问期间将激活内部的上拉电阻。
P1口:P1口是一个带有内部上拉电阻的8位双向I/O 端口。
P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写1时,通过内部
的上拉电阻把端口拉到高电位,这时可作输入口。
P2口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
P2口:P2口是一个带有内部上拉电阻的8位双向I/O 端口。
P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。
P2口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在访问外部程序存储器时和16位外部地址的外部数据存储器(如执行MOVX @DPTR)时,P2口送出高8位地址。
在访问8位地址的外部数据存储器(如执行MOVX @RI)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。
P3口:P3口是一个带有内部上拉电阻的8位双向I/O 端口。
P3口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。
P3口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流RST:复位输入。
晶振工作时,RST脚将持续2个机器周期高电平将使单片机复位。
看门狗计时完成后,RST 脚输出96个晶振周期的高电平。
特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。
DISRTO默认状态下,复位高电平有效。
ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。
在flash编程时,此引脚(PROG)也用作编程输入脉冲。
在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可以用来作为外部定时器或时钟使用。
然而,特别强调,在每次访问外部数据存储器时,ALE 脉冲将会跳过。
如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE 操作将无效。
这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。
否则,ALE 将被微弱拉高。
这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。
当AT89C51从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。
EA/VPP:访问外部程序存储器控制信号。
EA必须接GND。
为了执行内部程序指令,EA应该接VCC。
在flash编程期间,EA也接收12伏VPP电压。
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:振荡器反相放大器的输出端。
3.2 DAC0832简介
3.2.1 DAC0832的介绍
DAC0832是采样频率为八位的D/A转换芯片[6],集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。
所以这个芯片的应用很广泛, D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
D/A转换结果采用电流形式输出。
若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。
运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。
DAC0832逻辑输入满足TTL电平,可直接与TTL 电路或微机电路连接。
3.2.2 DAC0832的管脚功能
D0~D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);
ILE:数据锁存允许控制信号输入线,高电平有效;
CS:片选信号输入线(选通数据锁存器),低电平有效;
WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。
由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;
XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;
WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。
由WR1、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。
IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化;
IOUT2:电流输出端2,其值与IOUT1值之和为一常数;
Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;
Vcc:电源输入端,Vcc的范围为+5V~+15V;
VREF:基准电压输入线,VREF的范围为-10V~+10V;
AGND:模拟信号地
DGND:数字信号地
3.2.3 DAC0832内部结构及功能
DAC0832中有两级锁存器,第一级锁存器称为输入寄存器[8],它的锁存信号为ILE;第二级锁存器称为DAC寄存器,它的锁存信号为传输控制信号XFER。
因为有两级锁存器,DAC0832可以工作在双缓冲器方式,即在输出模拟信号的同时采集下一个数字量,这样能有效地提高转换速度。
此外,两级锁存器还可以在多个D/A转换器同时工作时,利用第二级锁存信号来实现多个转换器同步输出。
DAC0832逻辑框图和引脚排列如图3-2所示
3.3 数码显示管
3.3.1 数码管原理及分类
LED发光器件一般常用的有两类:数码管和点阵。
常用的数码管一般为8字型数码管,分为A、B、C、D、E、F、G、DP八段,其中DP为小数点。
数码管常用的有10根管脚,每一段有一个管脚,另外两根管脚为一个数码管的公共端。
从尺寸上分,LED数码管的种类很多,常用的有0.3、0.5、0.8、1.0、1.2、1.5、1.8、2.3、3.0、4.0、5.0等。
一般小于1.0的为单管芯,1.2~1.5为双管芯,
1.8以上的为3个以上管芯,因而它们的供电电压要求不同,一般每个管芯的压降为
2.1V左右。
通常,0.8以下采用5V供电,1.0~2.3采用12V供电,
3.0以上的选择更高电压供电。
从电路上分,数码管又可分为共阴极和共阳极两种。
结构分别如图3-3,3-4所示。
图3-3共阴极图图3-4共阳极图图3-5管脚图其中:图3-5为管脚图,从a—g管脚输入不同的字段码,可显示不同的数字或字符(其字形码见表3-1)。
可见共阴极和共阳极的字段码互为反码。
表3-1 字段码表
3.3.2 数码管的工作方式
显示器的工作方式分为静态显示方式和动态显示方式两种。
静态显示方式就是显示器在显示一个字符时,相应的发光二极管恒定的导通或截止,例如a、b、c、d、e、f 导通,g 截止时显示“0”,这种使显示器显示字符的字形数据常称为段数据。
静态显示方式的每一个七段显示器,需要由一个8 位并行口控制。
优点是显示稳定,提高了工作效率,缺点是位数较多时显示口随之增加。
动态显示方式是一位一位的轮流点亮各位显示器,对于每一位显示器来说,每隔一段时间点亮一次。
显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关。
调整电流和时间参数可以实现亮度较高较稳定的显示,如显示器的位数不大于8 位,则控制显示器公共极的电位只需要一个8 位口(位数据口),控制字形也需要一个8 位口(段数据口)。
1.LED静态显示
所谓静态显示方式,就是当显示器显示某一个字符时,相应的发光二极管恒定地导通或截止。
静态显示时,较小的电流能得到较高的亮度。
这是由于显示器的各位相互独立,而且各位的显示字符一经确定,相应锁存器的输出将维持不变,直到显示另一个字符为止(如图3-6所示)。
当显示器位数很少(仅一、二位)时,采用静态显示方式是合适的。
当位数较多时,用静态显示所需的I/O口太多,占用太多的硬件资源。
故在位数较多时往往采用动态显示方式。
LED静态显示时,其公共端直接接地(共阴极)或接电源(共阳极),各段选线分别与I/O口线相连。
要显示字符,直接在I/O线上输出相应的字段码。
图3-6 LED静态显示
2.LED动态显示方式
LED动态显示是将所有的数码管的段选线并接在一起,用一个I/O口控制,公共端不是直接接地(共阴极)或电源(共阳极),而是通过相应的I/O口线控制。
如图3-7所示。
图3-7 LED动态扫描
设数码管为共阳极,它的工作过程为:第一步使右边第一个数码管的公共端D0为1,其余的数码管的公共端为0。
同时在I/O(1)上送右边第一个数码管的字段码,这时,只有右边第一个数码管显示,其余不显示;第二步使右边第二个数码管的公共端D1为1,其余的数码管的公共端为0,同时在I/O(1)上送右边第二个数码管的字段码。
这时,只有右边第二个数码管显示,其余不显示,依此类推,直到最后一个,这样四个数码管轮流显示相应的信息,一个循环完后,下一循环又这样轮流显示,从计算机的角度看是一个一个的显示,但由于人的视觉滞留,只要循环的周期足够快,看起来所有的数码管都是一起显示的了。
这就是动态显示的原理。
而这个循环周期对于计算机来说很容易实现。
所以在单片机中经常用到动态显示。
四、LED显示器与单片机的接口
LED显示器从译码方式上有硬件译码方式和软件译码方式;从显示方式上有静态显示方式和动态显示方式,在使用时可以把它们组合起来。
在实际应用时,如果数码管个数较少,通常用硬件译码静态显示,在数码管个数较多时,则通常用软件译码动态显示。