用单片机控制可测方波1001000Hz并显示脉宽.docx

上传人:b****5 文档编号:14808944 上传时间:2023-06-27 格式:DOCX 页数:35 大小:357.25KB
下载 相关 举报
用单片机控制可测方波1001000Hz并显示脉宽.docx_第1页
第1页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第2页
第2页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第3页
第3页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第4页
第4页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第5页
第5页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第6页
第6页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第7页
第7页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第8页
第8页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第9页
第9页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第10页
第10页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第11页
第11页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第12页
第12页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第13页
第13页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第14页
第14页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第15页
第15页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第16页
第16页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第17页
第17页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第18页
第18页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第19页
第19页 / 共35页
用单片机控制可测方波1001000Hz并显示脉宽.docx_第20页
第20页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

用单片机控制可测方波1001000Hz并显示脉宽.docx

《用单片机控制可测方波1001000Hz并显示脉宽.docx》由会员分享,可在线阅读,更多相关《用单片机控制可测方波1001000Hz并显示脉宽.docx(35页珍藏版)》请在冰点文库上搜索。

用单片机控制可测方波1001000Hz并显示脉宽.docx

用单片机控制可测方波1001000Hz并显示脉宽

桂林电子科技大学

单片机最小应用系统

指导老师:

吴兆华

学生:

学号:

 

桂林电子科技大学机电工程学院

目录

摘要2

一、实验课题及要求3

二、实验目的及意义3

三、任务系统设计4

3.1分析任务要求,写出系统整体设计思路     4

3.2问题的难点在按键连续按下超过2S的计时问题,如何实现计时功能。

 4

3.3分析软件任务要求,写出程序设计思路,分配单片机内部资源4

3.4脉冲宽度测量5

3.5脉冲频率测量6

3.6扩展测量范围原理6

 3.7选择单片机型号和所需外围器件型号,设计单片机硬件电路原理图 6

四、系统硬件电路7

4.1硬件电路说明7

4.2AT89C51单片机简介8

4.2.1AT89S51具有如下特点:

9

4.2.2AT89S51的运行模式9

4.2.3MCS-51系列单片机的并行I/O口10

4.3最小系统控制部分11

4.3.2复位电路13

4.4数码管显示电路14

4.5功率放大电路16

4.6显示部分硬件装备图  18

五、用DXP绘制电路图19

5.1电路板设计规则19

5.1.1考虑PCB尺寸大小19

5.1.2确定特殊组件的位置19

5.1.3布局方式20

5.1.4电源和接地线处理的基本原则20

5.1.5导线设计的基本原则21

5.2PCB设计注意事项21

六、软件设计24

6.1程序流程图24

6.1.1主程序图24

6.1.2这段子程序图25

6.2程序源代码25

七、设计总结29

八、参考文献29

 

摘要

单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。

单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

单片机是20世纪中期发展起来的一种面向控制的大规模集成电路模块,具有功能强、体积小、可靠性高、价格低廉等特点,在工业控制、数据采集、智能仪表、机电一体化、家用电器等领域得到了广泛的应用,极大的提高了这些领域的技术水平和自动化程度。

单片机应用的意义绝不仅限于它的广阔范围以及带来的经济效益,更重要的意义在于,单片机的应用正从根本上改变着传统的控制系统的设计思想和设计方法。

从前必须由模拟电路或数字电路实现的大部分控制功能,现在使用单片机通过软件就能实现了。

随着单片机应用的推广普及,单片机控制技术将不断发展,日益完善。

本文是设计频率/脉冲宽度的测量与显示的硬件电路与程序的编制。

它可以测量脉冲信号的脉冲宽度,频率等参数。

利用定时器的门控信号GATE进行控制可以实现脉冲宽度的测量。

利用定时器T0定时T1计数来测量由P3.5口输入的脉冲信号的频率。

在单片机应用系统中,为了便于对LED显示器进行管理,需要建立一个显示缓冲区。

显示时采用动态扫描的方式将将各位数的BCD码依序输入到LED中,并连续扫描2秒钟。

通过采用STC89C52RC单片机为中心器件来设计脉冲宽度测量器,并运用MCS—51/52单片机计数功能,选择好工作模式,对脉宽进行计数。

