单片机原理及其应用_第1页
单片机原理及其应用_第2页
单片机原理及其应用_第3页
单片机原理及其应用_第4页
单片机原理及其应用_第5页
已阅读5页,还剩105页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机原理及其应用扬州大学1第8章 51单片机的接口技术8.1 显示器及其接口8.2 键盘接口8.3 d/a转换器及其接口8.4 a/d转换器及其接口8.5 打印机接口*8.6 拨码盘及语音接口*单片机原理及其应用扬州大学28.3 d/a转换器及其接口8.4 a/d转换器及其接口单片机和被控实体间的接口示意图 单片机原理及其应用扬州大学38.3 d/a转换器及其接口8.3.1 d/a转换器8.3.2 51单片机和d/a的接口单片机原理及其应用扬州大学48.3.1 d/a转换器图8-3-1 最简单d/a转换器框图vref单片机原理及其应用扬州大学5关系式:vout=bvr式中,vr为常量,由参考

2、电压vref决定;b为数字量,常为一个二进制数。b的位数通常为8位和12位等,由d/a转换器芯片型号决定。 b为n位时的通式为: b=bn-1bn-2b1b0 =bn-12n-1+bn-22n-2+b121+ b020式中,bn-1为b的最高位;b0为最低位。单片机原理及其应用扬州大学61d/a转换器的原理d/a转换器的原理: 把输入数字量中每位都按其权值分别转换成模拟量,并通过运算放大器求和相加(如图8-3-2所示)。单片机原理及其应用扬州大学7图8-3-2 t型电阻网络型d/a转换器根据克希荷夫定律,如下关系成立:i0=1/2i1 i1=1/2i2 i2=1/2 i3 i3=vref/2r

