文档详情

微机接口技术11.ppt

发布:2017-06-19约字共125页下载文档
文本预览下载声明
单个数码管的显示 LEDtb db 3fh,06h,5bh,…… ;显示代码表 …… mov al,1 ;AL←要显示的数字 mov bx,offset LEDtb xlat ;换码:AL←DS:[BX+AL] mov dx,port out dx,al ;输出显示 软件译码 3. 多个LED数码管的显示 8个数码管:用2个8位输出端口控制 硬件上用公用的驱动电路来驱动各数码管 软件上用扫描方法实现数码显示 位控制端口电路 D7 D6 D5 D4 D3 D2 D1 D0 阳极 位0 位1 位2 D0~D7 位控制 反 相 寄 存 驱 动 bitport, IOW 位控制端口作用 控制哪个(位)数码管显示 当位控制端口的控制码某位为低电平时,经反相驱动,便在相应数码管的阳极加上了高电平,这个数码管就可以显示数据 位控制:Di=0,相应位发光 D7 D6 D5 D4 D3 D2 D1 D0 位7 位6 位5 位4 位3 位2 位1 位0 段控制端口电路 D0 D1 D2 D3 D4 D5 D6 D7 阳极 位0 a b c d e f g h 位1 位2 … … D0~D7 段控制 正 相 寄 存 驱 动 segport, IOW 段控制端口作用 控制哪个段显示,决定具体显示什么数码 段控制端口送出显示代码到数码管相应段 此端口由8个数码管共用 段控制:Di=0,相应段发光 D7 D6 D5 D4 D3 D2 D1 D0 h g f e d c b a 通过位、段控制端口的共同作用 才能确定哪个数码管显示什么数码 数码缓冲区 ;数据段 LEDdt db 8 dup(0) ;数码缓冲区 ;主程序 mov si,offset LEDdt call LEDdisp ;调用显示子程序 例11.5 获取显示代码 LEDdisp proc push ax push bx push dx mov bx,offset LEDtb mov ah,0feh ;指向最左边数码管 LED1: lodsb ;取出要显示的数字 xlat cs:LEDtb ;得到显示代码:AL←CS:[BX+AL] 例11.5 数码显示 mov dx,segport ;segport为段控制端口 out dx,al ;送出段码 mov al,ah ;取出位显示代码 mov dx,bitport ;bitport为位控制端口 out dx,al ;送出位码 call delay ;实现数码管延时显示 例11.5 显示下位数码 rol ah,1 ;指向下一个数码管 cmp ah,0feh ;最右边的数码管? jnz LED1 ;显示下一个数字 pop dx pop bx pop ax ret ;8位数码管都显示 LEDtb db 0c0h,0f9h, …… LEDdisp endp 例11.5 软件延时 timer = 10 ;延时常量 delay proc push bx push cx mov bx,timer ;外循环:timer确定的次数 delay1: xor cx,cx delay2: loop delay2 ;内循环:216次循环 例11.5 软件延时 dec bx jnz delay1 pop cx pop bx ret delay endp 例11.5 通过控制重复频率和延时时间 就可以得到各种显示效果 实验7 LED数码管显示实验 请认真阅读教材中8位数码管显示子程序 延时子程序可以采用软件延时程序 延时子程序建议采用实时时钟的硬件延时,它更精确,也便于控制时间 提示 11.5 并行打印机接口 一般采用Centronics标准接口或其简化接口 Centronics接口是的一个并行接口协议 这个协议规定了36脚簧式插头座和信号含义 其中前11条线是关键信号,他们是8条数据线、3条联络线(选通、响应和打印机忙) 还有一些特殊控制线、状态线 PC系列机的并行打印机接口是一个25针插口 1. 控制打印机的输出信号 SLCTIN*选择输入——相当于打印机选中信号 INIT*初始化——使打印机被复位成初始状态 AUTOFEEDXT*自动走纸——使打印机打印后自动走纸一行 STROBE*选通——用于使打印机接收数据的选通信号。负脉冲的宽度在接收端应大于0.5?s,数据才可靠地存入打印机数据缓冲区 2. 反映打印机状态的输入信号 BUSY忙——表示打印机不能接收数据 ACK*响应——打印机接收一个数据字节后就回送一个响应的负脉冲信号(脉宽约为5?s),表示打印机已准备好接收新数据 PE纸用完——说
显示全部
相似文档