数码管的应用.docx

上传人:牧羊曲112 文档编号:5307064 上传时间:2023-06-24 格式:DOCX 页数:18 大小:1.18MB
返回 下载 相关 举报
数码管的应用.docx_第1页
第1页 / 共18页
数码管的应用.docx_第2页
第2页 / 共18页
数码管的应用.docx_第3页
第3页 / 共18页
数码管的应用.docx_第4页
第4页 / 共18页
数码管的应用.docx_第5页
第5页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《数码管的应用.docx》由会员分享,可在线阅读,更多相关《数码管的应用.docx(18页珍藏版)》请在三一办公上搜索。

1、51开发板-数码管的应用板数码介绍如何使用七数码管及一些基本应用。七段数码管在家电及工业控制中有着很广泛的应用,例如用来显示温度、数量、 重量、日期、时间等等,具有显示醒目、直观的优点。下文我们将结合仿真器 编程器和试验板来学习数码管的使用。_. BlWTPUTXjesv-IJV首先,让我们先来对相关理论知识进行一番了解。如图片左上角,是我们51试 验板的4位数码管;那这些数码管是怎样来显示1,2, 3, 4数字呢?别着 急,我们一起慢慢来学。数码管实际上是由7个发光管组成8字形构成的,加上小数点就是8个。这些段 分别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,这

2、些特定的 段就会发亮,以形成我们眼睛看到的字样了。如:显示一个“2字,那么应当是 a亮 b 亮 g 亮 e亮 d 亮f不亮c不亮 dp 不亮。7段数码管的段排列和内结构见下图:试验板用的都是共阳极扫描型数码管。那什么是共阳极呢;就是他们的公共端接 正极;还有一种是共阴极的数码管,那么他们的公共端是接负极的。扫描型的意 思是,几位的数码管的段选都是并联着的。现在我们可以看到试验板上有四个数码管,那我们应该如何来控制哪一只数码管 显示呢?再看看试验板上的图片,右边有4个黑糊糊的三极管,对,就是用它们 来控制左边的那些数码管哪个边亮。现在来看看试验板数码管部分的硬件原理图。图中的A,B,C,D,E,

3、F,G,DP分别与单片机的P0.0-0.7 口相连,用来控制显示数字 的形状。Q81、Q82、Q83、Q84即为上文所讲到的4个控制数码管的三极管,S 1、S2、S3、S4分别接在单片机的P2.0,P2.1,P2.2,P2.3 口上。通过控制这些 三极管的S1、S2、S3、S4端的电平来打开或关闭数码管的显示,即起到“使能” 作用。如S1端为低电平,则允许相应的数码管显示,显示的字形则由P0.0-0.7 口所决定。上面理论说了一大堆,我们从这里开始动手喽:)我们的任务是要让左边两个数 码管显示一个“2 ”字。首先,还是将仿真器和试验板的线都插好,如图所示:接下来,我们得安装仿真器软件Keil,

4、用户可以在配带的软件光盘“仿真器 配套软件及编译器”目录下找到,Keil中有三个文件夹,进入“Keil主程序”运行S etup.exe文件进行安装,无需特别的参数设置,按其默认值确认即可,具体安装 方法可看目录下的说明文件。安装完成之后,点击开始菜单程序”中的“Keil uV ision2”。进入软件界面,如图所示:潢讷1旬E文件做瑾皿皑 口理由*试册的役命IZH SVC5世琦口 佛助我们在“工程”菜单中执行“新建”命令,新建工程文件名取为“project.uv2”。接下 来是选择我们要做实验使用的CPU类型,我们在此使用市面上最为常见的Ate ml公司的AT89C51型号,选好,点击确定即可

5、,这时我们的工程向导已经做完, 下一步我们将编写源程序代码,即2个数码管显示数字“2”所需要的程序代码。 我们执行“新建”操作,在弹出的文本编缉框内键入以下代码:LOOP:CLR p2.0CLR p2.1;选中左边两个数码管SETB p2.2SETB p2.3;不选中右边两个数码管SETB P0.7SETB P0.5CLR P0.1SETB P0.2CLR P0.3CLR P0.4CLR P0.6CLR P0.0AJMP LOOPEND如图所示在这个程序里,我们使用的是汇编最基本的指令SETB和CLR,用来将指定的 单片机端口分别置为高电平或低电平。第2、3行语句的作用是用来选中试验板 上左边

6、两个数码管,使其显示;第4、5行语句的作用则是不选中右边两个数码 管,即关闭其显示。使用者也可以自行选择用哪个数码管来显示,只要将相应的 控制口使用CLR指令置为低电平即可。程序第6行开始,则是控制数字数形, 可以从前文介绍的“7段数码管的段排列和内结构图”中分析得出数字形状。程序 代码录入完毕,下面我们得保存我们已经编好的程序,即执行“文件”菜单中的“另 存为命令,文件名我们在此取为shumaguan.asm。注意.asm是汇编语言的扩展 名,如果使用C语言编写的话,则扩展名应是.c。OK,现在我们已经保存好了这个文件。还记得吗,我们刚才新建了一个叫“proj ect的工程,而shumagu