3、b)b2b2b2b2)bbbb(bbbbir2v00112233r2v02112121221321rv0r2v1r2v2r2v3r2v1out4ref4ref4322ref4ref3ref2refref(单片机原理及其应用扬州大学8n位d/a转换器b2vbrr2vriv4reff4reffrfoutnn2 -11=(1)222refoutrefrefnnvvbvv 8位d/a,b=0, vout=0v; b=255, vout=-(255/256)*5=-4.98v单片机原理及其应用扬州大学9d/a转换器的输出形式l 电压输出l 电流输出,输出加运放将电流转为电压。d/a转换器的接口形式l 并

4、行,总线接口l 串行,i2c, spi, 串口d/a转换器的输入锁存(并行接口)l无锁存器 不能与p0直接相连。l有锁存器 能与p0直接相连。单片机原理及其应用扬州大学102d/a转换器的性能指标l 分辨率: 分辨率是指d/a转换器的单位数字量引起的模拟量输出的变化。一般定义为:输出模拟量满度值与2n的比值。例如: 8位d/a, 输出满度是5v,分辨率为5/28=19.5mv l 转换精度: 转换精度指满度校准时,在全量程内,dac的实际模拟输出值与理论值的最大相对误差。 l 线性度: 线性度是指dac的实际转换特性曲线和理想直线之间的最大偏移误差。l 建立时间 :建立时间是数据变化满刻度时,

5、输出达到终值(1/2)lsb所需的时间。单片机原理及其应用扬州大学113dac0832l dac0832内部结构 dac0832内部由三部分电路组成(图8-3-3)。 “8位输入寄存器”、“8位dac寄存器”、“8位d/a转换电路”由8位t型电阻网络和电子开关组成。 图8-3-3 dac0832原理框图单片机原理及其应用扬州大学12l引脚功能 dac0832共有20条引脚,双列直插式封装。(1)数字量输入线di7di0(8条);(2)控制线(5条);(3)输出线(3条); (4)电源和地线(4条)。图8-3-4 dac0832原理框图单片机原理及其应用扬州大学13第一级寄存器选通: ile=1

6、, ce=0, wr1=0第二级寄存器选通: wr2=0, xfer=0单片机原理及其应用扬州大学148.3.2 51单片机和d/a的接口1dac的应用l dac用作单极性电压输出l dac用作双极性电压输出(图8-3-5、表8-3-1) l dac用作程控放大器(图8-3-6 )b256vvrefout单片机原理及其应用扬州大学15图8-3-5 双极性dac的接法 1(2)2()256(128)128outoutrefrefrefrefvvvvbvvb 单片机原理及其应用扬州大学16输入数字量bb7 b6 b5 b4 b3 b2 b1 b0vout(理想值)+vref时-vref时1 1 1

7、 1 1 1 1 1|vref|-lsb-|vref|+lsb1 1 0 0 0 0 0 0|vref|/2-|vref|/21 0 0 0 0 0 0 0000 1 1 1 1 1 1 1-lsblsb0 0 1 1 1 1 1 1-|vref|/2-lsb|vref|/2+lsb0 0 0 0 0 0 0 0-|vref|vref|表8-3-1 双极性输出电压与输入数字量的关系单片机原理及其应用扬州大学170iirvir256vbr256vbi1outrfbfbinrfboutref1out图8-3-6用dac0832作程控放大器)rr(vb256256rrbvbvfbinfbinout2

8、单片机原理及其应用扬州大学18vinbb单片机原理及其应用扬州大学19251单片机与8位dac的接口 51单片机和dac0832接口时,有三种连接方式: 直通方式 单缓冲方式(如图8-3-7所示) 双缓冲方式 (如图8-3-9所示)单片机原理及其应用扬州大学20图8-3-7 单缓冲方式下的dac0832mov a, #80hmov r0, #0fehmovx r0,a+5v单片机原理及其应用扬州大学21图8-3-8 dac产生波形 vref=5v单片机原理及其应用扬州大学22锯齿波org0000hstart:movr0,#0fehclraloop:movxr0, aincasjmploopen

9、d单片机原理及其应用扬州大学23三角波org0000hstart:movr0,#0fehclradown:movxr0, aincajnzdown up:decamovxr0, ajnzupsjmpdownend单片机原理及其应用扬州大学24矩形波org0000hstart:movr0, #0fehloop:mova, #33hmovxr0, aacalldelay1mova, #0ffhmovxr0, aacalldelay2sjmploopend单片机原理及其应用扬州大学25图8-3-9 8031和两片dac0832的接口(双缓冲方式)fdhfdh:1 1# #dac0832dac0832

10、输入寄存器地址输入寄存器地址fehfeh:2 2# #dac0832dac0832输入寄存器地址输入寄存器地址ffhffh:1 1# #和和2 2# # dac0832dac0832 dacdac寄存器寄存器地址地址单片机原理及其应用扬州大学26 设设5151单片机单片机内部内部ramram中有两个长度为中有两个长度为2020的数据块,的数据块,其起始地址分别为其起始地址分别为20h20h和和40h40h,编写能把,编写能把20h20h和和40h40h中的中的数据同步从数据同步从1 1# #和和2 2# #dac0832dac0832输出的程序。输出的程序。程序设计:程序设计: 设设0 0区区

11、r1r1寄存器指向寄存器指向2 20h0h单元单元,1,1区区r1r1指指向向4 40h0h单元,单元,0 0区区r2r2寄存器存放数据块长度寄存器存放数据块长度,0,0区和区和1 1区的区的r0r0指向指向dacdac端口地址。端口地址。单片机原理及其应用扬州大学27 orgorg0000h0000haddr1addr1 data data 20h20h;与;与equequ类似给标号赋值类似给标号赋值addr2addr2 data data 40h40hdtout: movdtout: movr1r1,#addr1#addr1;1 1# #dacdac数据区指针数据区指针 movmovr2r

12、2,#20 #20 ;数据块长度计数器;数据块长度计数器 setb rs0 ; setb rs0 ; 切换到切换到1 1区区 movmovr1r1,#addr2#addr2;2 2# #dacdac数据区指针数据区指针 clrclrrs0rs0; ; 回回0 0区区nextnext: mov r0, #0fdhmov r0, #0fdh; 1; 1# #dac dac 输入寄存器地址输入寄存器地址 movmova, r1 a, r1 ;取取1 1# #dacdac数据指针指向单元中的数据数据指针指向单元中的数据 movxmovx r0r0,a a;数据送;数据送1 1# #dac0832dac

13、0832输入寄存器输入寄存器 incincr1r1; ; 修改修改1 1# #数据指针数据指针单片机原理及其应用扬州大学28setbsetbrs0rs0;转;转1 1区区movmovr0r0,#0feh#0feh;2#dac2#dac输入寄存器地址输入寄存器地址movmova a,r1r1;取取2 2# #dacdac数据指针指向单元中的数据数据指针指向单元中的数据movx movx r0r0,a a;数据送;数据送2 2# #dac0832dac0832输入寄存器输入寄存器 incincr1r1;修改;修改2 2# #数据指针数据指针incincr0r0; ; 指向指向1 1# #,2 2#

14、 #dacdac端口地址端口地址movxmovxr0r0,a a ;启动两片;启动两片dac0832dac0832同时进行转换同时进行转换clrclrrs0rs0 ;回;回0 0区区djnzdjnzr2r2,nextnext;数据未传送完,继续;数据未传送完,继续ljmpljmpdtoutdtoutendend单片机原理及其应用扬州大学29351单片机与12位dac的接口l dac1208的内部结构和原理(图8-3-10)l 51单片机和dac1208的连接(图8-3-11)l 12位dac ad667的功能结构与模拟输出l ad667与单片机的接口设计单片机原理及其应用扬州大学30图8-3-

15、10 dac1208内部框图 byte1/byte2=1, 8,4位输入寄存器同时开启byte1/byte2=0, 仅4位输入寄存器开启单片机原理及其应用扬州大学31高8位输入寄存器地址 4001h, 先送8位数据 低4位输入寄存器地址 4000h, 再送4位数据dac寄存器地址 6000h, 最后再打开dac寄存器图8-3-11 8031和dac1208接口图 单片机原理及其应用扬州大学32软件编程 将存在digit和digit+1的12位数据送入dac1208作d/a转换。org100hmov dptr, #4001h; 8位输入寄存器地址mov r1, #digit;高8位数据地址mov

16、 a, r1;取数据movx dptr, a;高8位送入dac1208decdpl;4位输入寄存器地址incr1;低4位数据地址mov a, r1 ;取数据movx dptr, a ;低4位送入dac1208mov dptr, 6000h;dac寄存器地址movx dptr, a;同步作d/a转换单片机原理及其应用扬州大学33 12位dac ad667的功能结构与模拟输出 ad667ad667:1212位,位,并行输入,电压输出,建立时间并行输入,电压输出,建立时间3 3 s s。双缓冲输入双缓冲输入;硬件编程可输出可输出+5v+5v、+10v+10v、 2.5v2.5v、 5v5v和和 10

17、v10v;内含高稳定的基准电压源,可方便地与4位、8位或16位微处理器接口;双电源工作电压为12v15v。1. 1. 引脚引脚单片机原理及其应用扬州大学34运放相关数字部分单片机原理及其应用扬州大学352. 功能结构图功能结构图单片机原理及其应用扬州大学363. 模拟电压输出范围的配置模拟电压输出范围的配置 ad667通过改变片外引脚的电路连接电路连接,可获得不同的输出电压量程范围。单极性单极性:0 05v 5v 和和 0 010v10v。双极性双极性: 2.5v2.5v、 5.5v 5.5v 和和 10v10v。单片机原理及其应用扬州大学37vrefoutvrefin 单极性电压输出单极性电

18、压输出调零调满度单片机原理及其应用扬州大学38 双极性电压输出双极性电压输出vrefoutvrefin调满度调偏置单片机原理及其应用扬州大学394. 数字输入控制数字输入控制 ad667的总线接口逻辑由4 4个独立的锁存器个独立的锁存器组成。3 3个个4 4位的输入数据锁存器位的输入数据锁存器构成第一级锁存器。1 1个个1212位的位的dacdac锁存器锁存器构成第二级锁存器。 4 4个锁存器个锁存器由4 4个地址输入个地址输入a0a0a3a3和/cs/cs控制,所有的控制都是低电平有效。低低中中高高单片机原理及其应用扬州大学405.5.数据编码代表的数值数据编码代表的数值 单极性输出时单极性

19、输出时,输入编码采用直接二进制编码。全全“0 0”数据输入数据输入000h000h产生零模拟电压输出;全全“1 1”数据输入数据输入fffhfffh产生比满量程少1lsb的模拟电压输出。 如10v满量程,fffh对应的是9.9976v。单片机原理及其应用扬州大学41 双极性输出时双极性输出时,输入编码采用偏移二进制编码。数据输入为000h000h时,产生负的满量程电压负的满量程电压输出;数据输入为fffhfffh时,产生比满量程少比满量程少1lsb1lsb的电压的电压输出;数据输入为800h800h时,产生零电压零电压输出。 输入数字量n与输出模拟电压vout的关系outr1112nvv单片机

20、原理及其应用扬州大学426. ad667与与51单片机的接口单片机的接口左对齐数据格式右对齐数据格式低低8位第一级锁存器位第一级锁存器 feh高高4位第一级锁存器位第一级锁存器 fdh12位第二级锁存器位第二级锁存器 fbh7fh右对齐右对齐单片机原理及其应用扬州大学437. 7. 程序程序 假定低低8 8位位数据存20h,高高4 4位位数据存21h的低4位(右对齐)。 先对第一级锁存器送数据,然后再选通第二级锁存器,进行d/a转换。mova,20h;取低8位数据movdptr,#7ffehmovx dptr,a;低8位进第一级锁存器mova,21h;取高4位数据movdptr,#7ffdhm

21、ovx dptr,a;高4位进第一级锁存器movdptr,#7ffbhmovx dptr,a ;选通第二级锁存器,启动转换ret单片机原理及其应用扬州大学448.4 a/d转换器及其接口8.4.1 a/d转换器概述8.4.2 逐次逼近式a/d转换器的工作原理8.4.3 51单片机和adc0809的接口8.4.4 51单片机和ad1674/ad574的接口 单片机原理及其应用扬州大学45 模拟量输入通道用于将模拟信号转换成数字信号,所要求的基本部件有: 模拟多路转换器与信号调理电路。 采样/保持电路。 a/d转换器。 通道控制电路。 目前单片的adc芯片较多,对设计者来说,应会合理地的选择芯片,

22、掌握与单片机的接口技术。虽然现在部分的部分的单片机片内集成了单片机片内集成了a/da/d转换器转换器,使用方便。在片内a/d转换器不能满足需要,还是需外扩a/d转换器。单片机原理及其应用扬州大学468.4.1 a/d8.4.1 a/d转换器概述转换器概述1a/d转换器的分类转换器的分类 单片机原理及其应用扬州大学47 逐次比较型逐次比较型a/da/d转换器转换器,在精度、速度和价格上都适中,是最常用的最常用的a/da/d转换器转换器。 双积分型双积分型a/da/d转换器转换器,精度高、抗干扰性好、价格低廉,转换速度较慢。在单片机应用领域中也得到广泛应用得到广泛应用。 - - 式式adcadc兼

23、兼具有积分式与逐次比较型adc的双重优点。它对工业现场的串模干扰具有较强的抑制能力,不亚于双积分的adc,但它比双积分adc有较高的转换速度。 与逐次比较型adc相比,有较高的信噪比,分辨率高,线性度好,不需要采样保持电路。因此,式adc得到了重视。 a/d转换器的速度:超高速超高速(tconv1ns)、高速高速( (tconv 1s)、中速中速( (tconv1ms)、低速低速( (tconv1s)。 a/d转换器的位数:8,10,12,14,16等。 串行接口:spi,i2c。单片机原理及其应用扬州大学482. a/d2. a/d转换器的性能指标转换器的性能指标 (1) 转换时间: 完成一

24、次模拟量到数字量转换所需的完成一次模拟量到数字量转换所需的 时间。转换时间的倒数为转换速率。时间。转换时间的倒数为转换速率。(2) 分辨率: 分辨率为分辨率为n n位表示它能对满量程输入的位表示它能对满量程输入的1 12 2n n的增量做出反映。用二进制位数的增量做出反映。用二进制位数n n来表示,如来表示,如8 8位、位、1212位、位、6 6位等。位等。 若若n n8 8,满量程输入为,满量程输入为5v5v,则能辨别的模拟电压,则能辨别的模拟电压增量是增量是5v5v2 28 819.5mv19.5mv。 (3) 转换精度:在满量程内,实际转换值与理想转换在满量程内,实际转换值与理想转换 值

25、的最大误差。值的最大误差。 单片机原理及其应用扬州大学493. a/d3. a/d转换器的选用转换器的选用(1) a/d转换器位数的确定 位数确定即分辨率的确定,决定精度要求。估算时至少比总精度要求的分辨率高一位。(2) 转换速率的确定 根据实际需求确定a/d的转换速率。 温度、流量、压力等缓变量的采集可用慢速a/d, 几毫秒上百毫秒。转速、电流等的采集用几十微秒的a/d。位数 速度单片机原理及其应用扬州大学50(3) 采样保持器的使用 原则上a/d转换器对模拟信号转换期间,其输入信号应保持不变,通过采样保持器完成信号保持的功能。 对直流和相对a/d转换速率很慢的信号可以不用采样保持器。 8位

26、100us的a/d, 在无采保时, 能转换的最高正弦信号频率为12hz。(4) 其他工作电压基准电压串行与并行单片机原理及其应用扬州大学518.4.2 逐次逼近型adc基本原理 图8-4-1 逐次逼近adc原理电路框图 逐次逼近式a/d转换器是一种采用对分搜索原理来实现a/d转换的方法,逻辑框图如图8-4-1所示。 vivda“1” (vivda)“0” (vivdavivdavivda单片机原理及其应用扬州大学538-4-3 adc0809逻辑框图8.4.3 518.4.3 51单片机和单片机和adc0809adc0809的接口的接口1. adc08091. adc0809逻辑结构图逻辑结构

27、图单片机原理及其应用扬州大学542. 2. 引脚结构引脚结构 adc0809采用双列直插式封装,共有28条引脚。其引脚结构如图8-4-4所示。引脚结构 (1)in7in0:8条模拟量输入通道 (2)地址输入和控制线:4条 (3)数字量输出及控制线:11条 (4)电源线及其他:5条 图8-4-4 adc0809引脚图图单片机原理及其应用扬州大学55被选通道和地址的关系单片机原理及其应用扬州大学56图8-4-5 0809工作时序图3. 3. 时序图时序图复位sar启动转换锁存通道地址 实际应用中,ale与start接在一起。启动a/d转换,用movx dptr, a。转换结束可查询eoc状态读取结

28、果,也可用eoc产生中断,cpu响应中断后,读入结果。单片机原理及其应用扬州大学57 4adc0809与与mcs-51单片机的接口电路单片机的接口电路图8-4-6 0809与8031接口电路启动转换地址:0111 1111 1111 1xxx=7ffxh读结果地址: 0111 1111 1111 1xxx=7ffxh6mhz单片机原理及其应用扬州大学58编程: 软件延时对8路模拟信号采集一次并存入数据存储区。main: mov r1, #30h mov dptr, #7ff8h; p2.7=0, 选0通道 mov r7, #08h; 置通道个数loop: movx dptr, a; mov r

29、6, #0ahdelay: nop nop nop djnz r6, delzy movx a, dptr; 读结果 mov r1, a; 存结果 inc dptr; 下一通道 inc r1; djnz r7, loop单片机原理及其应用扬州大学59编程: 用中断方式编写程序 (硬件图在eoc和int1之间加一个非门) intt1: setb ea setb it1;下沿触发 setb ex1 mov r1, #30h mov r7, #08h; 置通道个数 mov dptr, #7ff8h ; p2.7=0, 选0通道 movx rptr,a;启动a/d 单片机原理及其应用扬州大学60pin

30、t1: mov dptr, #7ff8h ; p2.7=0, 选0通道 movx a, rptr ;读a/d结果 mov r1, a;存结果 djnz r7, next clr ex1 clr ea sjmp exitnext: inc dptr ; 下一通道 inc r1 movx dptr, a ;启动a/dexit: reti单片机原理及其应用扬州大学61eocoestartaleorg 0000hajmp storg 0003hajmp rdadst:mov r0, #40h setb ea setb ex0 setb it0 ; int0 下降沿触发 anl p1, #0f8h ;准

31、备启动in0 clr p3.4 setb p3.4 ;发出start信号 clr p3.4 ajmp $ rdad:mov p1, #0ffh ;p1口作输入clr p3.5; 使oe=1mov r0, p1; 读转换结果 setb p3.5; 使oe=0reti单片机原理及其应用扬州大学628.4.4 51单片机和单片机和ad1674/ad574a的接口的接口 实际应用中,8 8位位adcadc分辨率常常不够,需选择分辨率大于大于8 8位位的芯片,如1010位、位、1212位、位、1616位等。位等。 ad1674是美国ad公司的1212位逐次比较型位逐次比较型a/da/d转换器转换器。转换

32、时转换时间为间为1010 s s,单通道最大采集速率最大采集速率100khz100khz。 ad1674是ad574a/674a的更新换代产品。它们的内部结构和外部应用特性基本相同。 ad1674的引脚功能与ad574a/674a完全兼容,可以直接替换ad574、ad674使用。但是ad574a的转换时间是2525 s s。单片机原理及其应用扬州大学631. 结构特点结构特点 内部集成了转换时钟,参考电压源和三态输出锁存器,因此使用方便,可直接和微处理器接口,不需要外接时钟电路。 输入模拟电压既可是单极性也可是双极性的。adc0809的输入模拟电压是单极性的。 数字量的位数可以设定为12位,也

33、可设定为8位。 ad1674片内自带采样保持器,对用户是透明的。单片机原理及其应用扬州大学642. 引脚与逻辑结构图引脚与逻辑结构图引脚排列图引脚排列图单片机原理及其应用扬州大学65逻辑结构图单片机原理及其应用扬州大学663. 3. 极性与量程设定极性与量程设定单极性: bipoff接0v,双极性: bipoff接10v。量程: 10v(-5v5v), 输入信号接至10vin;20v(-10v+10v), 输入信号接至20vin。数字量与模拟输入电压的关系:in4096fsvvdin(2048)4096fsvvd单极性双极性d是无符号二进制码,vfs是满量程电压d是偏移二进制码, vfs是满量

34、程电压单片机原理及其应用扬州大学67图8-4-8 输入极性转换电路单片机原理及其应用扬州大学685. 5. 输出宽度选择输出宽度选择4. 4. 转换位数设定转换位数设定转换期间,a0=0,12位转换 a0=1, 8位转换读出时,a0=0,高8位数据有效。 a0=1, 低4位数据有效,中间4位为零,高4位为三态。若低4位接在数据总线高半字节,12位数据按左对齐原则排列结果高8位结果低4位 4个012/80时,d的高8位d11d4,与低4位d3d0分时输出。 三态缓冲器用于存放12位转换结果d(d0212-1)。d的输出方式有两种:引脚 12/81时,d的d11d0,并行输出;单片机原理及其应用扬

35、州大学696. 6. 控制逻辑控制逻辑+5v接地ce: 转换与读启动信号转换与读启动信号cs: 片选片选r/c:读出:读出/转换控制转换控制12/8:数据输出格式选择:数据输出格式选择a0: 字节选择字节选择单片机原理及其应用扬州大学70(a)启动与转换 (b)转换结果输出 图8-4-9 控制时序图7. 7. 时序时序sts=1,sts=1,正在转换正在转换启动启动: : cs=0, ce=1, r/c=0cs=0, ce=1, r/c=0然后然后 cs=1, ce=0cs=1, ce=0 读结果:读结果:cs=0, ce=1, r/c=1cs=0, ce=1, r/c=1然后然后 cs=1,

36、 ce=0cs=1, ce=0单片机原理及其应用扬州大学71bagnddgndvee8ad1674/ad574a与mcs-51单片机接口左对齐双极性输入启动转换地址011111007ch读结果地址高8位 0111 11017dh低4位 0111 11117fhce=1, movx, r0, a movx a, r0单片机原理及其应用扬州大学72程序 :启动一次a/d转换,按左对齐原则存结果高8位于 r2, 低4位于r3中。main: movr0, #7ch; 启动地址 movxr0, a; 启动a/d setbp1.0; p1.0输入模式loop: nop jbp1.0, loop; 查询转换

37、结束否 movr0, #7dh; 读高8位地址 movxa, r0;读结果的高8位 movr2, a;存结果的高8位 movr0, #7fh;读低4位地址 movxa, r0;读结果的低4位 movr3, a;存结果的低4位单片机原理及其应用扬州大学73单片机原理及其应用扬州大学74单片机原理及其应用扬州大学758.5 打印机接口8.5.1 tpp-40a主要性能、接口要求及时序8.5.2 字符代码及打印命令8.5.3 tpp-40a/16a与mcs-51单片机接口8.5.4 打印程序实例单片机原理及其应用扬州大学768.5.1 tpp-40a主要性能、接口要求及时序1tpp-40a的主要技术

38、性能(1)采用单片机控制,具有2kb监控程序及标准的centronic 并行接口。(2)具有较丰富的打印命令,命令代码均为单字节,格式简单。(3)可产生全部标准的ascii代码字符,以及128个非标准字符和图符。(4)可打印出8240点阵的图样。(5)字符、图符和点阵图可以在高和宽的方向放大为2、3、4倍。单片机原理及其应用扬州大学77(6)每行字符的点行数可用命令更换,即字符行间距空点行在0256间任选。(7)带有水平和垂直制表命令,便于打印表格。(8)具有重复打印同一字符命令,以减少输送代码的数量。(9)带有命令格式的检错功能。 单片机原理及其应用扬州大学782接口要求tpp-40a微型打

39、印机与计算机通过机箱后部的20芯扁平电缆及插件相连。接插件引脚信号如图8-24所示。busydb246810121416182013579111315171921192020ns50ns62201050ns0.5no care时间不定(不同命令,数据而异)输入插头扁平电缆从打印机背面视图gnd gndgnd gndgndgnd gndgnd ackackerrdbdbdbdbdbdbdbstbbusydbdbstb01234770next56data s s3020 s图8-5-1 tpp-40a/16a插脚安排(从打印机背视) db0db7:数据线,单向由计算机输入打印机。 strobe:数

40、据选通信号。 busy:打印机“忙”状态信号。 acknowlege:打印机的应答信号。 error:出错信号。 3接口信号时序busydb246810121416182013579111315171921192020ns50ns62201050ns0.5no care时间不定(不同命令,数据而异)输入插头扁平电缆从打印机背面视图gnd gndgnd gnd gndgnd gndgnd ackackerrdbdbdbdbdbdbdbstbbusydbdbstb01234770next56data s s3020 s图8-5-2 tpp-40a/16a接口信号时序单片机原理及其应用扬州大学818

41、.5.2 字符代码及打印命令1字符代码字符代码串实例如下:l 打印字符串“3265.37”输送代码串为:24,33,32,36,35,2e,33,37,0d。l 打印“this is micro-printer”输送代码串为:54,68,69,73,20,69,73,20,4d,69,63,72,6f,2d,70,72,69,6e,74,65,72,2e,0d。2打印命令命令代码命令功能01h打印字符、图等,增宽(1,2,3,4)02h打印字符、图等,增高(1,2,3,4)03h打印字符、图等,宽和高同时增加(1,2,3,4)04h字符行间距更换/定义05h用户自定义字符点阵06h驻留代码字符

42、点阵式样更换07h水平(制表)跳区08h垂直(制表)跳区09h恢复ascii代码和清输入缓冲区命令0ah一个空位后回车换行 0bh0ch无效0dh回车换行 0eh重复打印同一字符命令0fh打印位点阵图命令表8-5-1 tpp-40a打印命令代码及功能3命令非法时的出错提示error: 0error: 1error: 2error: 3error: 4图8-5-3 出错代码信息打印格式单片机原理及其应用扬州大学848.5.3 tpp-40a/16a与mcs-51单片机接口 tpp-40a/16a没有读写信号线,只有一对握手线、busy,接口如图8-5-4所示。 图8-5-5是通过单片机系统中的扩

43、展i/o口连接的打印机接口电路。 图8-5-4、图8-5-5中打印机的口地址由地址线p2口线决定,使用时,口地址设为7fffh。wrp2.7rdp0.7p0.0gndstbbusydb7db0gndtpp-40a/16a16281732333435363738391191715131197538031图8-5-4 tpp-40a/16a与8031数据总线接口电路图图8-5-5 tpp-40a/16a与8031扩展i/o口连接的接口电路图单片机原理及其应用扬州大学878.5.4 打印程序实例下面以图8-29作为打印机接口,介绍一种使用tpp-16a打印机打印1616点阵汉字“作业”的程序。程序清

44、单如下:hzdy:movdptr,#tab2;置字型表首址 movr6,#02h dy1: movb,#20h lcallsub2 ;调用打印机控制子程序 djnzr6,dy1 retsub1: pushdph ;dptr入栈 movdptr,#tab1;置打印机控制字表首址 movr5,#05h;送打印控制字串到打印机sb11: lcall day2 lcall day1 djnzr5,sb11 mova,b lcall day1 mova,#00h lcall day1 popdpl;dptr出栈 popdph retsub2:movr5,b ;送由b设置个数的汉字字型码到打印机sb21:

45、 lcall day2 lcall day1 djnzr5,sb21 mova,#0dh;回车换行 lcall day1 retday1:pushdphpushdpl movdptr,#7f01h ;将字型码送8155 pa口 movx dptr,a movdptr,#7f03h ;用8155 pc口模拟打印机信号 mova,#00h movx dptr,a mova,#01h movx dptr,a jbp3.3,$;打印机忙等待 popdpl popdph retday2:clra;取字型码子程序 movx a,a+dptr incdptr ret tab1:db1bh,31h,00h,1

46、bh,4bh ;打印机控制字符串tab2:db00h,00h,00h,0ffh,0feh,00h,00 ;汉字“作”的下半部字形码 db00h,0ffh,0ffh,20h,20h,20h,60h,20h db00h,02h,02h,0e2h ,0c2h,0feh,0feh,02h ;汉字“业”下半部字形码 db02h,0feh,0feh,62h,0c2h,02h,06h,02h db00h,01h,06h,1fh,0f7h,60h,02h,0ch ;汉字“作” 的上半部字形码 db38h,0ffh,5fh,12h,12h,16h,32h,10h db00h,08h,07h,03h,00h,0f

47、fh,7fh,00h ;汉字“业” 的上半部字形码 db00h,0ffh,7fh,00h,03h,1fh,0ch,00h单片机原理及其应用扬州大学918.6 拨码盘及语音接口8.6.1 拨码盘接口及应用实例8.6.2 isd1420语音接口芯片及其应用单片机原理及其应用扬州大学928.6.1 拨码盘接口及应用1十线拨盘(如图8-6-1所示)a0909+5v图8-6-1 十线拨盘 十线拨盘接口:多个拨盘输入时,接口如图8-6-2所示。为节约i/o口,采用并联连接,分时选通输入的办法。拨盘选择信号开集输出器a1an+5v0909输入口p1输入口p3图8-6-2 十线拨盘组接口 读数及自检软件: 十

48、线拨码盘便于实现自检。在正常情况下,十线中只能有一个为低电平“0”。如果有一个以上的低电平“0”,则为短路故障;如全为高电平“1”,则为开路或接触不良故障。图8-6-3是读数自检子程序流程图。开始从p1口输入低8位ynp1为全1?从p3口输入高2位从p3口输入高2位p1全为1?ynnyyn搜索查表查到?a 拨码值开路a 0e返回p1全为1?搜索查表查到?a 拨码值短路a 0f短路a 0f短路a 0f图8-6-3 十线拨盘读数自检程序流程图单片机原理及其应用扬州大学962bcd拨码盘(如图8-6-48-6-5所示)l 硬件接口:只用两个bcd拨码盘输入时,可把a端接+5v,8个输出脚接8个并行输

49、出口,并通过10k电阻接地,从8位并行口输入的数据即是两个拨盘的bcd码。多个拨盘输入时,同样要接成并联分时选通形式 l 读数及检测软件:bcd拨码盘不易实现故障自检。输入口a1a2an-1an+5v8421842184218 421拨盘选择信号输出器图8-6-4 bcd码拨盘组接口 初 始 化设 定 某 组 拨 盘 的 循 环 显 示 次 数( 即 显 示 时 间 )拨 盘 组 编 号 寄 存 器 + 1最 高 位 显 示 拨 盘 组 编 号拨 盘 组 选 通 码 左 移 一 位使 该 组 拨 盘 码 选 通 线 为 低读 入 选 中 拨 盘 码 数 码最 低 位 显 示 缓 冲 区 低 4 位 码上 一 位 显 示 缓 冲 区 高 4 位 码调 显 示 程 序 扫 描 显 示 器设 定 显 示次 数 到 否 ?全 部 拨 盘 组已 显 示 完 否 ?至 其 他 检 测 程 序 段yynn图8-6-5 bcd码拨盘检测程序流程图单片机原理及其应用扬州大学998.6.2 isd

温馨提示

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

评论

0/150

提交评论