第卷!∀第 期增刊年 仪器−仪表学报4306∗ 月&∋(∋)∗+,#∃%&(12侧,∋%)∗&)%.%#0&./∋%∋78&!9;∀:基于单片机对<=>范小兰显示器控制研究,9上海工程技术大学工程实训中心上海!?! ;摘?系列单片机串口的使用技巧要≅本文了介绍了Α≅,并对利用其串口实现对<=>显示器的控制进行了深入研究。关键词单片机串口<=>Β∃∋(1+ΧΔ∗∋Χ<=>Ε−(∋Χ.#∗&12∗))∗&1∃∋∗Φ%Γ2一(%&Η)Ι∋∋∗,ϑ+1∋2/Δ(1∋,Κ−&:%−∗)曲加∋29云呀才Η&%−%ΛΜ’&∋Η#&%&∋2)2∃−Η/&∃−%乙竹%,∋Γ(即了石喝动“魄(2∋%∋Γ&∃−Η/&加?!?公口Γ∃&%;−(%&&1ΝΟ(12−∋1≅0∃%(ϑ−Π1∋,2∋−&∋&∃∋∗%∋−)?Α%&12∗Χ+∋∋Χ%&∋Χ∗Χ2∋21∗+1%)%2−)%&%∋∋1∃Θ∋(∋%−.2∋∋∗.()Φ%∋2∗一∋Η)一∋∗2,ϑ+1∋,Χ∋∃1Ρ∗Ρ−Δ(≅∗1Γ∗&12∗一?<=>Ο−(Η)∋一&∗2∃1∋()%∋2%−(∗1(%Χ∋Χ∗1∗ΣΔ∋川(Φ%∋2∗(%&,ϑ∋1+(∋2%−&1∋2∋∋)%%触<=>?引言Φ#/Α?系列单片机由于其独特的高性价比越一优点是编程简单显示亮度高缺点是占用?ς4端口,,多来越被用户所接受,,而单片机端口少,,实际应用时必须增加译码驱。动器进行驱动增加了硬件电路的复杂性动态驱被用于各行各业领域。例如。≅动是将所有数码管的Ω个显示笔画的同名端连在一利用单片机可以实现对<=>显示器的显示控制单起另外为每个数码管的公共极#4Φ增加位选通控,片机的并行口速度快快速交换数据口Τ,常作为单片机与其他器件的ς制电路位选通由各自的?,线控制,当单片机而其串行口则可用来作为同步移输出字形码时码,,所有数码管都接收到相同的字形,位寄存器发出数据来控制数据更新不需要很快的<=>但究竟是那个数码管会显示出字形,取决于单显示器。那么,如何充分利用单片机串行口来。片机对位选通#4Φ端电路的控制所以我们只要将需要显示的数码管的选通控制打开字形,,尽可能控制<=>器件并达到良好的视觉效果呢Υ笔者对此做了以下一些深入研究!该位就显示出通过分时轮流没有选通的数码管就不会亮,。单片机串行口对<=>显示器的控制原理控制各个数码管的的#4Φ端就使各个数码管轮流受控显示这就是动态驱动为了节省0ς4端口。,,降!?<=>显示原理,低功耗就要用驱动电路驱动数码,,我们采用动态显示。数码管要正常显示5!!单片机串行接口动态显示电路串行口对<=>的控制电路如图?所示。管的各个段码,从而显示出我们要的数字,因此根单片机Β:>据数码管的驱动方式的不同可以分为静态式和动串口Ξ:>与移位寄存器的数据输入端连接口与移位寄存器的时钟端连接。,端。态式两类。静态驱动是指每个数码管的每一个段码,每行数码管数据输都由一个单片机的0ς4端口进行驱动Ε#>一或者使用如。入端连接在一起,每列数码管#4Φ端连接在一起,码二十进制译码器译码进行驱动静态驱动的!∀Ω串行口的串行口设为工作在方式4时串行口则用第 期增刊范小兰。≅基于单片机对<=>显示器控制研究来作为同步移位寄存器发出数据电路中利用定时,第二列数据,发送完毕后,使第二列数码管点亮。,器控制Ξ:>端口定时发出一组数据利用Β:>端口发出时钟脉冲供移位寄存器作为移位脉冲使用送数据时先发送完第一列所有数据,,。依次发送和点亮所有数码管发按照以上电路,那么每行只能显示Ω个数码管。。存入并行寄存每列数码管则不受硬件个,假设每列数码管有&,器然后借用单片机的端口ϑ)5打开控制此列数码管#4Φ端的并行寄存器输出控制4=端,那么至少需要附?个串行移位寄存器。同时需使寄存器中。要附?个并行寄存器数据输出,数码管点亮显示相应数据然后再发送下>Ξ::>>Ω∀Α??)∗ϑ4移位寄存器#ϑϑ4>4>Λ4==并行寄存器?)−ΨΨ4ΨΛ口利厂(数码管∗Φ??行列−Η救?行!列#4Φ码管ΛΨ4门≅开仃苛仔菇菇!−数码管Ω列数码管!行)列−数码管移位寄存器44Ψ4!行!列#ϑ4Λ>ΛΗΗ#4ΦΖΨΛ4=口心4Φ图?单片机与<=4的接口5!单片机串行口?对于Φ#/Α一称内部计数方式;,ς?!以单片机晶振频率的??,作为系列或Ν∀ΒΩ?、#系列单片机串行。,口工作方式有4、!、四种工作方式,其中方计数信号ΤΓς矛[为外部计数方式最高计数频率。式是作为同步移位寄存器使用。其它三种方式是中ς!为单片机晶振频率的?∴作为通信使用当设置串行口控制寄存器/#46,门控位]川2=≅]ΝΒ=[)时,Β4和Β)受单片,的高两位/Φ,/Φ4[∗时串口工作在我们要求的方。机外部引脚输入电平的控制906控制Β);,Β4控制Β4Β46Β00Β4式,即作为移位寄存器使用如俐Β4为高电平时。,计数,而06为低电平时Β)停止计数]ΝΒ=。为时Β4和Β)不受单片机的定时器?对于Φ#/Α一外部引脚输入电平的控制!控制寄存器Β#46Β#46系列或Ν∀ΒΩ#系列单片机。,与定也是Ω位寄存器这里仅介绍定时运行,时器有关的特殊功能寄存器如下?控制位ΒΞ,∗滋制刊;和双)。);滋制Β,,。方式寄存器ΒΦ4>工作方式选择≅ΞΒ4、仪)时禁由指令置位和清零称方式?,,当]ΝΒ=为4时时允许Β计数,Β4计数仅受ΒΞ4为,[∗)时如ΦΦ4ΤΒΞ4控制,,ΒΞ4为?。 为?位定时ς计数器[?时称方式!当Φ,Φ4。止Β4计数]ΝΒ=为)时。仅当ΒΞ4为)且06Β4输与ΒΞ4控制Β为自动恢复初值的Ω位定时ς计数器定时ς计数方式选择≅入为高电平时Β4才计数相同。ΒΞ0控制Β)#ςΒ[∗为定时方式9又!∀∀第卷?仪器仪表学报,。计数器_?个移位寄存器每个寄存器有Ω位数据& 位计数器的高Ω位和低Ω几为Β4的? 位计数器的高Ω位和低Ω<4为Β)的?Β、因此,,位,。∗、发送一次数据需要9&_);‘要9 娜_);∴&、Ω又Ω个单位时间,如果单Β⊥4、片机晶振频率为?!ΦΘ时发送完所有行列数据需,。位通过对Β⊥4置Β、Β<4和Β⊥4、<ΒΒ4、4的初始化编程设显然,&数码管数应该满足9); _∴⎯。三Β0的定时ς计数初值。,)的最终计数值Β点亮周期ς基准脉冲周期?!Φ??假如单片机晶振频率为也保存在这些计数器中∴α⊥。时,单片机串口控制<=>的个数应该小于,个当然这只是从发送数据和<=>显示这一方,软件编程根据以上电路确定了单片机定时器、面来计算得出的结果,实际上考虑单片机还要做其。串行口的他工作那么所能控制的数码管个数还要少些提高晶振频率,,工作方式,进行以下设置,。可以适当提高所控制的<=>个数≅。为使串行口作为同步移。位寄存器使用Φ[4?,设定串口工作于方式,定时器Φ)不难得出结论显示利用单片机串口可以控制<=>,选定了工作方式?。是自动恢复初值的? 位,但必须定时刷新输出数据。而且定时器的设,定时ς计数器使]ΝΒ=[这样Β4≅、)就不受Β置值必须满足要求时间设定过长Τ则数码管有闪外部信号控制选择≅。定时方式选择选定定时ς计数方式烁感太快,不利于人眼观察时间设定过短则刷新速度,,使单片机执行其它工作速度受到,且造,ΓςΒ[为定时方式9又称内部计数方式;,成<=>通电流时间长必须协调好二者关系Α发热明显。,功耗大。因此ς?!以单片机晶振频率的?作为计数信号。在发送数据前示数据。,首先要在数据区域中存放好显,根据寄存器先进先出的原则,调用数据时结论如何能更好地发挥单片机各种功能是单片机,应先取最后一行要显示的数据发送行数据后,等发送完所有,再发送使并行寄存器输出的指令。那么用户需要长期深入研究的课题对<=>的控制,,。对于单片机串行口。此列数码管电亮笔者只是做了初步研究在具体的根据人的视觉暂留现象及发光二极管的余辉效应,用户系统中还需要根据具体电路对参数进行适当修改,5Α!点亮数码管一次这样各那么需要间隔,,以最终达到控制要求为目的。位数码管虽然并非同时点亮快,但扫描的速度足够,给人的印象就是一组稳定的显示数据。不会有,参考文献【?宋浩单片机原理及应用北京≅清华大学出版社!Α闪烁感如果单片机晶振频率为?!Φ=吃时基准脉冲周期为?娜。,那么设定定时器的高Ω位Β⊥4和低Ω,)!β?何立民Φ#(Α一系列单片机应用系统设计系统配置与,位Β<4的初值分别设定为!Λ⊥和∗)⊥!Α;。这样点亮周期,接口技术北京≅北京航空航天大学出版社?∀∀5为/4⊥Θ9假如每列数码管有&个需要控制