MOV
R3,#0FFH R3 A,R3
;顺序码初始化
KEYIN2: INC
MOV
MOVC A,@A+DPTR CJNE A,B,KEYIN3 MOV RET
;未完,再查
;已查完,未找到,以未按键处理
;特征码表
A,R3
;找到,取顺序码
KEYIN3: CJNE A,#0FFH,KEYIN2
RET
KEYCOD: DB
DB DB DB
0E7H,0EBH,0EDH,0EEH
0D7H,0DBH,0DDH,0DEH 0B7H,0BBH,0BDH,0BEH 77H,7BH,7DH,7EH
7. 答:(1)编程扫描方式:当单片机空闲时,才调用键盘扫描子程序,反复的扫描键盘,等待用户从键盘上输入命令或数据,来响应键盘的输入请求。(2)定时扫描工作方式:单片机对键盘的扫描也可用定时扫描方式,即每隔一定的时间对键盘扫描一次。(3)中断工作方式:只有在键盘有键按下时,才执行键盘扫描程序并执行该按键功能程序,如果无键按下,单片机将不理睬键盘。
8. 答:DB0-DB7:数据线,单向传输,由单片机输入给打印机。STB(STROBE):数据选通信号。在该信号的上升沿,数据线上的8位并行数据被打印机读入机内锁存。BUSY:打印机忙状态信号。当该信号有效(高电平)时,表示打印机正忙于处理数据。此时,单片机不得使STB信号有效,向打印机送入新的数据。ACK:打印机的应答信号。低电平有效,表明打印机已取走数据线上的数据。ERR:出错信号。当送入打印机的命令格
式出错时,打印机立即打印1行出错信息,提示出错。在打印出错信息之前。该信号线出现一个负脉冲,脉冲宽度为30us。
单片机与打印机相连时,分为直接相连(图10-27)和通过扩展的并行I/O口82C55连接(图10-28)。直接相连时(图10-27),打印机在输入电路中有锁存器,在输出电路中有三态门控制,。没有读、写信号,只有握手线STB、BUSY(或ACK),用一根地址线来控制写选通信号STB和读取BUSY引脚状态。图10-28所示为通过扩展的并行I/O口82C55连接的打印机接口电路。采用查询法,即通过读与82C55的PC0脚的相连的BUSY状态,来判断送给打印机的一个字节的数据是否处理完毕。也可用中断法(BUSY直接与单片机的INT0引脚相连)。
9.答:本程序采用外部中断来进行数据打印,先打印一个数据,当BUSY线从高电平变成低电平时,在打印下一个数据
ORG 0000H
LJMP MAIN ORG LJMP IN ORG
0030H
;允许外部中断
0003H
MAIN:
SETB EX0 SETB IT0 SETB EA MOV MOV
R0,#7FH A,#81H
;控制口地址
;控制字
MOVX @R0,A MOV
R1,#20H
;数据区首地址
MOV MOV MOV
R2,#19 A,@R1
;计数器 ;打印内容 ;A口地址
R0,#7CH
MOVX @R0,A MOV R0,#7FH MOV
A,#0EH
MOVX @RO,A
MOV
A,#0FH
MOVX @R0,A
SJMP $ IN:
DJNZ R2,EX INC
R1
MOV
A,@R1 MOV
R0,#7CH
MOVX @R0,A MOV R0,#7FH MOV
A,#0EH
MOVX @RO,A MOV
A,#0FH
MOVX @R0,A EX:
RETI
;PC7=0
;PC7=1
;20个数据都结束了吗?
;指向下一个数据
第11章 AT89S51单片机与D/A转换器、A/D转换器的接口
参考答案
1.答:由运算放大器构成的I/V转换电路 2.答:同步
3.答:(1)错,D/A转换器也要考虑“转换速度”或“转换时间”问题,即建立时间(转换时间);(2)对;(3)错,是D/A转换器的分辨率;(4)对。
4. 答:D/A转换器的主要技术指标如下:
分辨率:D/A转换器的分辨率指输入的单位数字量变化引起的模拟量输出的变化,是对输入量变化敏感程度的描述。
建立时间:建立时间是描述D/A转换速度快慢的一个参数,用于表明转换速度。其值为从输入数字量到输出达到终位误差±(1/2)GB(最低有效位)时所需的时间。
转换精度:理想情况下,精度与分辨率基本一致,位数越多精度越高。严格讲精度与分辨率并不完全一致。只要位数相同,分辨率则相同.但相同位数的不同转换器精度会有所不同。
当DAC为二进制12位,满量程输出电压为5V时,分辨率为1.22 mV
5. 答:A/D转换器的两个最重要指标:(1) 转换时间和转换速率--转换时间A/D完成一次转换所需要的时间。转换时间的倒数为转换速率。(2) 分辨率--A/D转换器的分辨率习惯上用输出二进制位数或BCD码位数表示。
6. 答:量化误差是由于有限位数字且对模拟量进行量化而引起的;最大的量化误差为0.195%;
7. 答:目前应用较广泛的主要有以下几种类型:逐次逼近式转换器、双积分式转换器、∑-△式A/D转换器。逐次逼近型A/D转换器:在精度、速度和价格上都适中,是最常用的A/D转换器件。双积分A/D转换器:具有精度高、抗干扰性好、价格低廉等优点,