八段数码管显示实验_第1页
八段数码管显示实验_第2页
八段数码管显示实验_第3页
八段数码管显示实验_第4页
八段数码管显示实验_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一 八段数码管显示实验一、实验目的:1、了解数码管动态显示的原理。2、了解74LS164扩展端口的方法。二、实验要求:利用实验仪提供的显示电路,动态显示一行数据。三、实验电路:这里只是显示草图,详细原理参见第一章的 “8155键显模块”。 四、实验说明:1、本实验仪提供了8段码数码管LED显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控制。显示共有6位,采用动态方式显示。8段数码管是由8155的PB0、PB1经74LS164“串转并”后输出得到。6位位码由8155的PA0口输出,经uA2003反向驱动后,选择相应显示位。74LS164是串行输入并行输出转换电路,串行输入的数据位

2、由8155的PB0控制,时钟位由8155的PB1控制输出。写程序时,只要向数据位地址输出数据,然后向时钟位地址输出一高一低两个电平就可以将数据位移到74LS164中,向显示位选通地址输出高电平就可以点亮相应的显示位。本实验仪中数据位输出地址为0e102H,时钟位输出地址为0e102H,位选通输出地址为 0e101H。本实验涉及到了8155 I0/RAM扩展芯片的工作原理以及74LS164器件的工作原理。 a f b g e c d 。dp2、七段数码管的字型代码表如下表:显示字形gfedcba段码001111113fh1000011006h210110115bh310011114fh41100

3、11066h511011016dh611111017dh7000011107h811111117fh911011116fhA111011177hB11111007chC011100139hD10111105ehE111100179hF111000171h是返回否开始初始化显示参数关所有位显示取显示数据数据移位输出到164输出时钟脉冲到164 8段码完成输出位选通信号延时位选通信号移位指向下一个显示数据6位完成否五、程序框图: 是六、实验步骤:1、将KEIL仿真器上40芯排线一端和实验箱上51CPU板上的40芯排针连接起来,将仿真器连接的USB或串口线与PC机对应的USB或串口连接起来,打开实验

4、箱电源。2、进入KEIL软件界面,点击项目/打开项目在C:KEILUV2次1配套实验例程中选择实验一,内有ASM和C51两种程序,进入ASM文件夹打开LED项目文件进入如图所示界面点击“调试/启动/停止调试”,进入调试界面,点击“调试/运行”可看到8段数码管交替显示0F七、实验程序: OUTBIT equ 0e101h ; 位控制口CLK164 equ 0e102h ; 段控制口(接164时钟位)DAT164 equ 0e102h ; 段控制口(接164数据位)IN equ 0e103h ; 键盘读入口LEDBuf equ 60h ; 显示缓冲Num equ 70h ; 显示的数据DelayT

5、 equ 75h ; org 0000h ljmp StartLEDMAP: ; 八段管显示码 db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71hDelay: ; 延时子程序 mov r7, #0DelayLoop: djnz r7, DelayLoop djnz r6, DelayLoop retDisplayLED: mov r0, #LEDBuf mov r1, #6 ; 共6个八段管 mov r2, #00100000b ; 从左边开始显示Loop: mov dptr,

6、#OUTBIT mov a, #00h movx dptr, a ; 关所有八段管 mov a, r0 mov B, #8 ; 送164DLP: rlc a mov r3, a mov acc.0, c ANL A, #0FDH mov dptr, #DAT164 movx dptr, a mov dptr, #CLK164 orl a,#02h movx dptr, a anl a,#0fDh movx dptr, a mov a, r3 djnz B, DLP mov dptr, #OUTBIT mov a, r2 movx dptr, a ; 显示一位八段管 mov r6, #1 cal

7、l Delay mov a, r2 ; 显示下一位 rr a mov r2, a inc r0 djnz r1, Loop mov dptr, #OUTBIT mov a, #0 movx dptr, a ; 关所有八段管 retStart: mov dptr,#0e100h mov a,#03h movx dptr,a mov sp, #40h mov Num, #0MLoop: inc Num mov a, Num mov b, a mov r0, #LEDBufFillBuf: mov a, b anl a, #0fh mov dptr, #LEDMap movc a, a+dptr ; 数字转换成显示码 mov r0,a ; 显示在码填入显示缓冲 inc r0 inc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论