在现有的单片机仿真机系统上掌握相关软硬件设计与调试知识,并在计算机上编写汇编程序调试运行。

关键词:

门控信号GATE;脉冲宽度;扩展测量范围;脉冲频率

一、实验课题及要求

用8031单片机控制可测方波频率100~1000Hz,并显示方波的脉宽

二、实验目的及意义

1、加深外部中断指令的基本使用方法;

2、熟悉外部中断处理程序的编程方法;

3、进一步熟悉8051内部定时/计数器的初始化、使用方法及编程方法;

4、进一步掌握8051中断处理程序的编程方法和应用;

6、学会使用并熟练掌握电路绘制软件Protel99SE(或DXP)。

7、基于STC89C52RC单片机测量脉冲宽度;

8、研究分别使用定时计数器0,1的GATE模式和定时计数器2的捕捉功能完成外部脉冲宽度测量;

9、通过单片机的综合设计,学会将所学的知识融会贯通,锻炼独立设计、制作和调试单片机的应用系统能力,领会单片机应用系统的软件、硬件调试方法和系统的研制开发过程,为进一步的科研实践活动打下一定的基础。

意义:

1、通过单片机的综合设计,能够将所学的知识融会贯通,锻炼独立设计、制作和调试单片机的应用系统能力,领会单片机应用系统的软件、硬件调试方法和系统的研制开发过程,为进一步的科研实践活动打下一定的基础。

2、通过单片机综合设计更加熟悉的掌握51单片机的应用;掌握了方波频率计算以及形成的原理,更加进一步的学习方波宽度的测量,并且对软件编程及硬件设计方法更加好的掌握,掌握根据课题要求,提出并选择设计方案、查找确定所用元器件、设计并搭制硬件电路、编程写入并调试等的一系列,掌握单片机应用的基本方法与步骤。

3、通过单片机的综合设计,对输出方波的原理有很大的了解,掌握方波频率的计算方法,同时对其脉冲测量过程学习到很多,在设计中对系统原理图也有很好地掌握,实验中和本组队员努力配合,明白团队的努力是伟大的。

三、任务系统设计

用单片机产生频率可调的方波信号。

控制方波的频率范围为100Hz-1000Hz,频率误差比小于0.5%。

 要求用“增加”、“减小”2个按钮改变方波给定频率,按钮每按下一次,使给定频率按步进改变,当按钮持续按下的时间超过一定时间后,给定频率以一定的速度连续增加(减少),输出方波的脉宽要求在四位数码管上显示。

用输出方波控制一个发光二极管的显示,用示波器观察方波波形。

3.1分析任务要求,写出系统整体设计思路     

任务分析:

方波信号的产生实质上就是在定时器溢出中断次数达到规定次数时,将输出I/O管脚的状态取反。

    涉及以下几个方面的问题:

按键的扫描、功能键的处理、计时功能以及数码管动态扫描显示等。

  

3.2问题的难点在按键连续按下超过2S的计时问题,如何实现计时功能。

 

    系统的整体思路:

主程序在初始化变量和寄存器之后,扫描按键,根据按键的情况执行相应的功能,然后在数码显示频率的值,显示完成后再回到按键扫描,如此反复执行。

中断程序负责方波的产生、按键连续按下超过2S后频率值以10Hz/s递增(递减)。

3.3分析软件任务要求,写出程序设计思路,分配单片机内部资源

①T0工作方式

通过设置TMOD,使其为定时器模式。

在做定时器使用时,将T0定时为0.001S。

当GATE=1时,为门控方式。

只有TR0设置为1,且同时外部中断引脚也为高电平时,才能启动T0开始计数工作。

把脉冲信号从P3.2脚引入,T0设为定时器方式工作,并工作在门控方式(GATE=1)。

在待测信号高电平期间,T0对内部周期脉冲进行计数。

在待测脉冲高电平结束时,其下降沿向P3.2发中断,在外部中断0的中断服务程序中,读取TH0、TL0的计数值,该值就是待测脉冲的脉宽。

随后,清零TH0和TL0,以便下一脉宽的测量。

计算方法:

脉冲宽度=计数值*0.01s,将脉冲宽度的数值转换为压缩BCD码,再将压缩BCD码转换为非压缩BCD码用于显示,最后调用显示程序,读取脉冲宽度。

