多位数码管动态显示的实验

多位数码管动态显示的实验

ID:14691548

大小:186.00 KB

页数:17页

时间:2018-07-29

多位数码管动态显示的实验_第1页
多位数码管动态显示的实验_第2页
多位数码管动态显示的实验_第3页
多位数码管动态显示的实验_第4页
多位数码管动态显示的实验_第5页
资源描述:

《多位数码管动态显示的实验》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、【006】多位数码管动态显示 [51] 实验目的:数码管动态显示多位数字。实验参考:笨笨工作室实验五、多位数码动态显示。(查看原文)实验板:FB51A(查看)。该实验用到实验板的资源电路图如下:其中P0口是段码,低电平有效。P2口是位码,高电平有效。P2.0口控制第1个数码管,一直到P2.7口控制第8个。该板的段码表如下:    各个数码管的段码都是p0口的输出,即各个数码管输入的段码都是一样的,为了使其分别显示不同的数字,可采用动态显示的方式,即先只让最低位显示0(含点),经过一段延时,再只让次低位显示1,如此类推。由视觉暂留,只要我们的延时时间足够短,就能够使得数码的显示看起来非常的

2、稳定清楚。过程如下图。            采用上述方法思路编写如下:      org  0000hstart:mov  a,#08h      ;0   ;段码      mov  p0,a      mov  p2,#01h           ;位码      lcalldelay_1ms      mov  a,#0abh     ;1          mov  p0,a      mov  p2,#02h      lcalldelay_1ms      mov  a,#12h      ;2      mov  p0,a      mov  p2,#04h      l

3、calldelay_1ms      mov  a,#22h      ;3      mov  p0,a      mov  p2,#08h      lcalldelay_1ms      mov  a,#0a1h     ;4      mov  p0,a      mov  p2,#10h      lcalldelay_1ms      mov  a,#24h      ;5      mov  p0,a      mov  p2,#20h      lcalldelay_1ms      mov  a,#04h      ;6      mov  p0,a      mov 

4、 p2,#40h      lcalldelay_1ms;     mov  a,#0aah     ;7;     mov  p0,a      mov  p0,#0aah    ;感觉用这句和上面两句实现一样,可能这种习惯以后会有用吧      mov  p2,#80h      lcalldelay_1ms      ljmp startdelay_1ms:mov r6,#2temp:     mov r5,#0ffh          djnzr5,$          djnzr6,temp          retend下载到板上得到测结果为从低到高八位分别显示0到7(含点)

5、。★上述方法逐次给P0或者P2赋值,一方面程序的复杂程度增加,另外一方面会使得程序的灵活性降低。如果要改变显示的数字,程序改动起来很麻烦。 所以要用51单片机中常用的一种方法:查表法。例如P0口输出段码时,我们可以把要显示的段码放在一个表格中,然后每次从这个表格里面取数,送到P0口即可。P2口输出位码时,可以把要用的位码放在另一个表格里,每次从此表中取数,送入P2口。这样,如果要改变显示的数字,只需要改变表格里面的数。      org  0000hstart:mov  r7,#0ffh    ;r7,r6查表时送入变址寄存器a(因自加1后为0,所以预置ffh)      mov  r6

6、,#0ffhloop: lcallplay1       ;调用显示段码子程序      lcallplay2       ;调用显示位码子程序      lcalldelay_1ms      cjne a,#80h,loop ;判断是否到了最左边的数,即第8个位码      ajmp startplay1:                   ;查表求段码子程序             ;     mov  a,r7          ;     inc  a;     mov  r7,a      inc  r7          ;这2句和上面三条语句实现功能相同      mo

7、v  a,r7        ;a在这里做变址寄存器      mov  dptr,#table1;表首址送dptr,dptr做基址寄存器      movc a,@a+dptr   ;基址寄存器加变址寄存器寻址      mov  p0,a      retplay2:                   ;查表求位码子程序(原理同play1)      mov  a,r6                   inc  a    

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。