实验一七段数码管实验.doc.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一七段数码管实验.doc

实验一 七段数码管实验 一、实验目的 1.掌握数码管显示数字的原理及编程方法。 2.进一步掌握8255工作方式0的应用。 二、实验内容 1.数码管电路的工作原理 实验台上有两个共阴极数码管,两个数码管的同名阳极段已经复接。数码管的阳极段接高电平时相应段显示,当一个字形编码写入数码管的段码驱动输入端后,两个数码管都有可能显示相同的字形,可以将位码驱动输入端S1或S2接+5V选中显示,接地关闭显示。 2.静态显示 硬件原理图如图1-9,将8255 的A 口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接十5V(选中), S0 、dp接地(关闭)。编程从键盘输入一位十进制数字(0~9),在数码管S1上显示出来。 图1-9 静态显示电路 图1-10 动态显示电路 3.动态显示 硬件电路图如图1-10,七段数码管段码连接不变,位码驱动输入端S1、S0接8255C口的PC1、PC0。编程实现在两个数码管上循环显示00~99。 4.编程提示 (1) 实验台上的七段数码管为共阴极,段码采用同相驱动,输入端加高电平,选择中的数码管亮,位码加反相驱动器,位码输入端高电平选中。 (2)七段数码管的字型代码表如下表1-1。 表1-1 显示 字型 g f e d c b a 段 码 0 0 1 1 1 1 1 1 3FH 1 0 0 0 0 1 1 0 06H 2 1 0 1 1 0 1 1 5BH 3 1 0 0 1 1 1 1 4FH 4 1 1 0 0 1 1 0 66H 5 1 1 1 1 1 0 1 6DH 6 1 1 1 1 1 0 1 7DH 7 0 0 0 0 1 1 1 07H 8 1 1 1 1 1 1 1 7FH 9 1 1 0 1 1 1 1 6FH (3) 程序框图 程序框图见1-11。 (A)静态显示程序框图 (B)动态显示程序框图 图1-11 5.参考程序 程序清单1:LED1.ASM DATA SEGMENT LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH MES1 DB 0DH,0AH,”Input a num(0-9):”,0DH,0AH,”$” DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START?: MOV AX,DATA MOV DS,AX MOV DX,28BH ;设置8255的A口为输出方式 MOV AX,80H OUT DX,AL SSS:MOV DX,OFFSET MES1 ;显示提示信息 MOV AH,09H INT 21H MOV AH,01H ;从键盘接收字符 INT 21H CMP AL,“0” ;是否小于0 JL EXIT ;如果是则退出 CMP AL,“9” ;是否大于9 JG EXIT ;若是则退出 SUB AL,30H ;求出ASCII码所对应的数字字符 MOV BX,OFFSET LED ;BX指向段码表的起始地址 XLAT ;求出所对应的段码 MOV DX,288H元 ;从8255的A口输出 OUT DX,AL JMP SSS EXIT:MOV AX,4CH ;返回DOS INT 21H CODE ENDS END START 程序清单2:LED2.ASM DATA SEGMENT LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH BUFFER1 DB 0,0; BA DW ?; DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV

文档评论(0)

75986597 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档