7、an.asm文件应该是我们project这个工程的其中一份子, 换句话说,我们还应该把这个shumaguan.asm文件添加到project这个工程当中 去。具体操作如下,点击屏幕左侧的Target1字样旁边的“+”图标,则会弹出一个 子项,名为“Source Group 1”,在其上面单击鼠标右键,选择“增加文件到组So urce Group 1”这项,把我们刚才保好的shumaguan.asm加进去。如图所示:接下来,我们要为源程序做一项编译工作,即产生目标文件,等会我们要把该文 件烧入到我们的AT89C51单片机芯片中去。在执行编译之前,我们需要进行一 些设置,右击“Target 1”,

8、在弹出菜单中选择“目标Target 1属性”选项,进入弹 出菜单中的“输出”页,页面中有一项为“生成HEX文件”,我们在其选择框内打 上勾,然后,点击确定完成设置。现在,我们只要按一下快捷键F7,就可以完 成编译工作了,这时,你会在shumaguan.asm文件所在目录下发现一个名为“pro ject.hex ”的文件,这就是我们所用来完成烧写芯片工作时使用到的目标程序文件, 该文件为16进制文件。编程编完了,我们自然要使用仿真器来验证一下程序有否正确,但在使用仿真器 之前,我们还需要手动设置一些相关参数,同样是在“目标Target 1属性”选项, 进入“目标”页面,将晶振频率设置为11.05

9、92M,因为我们的仿真器使用的频率 值为11.0592M,如图所示:进入“调试”页,选择使用“Keil Monitor-51 Driver”硬件仿真器,点击其后边的“设 置”按钮,进行仿真器的串口通讯设置,如果你的仿真器串口线插在计算机的C OM1 口上,则我们在此选择为“COM1”,因为笔者使用时是插在COM2 口上, 所以在此我们选择“COM2”,将波特率设置为“38400”,点击确定后,我们在“启 动时加载程序”的复选框打个勾,页面内的“恢复调试设置”安需选择即可,我们在此将断点”、工具栏”、存储器显示这几项打上勾。详细的设置,请如图所 示:现在我们已经将所有的设置都完成了,下面就让我们

10、来看看我们的成果吧。首先, 点击Keil软件惆试噤单中的开始/停止调试”项,或者也可以按键盘快捷键Ct rl+F5如屏幕左下角出现如图所示的样子,则表示仿真器连接成功,“Monitor 51 V3.4,是软件版本号。Connected to Monitor-51 V3.Load -IC:WDqcuicients enJ SttingsWhtficsl*黑面proxmyASM AS弱QN BreakUisflble BT&akEnable BreakKiU BrkList SreskSet Br&flkcess COVERAGE DEFINE DIF然后,再选择惆试喋单中的运行到”按钮,或使用键

11、盘快捷键F5,这地仿真器 才真正地起到仿真的作用了,你会发现我们的试验板左上角两个数码管正确地显 示出“2字,这正是我们所想要得到的结果。如图所示:至此,我们已经完成了程序调试工作及硬件的仿真。完了之后,我们还需要做一 件事,就是断开连接,如我们在生活中打完电话一定要挂机一样,断开连接的操 作非常简单,首先,按一下仿真器硬件电路板上的一个复位按钮(见仿真器图片 中左上角那个按钮)。然后在开始/停止调试按钮,即我们刚才用来连接时按 的那个按钮。至此,仿真工作全部结束。从上面的程序,我们会发现这个程序看上去比较繁琐。呵呵,其实可以发现P0 口的一排数字其实就是二进制的数字。我们把它转换为16进制,

12、得出下表,直 接送到P0 口就行啦。注意0为点亮1为灭显示数字p0.7p0.6p0.5p0.4p0.3p0.2p0.1p0.016进制代码011000000C0H111111001F9H210100100A4H310110000B0H41001100199H51001001092H61000001082H711111000F8H81000000080H91001000090H我们把他从高往低排列为二进制,例如2,就是10100100,用计算器转换为16 进制就是A4.我们在单片机里为了把16进制和10进制有所区别,就把16进制 后面跟一个H,同时如果首位为字母的为了区别于指令,同时前面跟一个0