②T2捕捉工作方式

使用T2的捕捉方式,TH2、TL2的初值设为0,待测信号从T2EX(P1.1)引入,采用定时器T0定时0.001s,刚开始待测信号为高电平或低电平时等待,再次检测为高电平时T2开始计数,定时器T0每定时0.001s,通过串口P1.0的开关状态使T2的计数值增一并将计数值存入RCAP2H和RCAP2L两个寄存器中。

计算方法:

脉冲宽度=计数值*0.001s,再将表示脉冲宽度的十六进制转换为压缩BCD码,再将压缩BCD码转为非压缩BCD码用来显示,数码管显示的数据即为要测量的脉宽。

3.4脉冲宽度测量

利用定时器的门控信号GATE进行控制可以实现脉冲宽度的测量。

对定时器T1来讲,,被测脉冲信号从INT1端引入,其上升沿启动T1计数,下降沿停止T1计数。

定时器的计数值乘以机器周期即为脉冲宽度。

下图中给出了脉冲宽度测量的原理图。

为低时启动T1

下降沿停止计数

被检测脉冲信号

INT1

为高则等待上升沿开始计数

脉冲宽度测量过程

 

图2系统原理图

 

3.5脉冲频率测量

频率测量实际上就是在1s内对脉冲个数进行计数,计数值就是信号频率。

令定时器T0工作在方式1,得到100ms的定时间隔,再进行软件计数10次,形成一个1s的测量闸门信号。

在测量闸门信号期间令计数器T1工作在计数方式1,对脉冲信号的频率计数,计数值存入COUNT、COUNT+1和COUNT+2单元,计数值通过6位动态数码管显示出来。

3.6扩展测量范围原理

上述系统被测脉冲宽度范围最大为65535us,扩展计数器的位数可提高脉冲宽度的测量范围。

令定时器T1工作在方式1定时,GATE=1,用COUNT单元,COUNT+1单元即定时器T1的计数单元TH1和TL1组成一个32位的计数器对脉冲宽度进行测量。

并且在定时器T1溢出时,给COUNT+2赋值#01H,并将THI和TH0置零,重新开始计数。

以扩展系统测量范围使可以达到130ms的任务要求。

同时在进行频率测量时,当计数器T1溢出时,给COUNT+2赋值#01H,并将THI和TH0置零,重新开始计数。

以扩展系统测量范围使可以达到100KHZ的任务要求。

把脉冲信号从P3.2脚引入,T0设为定时器方式工作,并工作在门控方式(GATE=1)。

在待测信号高电平期间,T0对内部周期脉冲进行计数。

在待测脉冲高电平结束时,其下降沿向P3.2发中断,在外部中断0的中断服务程序中,读取TH0、TL0的计数值,计算出所测。

随后,清零TH0和TL0,以便下一个脉宽的测量。

显示:

将数码管的段控信号与P口与四位LED数码管相连。

 3.7选择单片机型号和所需外围器件型号,设计单片机硬件电路原理图 

 采用MCS51系列单片机At89S51作为主控制器,外围电路器件包括数码管驱动、独立式键盘、方波脉冲输出以及发光二极管的显示等。

 

数码管驱动采用2个四联共阴极数码管显示,由于单片机驱动能力有限,采用74HC244作为数码管的驱动。

在74HC244的7段码输出线上串联100欧姆电阻起限流作用。

 

独立式按键使用上提拉电路与电源连接,在没有键按下时,输出高电平。

发光二极管串联500欧姆电阻再接到电源上,当输入为低电平时,发光二极管导通发光。

脉宽(Pulse-Width)是脉冲宽度的缩写,脉冲宽度就是高电平持续的时间,常用来作为采样信号或者晶闸管等元件的触发信号。

脉宽由信号的周期和占空比确定,其计算公式是脉宽W=T×P(T:

周期,P:

占空比)。

  

占空比计算方式是:

左对齐方式:

占空比=[(PWMPERx-PWMDTYx)/PWMPERx]×100%

中心对齐方式:

占空比=[PWMDTYx/PWMPERx]×100%

周期的计算公式:

左对齐方式:

输出周期=通道周期×PWMPERx

中心对齐方式:

输出周期=通道周期×PWMPERx×2

脉宽的计算方法就不言而喻了。

