×
单片机 > 单片机程序设计 > 详情

单片机学习之八:用数码管显示数字

发布时间:2020-05-29 发布时间:
|
一、 实验现象

   让最右面的数码管显示数字2,小数点也显示。

 

二、 实验目的
   掌握让数码管显示所需要的数字时,各I/O口的赋值方法

 

三、 实验任务分析
    前面的试验我们都是选择发光二极管作为显示单元,这个试验我们要用数码管作为显示单元,这时,应该把JMP0跳线置于2、3位置,选择数码管显示。
    现在我们来看看电路的连接形式吧,如下图所示。
      从电路图上可以看到,p0口输出的是数码管的段码,控制数码管显示的数字是什么,而p2口输出的是位码,控制选通那个数码管显示。
       那么如果要数码管显示2,p0口和p2口应该输出什么呢?现在我们来分析一下数码管的发光原理。
        数码管实质是几个条形的发光二极管构成,有两种连接方式,分别为共阴极和共阳极连接。如下图所示:
                                        
    从图上我们可以看到,对于共阳极连接的数码管,要让它正常显示,则应该com口接电源,相应的字段是输出低电平驱动。而对于共阴极连接的数码管,则com应该接地,相应的字段输出高电平驱动。
     由于该学习板采用的共阳极数码管,所以欲最右面的S0显示数字,则P2.0应该输出高电平,使得S0的com端接高电平,选通S0显示;要它显示2,并且小数点也要显示,则a,b,g,e,d,dp字段输出低电平,其余字段输出高电平即可。
      同时,由于P0口和各字段对应关系是:P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0~d dp e c g b f a,所以我们应该给P0口赋值12h,然后让P2.0输出高电平即可。 
四、实验程序如下:
org 0000h;
start:  clr p1.5
      mov a,#012h  ;显示数字2和外加小数点时,对应的8段码
      mov p0,a     ;把8段码送到P0口
      mov P2,#01H ;选通最右面的数码管显示
      ljmp start
      end

 

五、为方便查阅,各种数字显示对应P0口的内容如下表所示:
                              

关键字:单片机  数码管  显示数字

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
浅谈AVR中定时器几种工作模式