13、,就 成了 0A4H 了。您可能有一点疑问,为啥P0.7始终为1呢。这是因为它接在小 数点上。我们没有用它而已。现在我们再修改一下刚才的程序,就会发现现在的 程序简洁多了,而且看上去更直观。还是显示一个数字“2的程序:LOOP:CLR p2.0CLR p2.1;选中左边两个数码管SETB p2.2SETB p2.3;不选中右边两个数码管MOV P0,#0A4H; 将 10100100 送 P0 口AJMP LOOPEND我们可以看到显示的结果是一样的。这次,我们只用了“MOV P0,#0A4H,一句 话,就控制了输出的字形,上述程序为输出数字“2”,如果我们要显示数字“3”, 则只要将“MOV

14、 P0,#0A4H”该语句改为“MOV P0,#0B0H”即可。:)是不是觉得 非常简单噢。试验板一共用了 4个数码管,它们的位选为P2.0 P2.1 P2.2 P2.3 一共可以显示 四位数字,甚至我们可以直接用它来做一个显示仪表,或者闹钟了。它的0,1,2, 3,4,5,6,7,8,9的代码分别如上表所示。数码管的另一种显示控制方式动态扫描显示接口。|它是单片机中应用最为广 泛的显示方式之一。其接口电路是把所有数码管的所有笔划段同名端连在一起, 而每一个数码管的公共极是各自独立地受I/O线控制,如我们试验板原理图中的 S1、S2、S3、S4就是控制线。单片机向字段输出口送出字形码时,所有的

15、数码 管接收到相同的字形码,但究竟是哪个数码管亮,则取决于公共端,而这一端是 由I/O控制的,所以我们就可以自行决定何时显示哪一位了。而所谓动态扫描就 是指我们采用分时的方法,轮流控制各个数码管的公共端,使各个数码管轮流点 亮。轮流点亮扫描过程中,每位数码管的点亮时间是极为短暂的(约1ms),但由于 人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点 亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪 烁感。以下为使用动态扫描法使51试验板显示数字“8051”的程序loop:mov p0,#0ffh;关显示mov p2,#0ffh;关显示clr p2.0

16、 ;选中第一个数码管mov p0,#80h ;数码管显示8Icall delay;调用延时mov p0,#0ffhmov p2,#0ffhclr p2.1;选中第二个数码管mov p0,#0c0h;数码管显示0lcall delaymov p2,#0ffhmov p0,#0ffhclr p2.2;选中第三个数码管mov p0,#92h;数码管显示5lcall delaymov p0,#0ffhmov p2,#0ffhclr p2.3;选中第四个数码管mov p0,#0f9h;数码管显示1lcall delayajmp loop;程序条转到第一步,反复执行delay:;延时子程序mov r6,#

17、250d1:djnz r6,d1retend读者可以将其直接粘到Keil程序编缉器中仿真执行,编译后烧到芯片中去,看 一下数字显示的效果,简单吧:)咱们继续讲,我们现在已经完成了软件程序的编制及仿真工作,下面我们就来讲 一讲,咱们的最后一道工序,|即程序定形后,我们如何将其烧到我们的单片机芯| 片中去。我们以现在Atmel公司最新的AT89C51芯片来讲。首先,我们将串口线从仿真器上拔下,然后插在51编程器上,同时插上USB线, 如图所示:将光盘上的“A51经济型编程器软件”文件夹全部复制到你的电脑硬盘上,并将其 目录下的所有文件的“只读”属性去掉,具体操作,全选所有文件,在文件属性中 将其“

18、只读”项前面复选框内的勾去掉即可。现在,我们打开“编程器.exe”,进入 程序界面,同样编程器在第一次使用前也需要手动设置一些参数,进入“设置” 项,根据你编程器所插的COM 口号,设置好COM 口序号,波特率设置为:28 800,图中笔者所插的COM 口为COM2,将界面左上角的芯片类型设为AT89C 51,详细设置如图所示:现在该设置的都已经设置完了,下面我们就需要将要烧写的程序文件调进来,执 行“打开文件操作”,找到刚才我们刚才已经准备好的project.hex文件,选中打开 即可。然后,我们插在要烧写的AT89C51芯片,如图所示:首先,我们执行一下“擦除器件”操作,差不多1秒钟即可完

19、成芯片的擦除工作, 速度很快。好了,现在已经到最后一步了,用鼠标点一下写器件”按钮吧,OK, 大功告成。至此,我们已经完成了从软件编写,仿真,直到烧写芯片的全部步骤。 一定很辛苦了吧:)下面就让我们来看看我们的成果吧,把刚才烧写好的AT89 C51芯片插在试验板上,并接上USB线,来看看板上的两个数码管是不是显示 数字“2”。现在我们已经脱离了我们的仿真器而使用的是单片机芯片。到这里,相信你一定对数码管的工作原理及应用有所理解了吧,我们介绍了数码 管的静态、动态使用方法,掌握了这两种方法,你就可以根据你自己的意愿及要 求来编写各种各样的数字显示的应用程序了,如时钟,秒表,频率计的制作等等, 可以充分发挥你的想象达到你所需要的各种显示效果。

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号