本次设计,因为要求产生的是方波,高低电平所占的时间相同(占空比为0.5),即脉宽为:

脉宽W=T/2

四、系统硬件电路

本设计要求用8031单片机控制可测方波100~1000Hz,并显示方波宽度。

此功能可通过“最小系统系统”实现。

整个设计主要包括单片机基本的晶振电路,按键复位电路,频率调节电路三极管功率放大电路了和数码管显示电路。

整体设计原理图如下图1所示。

图1系统设计总电路图

4.1硬件电路说明

本次硬件系统包括单片机最小系统、外部中断电路、数码管显示电路三部分在下面介绍中对每一部分都有详细的说明(因为条件有限,本次设计采用AT89S51单片机,其功能与8031基本相同)。

4.2AT89C51单片机简介

AT89S51单片机是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4Kbytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准8051指令系统及引脚。

它集Flash程序存储器,既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。

图2AT89S51引脚图

AT89S51是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及89C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。

AT89S51有PDIP、PLCC、TQFP三种封装方式,其中最常见的就是采用40Pin封装的双列直接PDIP封装,外形结构图2。

  芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口(见右图)左边那列引脚逆时针数起,依次为1、2、3、4......40,其中芯片的1脚顶上有个凹点。

在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。

4.2.1AT89S51具有如下特点:

40个引脚,8kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。

4.2.2AT89S51的运行模式

(1)空闲模式

在空闲模式下,CPU处于睡眠状态,振荡器和所有片内外围电路仍然有效。

空闲模式可由软件设置进入(设IDL=1)。

在这种模式下,片内RAM和SFR中的内容保持不变。

空闲模式可通过任何一个允许中断或硬件复位退出。

若用硬件复位方式结束空闲模式,则在片内复位控制逻辑发生作用前长达约两个机器周期时间内,器件从断点处开始执行程序。

片内硬件禁止访问内部RAM,但不禁止访问端口。

为避免采用复位方式退出空闲模式时对端口的不应有的访问,在紧随设置进入空闲指令(即设IDL=1)的后面,不能是写端口或外部RAM的指令。

(2)掉电模式

引起掉电模式的指令是执行程序中的最后一条指令(使PD=1的指令)。

在掉电模式下,振荡器停止工作,CPU和片内所有外围部件均停止工作,但片内RAM和SFR中的内容保留不变,直到掉电模式结束。

退出掉电模式可用硬件复位或任何一个有效的外部中断INT0和INT1。

复位可重新设置SFR中的内容,但不改变片内RAM中的内容。

在Vcc电源恢复到正常值并维持足够长的时间之后,允许振荡器恢复并达到稳定,方可进行复位,以退出掉电模式。

4.2.3MCS-51系列单片机的并行I/O口

接口电路是微机必不可少的组成部分,并行输入确出接口是CPU和外部进行信息交换的主要通道。

MSC-51系列单片有4个8位并行双向I/O口P0~P3,共32根I/O线。

每一根线能独立用作输入或输出。

单片机可以外接键盘、显示器等外围设备.还可以进行系统扩展,以解决硬件资源不足问题。

4个并行口都是双向口,既可以输入又可以输出。

P0、P2口经常作外部扩展存储器时的数据、地址线,P3口除作I/O口外,每一根都有第二功能。

这4个I/O口结构基本相同,但仍存在差别。

(1)P1口是最常用的I/O口如图3所示,因为不作数据地址线,其结构中没有数据地址线,也没有多路开关MUX,输出驱动电路接有上拉电阻。

P1口输入输出时与P0作I/O时相似,输出数据时.先写入锁存器,经Q端反相,再经场效应管反相输出到引脚。

输入时,先向锁存器写l,使v管截止.外部引脚信号由下方读缓冲器送入内部总线,完成读引脚操作。

P1口也可以读锁存器。

外部提升电阻将引脚拉升至高电平,但输人的低电平信号能将其拉低,不会影响低电平的输入。

图3P1口一位结构

(2)P3口为双功能口,当P3口作为通用I/O口使用时,它为准双向口,且每位都可定义为输入或输出口,其工作原理同P1口类似。

(3)P3口还具有第二功能,其引脚描述,P3口特殊功能。

口线

特殊功能

信号名称

P3.0

RXD

串行输入口

P3.1

TXD

串行输出口

P3.2

 

外部中断0输入口

P3.3

 

外部中断1输入口

P3.4

T0

定时器0外部输入口

P3.5

T1

定时器1外部输入口

P3.6

WR

写选通输出口

P3.7

RD

读选通输出口

4.3最小系统控制部分

4.3.1晶振电路

电源引脚Vcc和Vss

Vcc:

电源端,接+5V。

Vss:

接地端。

时钟电路引脚XTAL1和XTAL2

XTAL1:

接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,若使用外部TTL时钟时,该引脚必须接地。

XTAL2:

接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出,若使用外部TTL时钟时,该引脚为外部时钟的输入端。

系统扩展时,ALE用于控制地址锁存器锁存P0口输出的低8位地址,从而实现数据与低位地址的复用。

 

图4系统晶振电路

系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路(如图5所示)。

AT89S单片机内部有一个用于构成振荡器的高增益反相放大器。

引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。

这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。

外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。

对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。

因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为22μF。

在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。

外部程序存储器读选通信号,是读外部程序存储器的选通信号,低电平有效。

程序存储器地址允许输入端/VPP。

当为高电平时,CPU执行片内程序存储器指令,但当PC中的值超过0FFFH时,将自动转向执行片外程序存储器指令。

当为低电平时,CPU只执行片外程序存储器指令。

输入/输出口引脚P0、P1、P2和P3。

P0口(P0.0~P0.7):

该端口为漏极开路的8位准双向口,负载能力位8高LSTTL负载,它为8位地址线和8位数据线的复用端口。

P1口(P1.0~P1.7):

它是一个内部带上拉电阻的8位准双向I/O口,P1口的驱动能力为4个LSTTL负载。

P2口(P2.0~P2.7):

它为一个内部带上拉电阻的8位准双向I/O口,P2口的驱动能力也为4个LSTTL负载。

在访问外部程序存储器时,它作存储器的高8位地址线。

P3口(P3.0~P3.7):

P3口同样是内部带上拉电阻的8位准双向I/O口,P3口除了作为一般的I/O口使用之外,其还具有特殊功能。

4.3.2复位电路

复位使单片机处于起始状态,并从此状态开始运行MCS5-51单片机RST引脚为复位端,该引脚连续保持2个机器周期(24个时钟振荡周期)以上的高电平。

可使单片机复位。

本论文使用的是外部复位电路,单片机在启动后要从复位状态开始运行,因此上电时要完成复位工作,称上电复位,如图5-a所示。

上电瞬间电容两端的电压不能发生突变,只RST端为高电平+5v,上电后电容通过及RC电路放电RST端电压逐渐下降,直至低电平0V,如图5-c所示。

适当选择R、C的值,使RST端的高I电平维持2个机器周期以上即可完成复位。

单片机L在运行过程中,出于本身或外并干扰的原因会导致出错。

这时可按复位键以重新开始远行,按键复位可分为按键电平复位或按健脉冲复位,如图5-b所示。

按键脉冲复位和上电平复值的原理是一样的,都是利用RC电路的放电原理,如图5-d所示。

让RST端能保持一段时间的高电平,以完成复位,按键电平复位时,按键时间也应保持在两个机器周期以上。

(a)上电复位(b)按键电平复位

 

(c)RC放电过程(d)电平复位过程

图5单片机常用复位电路

根据设计要求和计算简便的原则,我们选择12M的石英晶振、22PF的电容、+5V电源,最小系统如下:

图6最小系统连接图

4.4数码管显示电路

数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。

共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。

共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。

当某一字段的阴极为高电平时,相应字段就不亮。

共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。

共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。

当某一字段的阳极为低电平时,相应字段就不亮。

数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。

①静态显示驱动:

静态驱动也称直流驱动。

静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。

静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×8=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:

),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。

②动态显示驱动:

数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。

通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。

在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。

图7四位数码管引脚图

四位数码管引脚如上图所示,在实际判别中,让有小数点的端对着自己,上面引脚的功能为1,a,f,2,3,b下面引脚为e,d,p,c,g,4

根据七段数码管的连接原则,可以将abcdefg分别依次连接在P0口,然后由P2口控制片选信号就可以了。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2