北京赛车历史开奖号,北京赛车pk10历史记录有限公司欢迎您!

所有分类]单片机原理与应用-9

作者:admin    来源:未知    发布时间:2020-02-17 05:53    浏览量:

  第9章 利用编造筑设及接口时间 ?若输入口舌电的模仿信号,还须要通过传感器转换成电信号并加以放 大,把模仿量转换成数字量。该进程称为“量化”,也称为模/数转换。 ?杀青模/数转换的筑设称为模/数转换器(A/D),将数字量转换成 模仿量的筑设称为数/模转换器(D/A)。 ?图9-1所示为拥有模仿量输入、模仿量输出以及键盘、显示器、打印 机等筑设的89C51利用编造框图。为省俭I/O口线片表扩展应尽 量采用串行表设接口芯片。 2019/1/29 1 图9-1 编造前向、后向人机通道筑设框图 2019/1/29 2 9.1 人机通道筑设与接口时间 ? 单片机利用编造大凡都须要举行人机对话。 这席卷人对利用编造的状况过问与数据输 入,另有利用编造向人显示运转状况与运 行结果等。如键盘、 显示器即是用来实行 人机对线 键盘接口及经管轨范 ? 键盘分编码键盘和非编码键盘。 ? 键盘上闭合键的识别由专用的硬件译码器 杀青,并发作键编号或键值的称为编码键 盘,如BCD码键盘、ASCII码键盘等;靠软 件识其它称为非编码键盘。 2019/1/29 4 ? 键盘中每个按键都是一个常开开闭电道,如图92所示。 ? 当按键K未被按下时,P1.0输入为高电平;当K闭 适时,P1.0输入为低电平。 图9-2 按键电道 2019/1/29 5 ? 大凡按键所用的开闭为呆滞弹性开闭,当呆滞触点断开、闭合 时,电压信号波形如图9-3所示。 ? 因为呆滞触点的弹性效力,一个按键开闭正在闭适时不会就地稳 定地接通,正在断开时也不会一忽儿断开。 ? 因此正在闭合及断开的刹时均陪同有继续串的颤栗,如图9-3所 示。颤栗光阴的是非由按键的呆滞个性肯定,普通为5~10 ms。 这是一个很厉重的光阴参数,正在良多局面都要用到。 2019/1/29 图9-3 按键时的颤栗 6 ? 键颤栗会惹起一次按键被误读多次。为了确保CPU对键的一次闭 合仅做一次经管,务必去除键颤栗。正在键闭合安祥时,读取键的 可用硬件或软件两种法子消逝。 状况,而且务必判别;正在键开释安祥后,再作经管。按键的颤栗, ? 倘若按键较多,常用软件法子去颤栗,即检测出键闭合后奉行一 个延时轨范,发作5~10 ms的延时;让前沿颤栗消散后,再一次 检测键的状况,倘若仍坚持闭合状况电平,则确以为真正有键按 下。当检测到按键开释后,也要给5~10 ms的延时,待后沿颤栗 消散后,才气转入该键的经管轨范。 2019/1/29 7 1. 键盘布局 ? 键盘可能分为独立连合式和队伍式(矩阵式) 两类,每一类按其译码法子又都可分为编 码及非编码两品种型。这里只先容非编码 键盘。 2019/1/29 8 1) 独立式非编码键盘接口及经管轨范 ? 独立式按键是指各按键彼此独 立刻接通一条输入数据线所示。这是最纯粹的键盘 布局,该电道为查问办法电道。 ? 当任何一个键按下时,与之相 连的输入数据线(低电 平),而平居该线(高电平)。 要判别是否有键按下,用单片 机的位经管指令相称利便。 ? 这种键盘布局的长处是电道简 单;舛讹是当键数较多时,要 占用较多的I/O线 独立连合式非编码键盘 9 2019/1/29 ? 图9-4所示查问办法键盘的经管轨范比拟纯粹。 轨范中没有运用散转指令,而且省略了软件去 颤栗法子,只席卷键查问、键性能轨范变更。 P0F~P7F为性能轨范入口地点标号,其地点间 隔应能容纳JMP指令字节;PROM0~PROM7差异为 每个按键的性能轨范。 2019/1/29 10 轨范清单(设I/O为P1口): START: MOV A,#0FFH;输入时先置P1口为全1 MOV MOV P1,A A,P1;键状况输入 PL1: JNB JNB JNB ACC.0,P0F;0号键按下转P0F标号地点 ACC.1,P1F;1号键按下转P1F标号地点 ACC.2,P2F;2号键按下转P2F标号地点 JNB JNB JNB ACC.3,P3F;3号键按下转P3F标号地点 ACC.4,P4F;4号键按下转P4F标号地点 ACC.5,P5F;5号键按下转P5F标号地点 JNB JNBA LJMP 2019/1/29 ACC.6,P6F;6号键按下转P6F标号地点 CC.7,P7F;7号键按下转P7F标号地点 START;无键按下返回 11 P0F: LJMP PROM0 ┊ ┊ P1F: LJMP PROM1 ;入口地点表 P7F: LJMP PROM7 PROM0:… ;0号键性能轨范 LJMP START ;0号键奉行完返回 PROM1:… LJMP START ┊ PROM7:… LJMP START 由轨范可能看出,各按键由软件筑立了优先级,优先级次序 顺次为0~7。 2019/1/29 12 【例9-1】 安排一个有4个独立式按键的键盘接口, 并编写键扫描轨范。 解: 电道道理图如图9-5所示。 图9-5 键盘接口电道道理图 2019/1/29 13 KEY: MOV P1,#0FFH ;P1口为输入,诸君应先置位为高电平 MOV A,P1 ;读取按键状况 CPL A ;取正逻辑,高电平吐露有键按下 ANL A,#0FH JZ KEY ;A=0时无键按下,从头扫描键盘 LCALL D10ms ;有键按下延时去颤栗 MOV A,P1 ;读取按键状况 CPL A ;取正逻辑,高电平吐露有键按下 ANL A,#0FH ;再判别是否有键按下 JZ KEY ;A=0时无键按下从头扫描键盘 MOV B,A ;有键按下,键值送B暂存 MOV A,P1 CPL A ANL A,#0FH ;判别按键开释 KEY1: JNZ KEY1 ;按键未开释,等候 LCALL D10ms ;开释,延时去颤栗 ====================================== MOV A,B ;取键值送A 2019/1/29 14 ANL A,#0FH;判别按键开释 KEY1:JNZ KEY1;按键未开释,等候 LCALL D10ms;开释,延时去颤栗 MOV A,B;取键值送A JB ACC.0,PKEY1;K1按下转PKEY1 JB ACC.1,PKEY2;K2按下转PKEY2 JB ACC.2,PKEY3;K3按下转PKEY3 JB ACC.3,PKEY4;K4按下转PKEY4 EKEY:RET 2019/1/29 15 PKEY1:LCALL K1;K1号令经管轨范 RET PKEY2:LCALL K2;K2号令经管轨范 RET PKEY3:LCALL K3;K3号令经管轨范 RET PKEY4:LCALL K4;K4号令经管轨范 RET D10ms:MOV R7,#10H;10 ms延时子轨范 DS1: MOV R6,#0FFH DS2: DJNZ R6,DS2 DJNZ R7,DS1 RET 2019/1/29 16 2) 队伍式键盘接口及管事道理 ? 为了省略键盘与单片机接口时所占用I/O线的数量, 正在键数较多时,大凡都将键盘陈设成队伍矩阵形 式,如图9-6所示。 ? 以图9-6所示的4×4键盘为例,讲明行扫描法识别 哪一个按键被按下的管事道理。 2019/1/29 17 图9-6 4×4矩阵键盘接口图 2019/1/29 18 ? 开始判别键盘中有无键按下,由单片机I/O口向 键盘送(输出)全扫描字,然后读入(输入)列线状况来 决断。法子是: 向行线(图中水准线H,把所有行线置为低电平,然后将列线的电平 状况读入累加器A中。倘若有按键按下,总会有一 根列线电平被拉至低电平,从而使列输入不全为1。 ? 决断键盘中哪一个键被按下是通过将行线逐行置低 电平后,检验列输入状况杀青的。法子是: 顺次给 行线送低电平,然后查完全列线状况,称行扫描。 倘若全为1,则所按下的键不正在此行;倘若不全为1, 则所按下的键必正在此行,并且是正在与零电平列线相 交的交点上的谁人键。 2019/1/29 19 (1) 行扫描法识别键号(值)的道理 ? 行扫描法识别键号的管事道理如下: ? 将第0行变为低电平,其余动作高电平居,输出编码为1110。 然后读取列的电平,判别第0行是否有键按下。正在第0行上若 有某一按键按下,则相应的列被拉到低电平,则吐露第0行 和此列订交的处所上有按键按下。若没有任一条列线行上无键按下。 ? 将第1行变为低电平,其余动作高电平居,输出编码为1101。 然后通过输入口读取各列的电平。检测此中是否有变为低电 平的列线。若有键按下,则进而判别哪一列有键按下,确定 按键处所。 ? 将第2行变为低电平,其余动作高电平居,输出编码为1011。 判别是否有哪一列键按下的法子同上。 ? 将第3行变为低电平,其余动作高电平居,输出编码为0111。 判别是否有哪一列键按下的法子同上。 2019/1/29 20 ? 正在扫描进程中,当发明某行有键按下,也 即是输入的列线时,便可判别 闭合按键所正在列的处所,遵循行线处所和 列线处所就能决断按键正在矩阵中的处所, 清楚是哪一个键按下。 2019/1/29 21 (2) 键盘扫描管事进程 ? 按键扫描的管事进程如下: ① 决断键盘中是否有键按下; ② 举行行扫描,决断是哪一个键按下,若有 键按下,则移用延时子轨范去颤栗; ③ 读取按键的处所码; ④ 将按键的处所码转换为键值(键的次序号) 0、1、2…、F。 ? 图9-7所示为4×4键盘扫描流程图。 2019/1/29 22 图9-7 4×4键盘扫描流程图 2019/1/29 23 键的处所码及键值的译码进程 上述行扫描进程终结后获得的行号存放正在R0中,列号存放正在 R2中。 键值(号)的取得(译码)大凡采用计数译码法。这种 法子遵循矩阵键盘的布局特征,每个按键的值=行号×每 行的按键个数+列号,即键号(值)=行首键号+列号第0 行的键值为: 0行×4+列号(0~3)为0、1、2、3; 第1行的键值为: 1行×4+列号(0~3)为4、5、6、7; 第2行的键值为: 2行×4+列号(0~3)为8、9、A、B; 第3行的键值为: 3行×4+列号(0~3)为C、D、E、F。 4×4键盘行首键号为0、4、8、C,列号为0,1,2,3。 因此键值译码子轨范为DECODE,该子轨范出口: 键值正在A 中。 2019/1/29 24 (3) 键盘扫描子轨范(参见图9-7) ? 出口: 键值(键号)正在A中 KEY: MOV P1, #0F0H MOV R7,#0FFH KEY1: DJNZ R7,KEY1 MOV A,P1 ANL A,#0F0H CPL A JZ EKEY LCALL DEL20 ms SKEY: MOV A,#00 MOV R0,A MOV R1,A MOV R3 #0FEH SKEY2:MOV A,R3 MOV P1,A NOP NOP NOP 2019/1/29 ;令完全动作低电平 ;筑立计数常数 ;延时 ;读取P1口的列值 ;判别有键值按下吗? ;求反后,有高电平就有键按下 ;无键按下时退出 ;延时20 ms去颤栗 ;下面举行行扫描,1行1行扫 ;R0举动行计数器,早先为0 ;R1举动列计数器,早先为0 ;R3为行扫描字暂存,低4位为行扫描字 ;输出行扫描字,高4位全1 ;3个NOP操作使P1口输出安祥 25 MOV MOV ANL CPL S123: JNZ A,P1 R1, A A,#0F0H A SKEY3 INC R0 SETB C MOV RLC MOV MOV CJNE EKEY:RET 2019/1/29 A,R3 A R3,A ;变成下一行扫描字→R3 A,R0 A,#04H,SKEY1 ;末了一行扫(4次)完了吗? ;读列值 ;暂存列值 ;取列值 ;高电平则有键闭合 ;有键按下转SKEY3,无键按下时进 ;行一行扫描 ;行计数器加1 ;打定将行扫描左移1位,变成下一行 ;扫描字,C=1担保输出行扫描字中高4 ;位全为1,为列输入作打定,低4位中 ;唯有1位为0 ;R3带进位C左移1位 26 ;列号译码 SKEY3:MOV JNB JNB JNB JNB AJMP SKEY5:MOV MOV AJMP SKEY6:MOV MOV AJMP SKEY7:MOV MOV AJMP SKEY8:MOV MOV AJMP 2019/1/29 A,R1 ACC.4,SKEY5 ACC.5,SKEY6 ACC.6,SKEY7 ACC.7,SKEY8 EKEY A,#00H R2, A ;存0列号 DKEY A,#01H R2,A ;存1列号 DKEY A,#02H R2,A ;存2列号 DKEY A,#03H R2,A ;存3列号 DKEY 27 ;键处所译码 DKEY:MOV A,R0 ACALL DECODE AJMP EKEY ;键值(键号)译码 DECODE:MOV A,R0 MOV B,#04H MUL AB ADD A,R2 RET ;取行号 ;取行号送A ;每一行按键个数 ;行号×按键数 ;行号×按键数+列号=键值(号), ;正在A中 2019/1/29 28 【例92】安排一个2×2队伍式键盘,并编写键盘扫描子轨范。 解: 道理如图9-8所示。 ① 决断是否有键按下: 将列线。 ② 决断哪一个键按下: 逐列送0电平信号,再逐行扫 描是否为0。 ③ 键号=行首键号+列号 图9-8 键盘扫描道理图 2019/1/29 29 KEY: LCALL KS JZ KEY LCALL T10 ms ;移用决断有无键按下子轨范 ;无键按下,从头扫描键盘 ;有键按下,延时去颤栗 LCALL KS JZ MOV MOV MOV LK1: MOV MOV KEY R2,#0FEH R4,#00H P0,#0FFH P1,R2 A,P0 ;列扫描字送P1口 ;首列扫描字送R2 ;首列号#00H送入R4 JB MOV LJMP ACC.0,ONE A,#00H KP ;0行无键按下,转1行 ;0行有键按下,该行首号#00H送A ;转求键号 2019/1/29 30 ONE: JB MOV KP: ADD PUSH LK: LCALL JNZ POP RET NEXT:INC MOV JNB RL MOV AJMP KND: AJMP ACC.1,NEXT A,#02H A,R4 ACC KS LK ACC R4 A,R2 ACC.1,KND A R2,A LK1 KEY ;1行无键按下,转下列 ;1行有键按下,该行首号#02H送A ;求键号,键号=行首键号+列号 ;键号进栈掩护 ;等候键开释 ;未开释,等候 ;键开释,键号送A ;键扫描终结,出口状况: (A)=键号 ;列号加1 ;决断两列扫描完了吗 ;两列扫描完,返回 ;未扫描完,扫描字左移一位 ;扫描字入R2 ;转扫下一列 2019/1/29 31 KS: MOV P1,#0FCH;全扫描字送P1口 MOV P0, #0FFH MOV A,P0;读入P0口行状况 CPL A;取正逻辑,高电平吐露有键按下 ANL A,#03H;保存P0口低2位(樊篱高6位) RET;出口状况: (A)≠0时有键按下 T10 ms:MOV R7,#10H;延迟10 ms子轨范 TS1: MOV R6,#0FFH TS2: DJNZ R6,TS2 DJNZR7,TS1 RET 2019/1/29 32 2. 隔绝扫描办法 ? 为了进步CPU的成果,可能采 用隔绝扫描管事办法,即唯有 正在键盘有键按下时才发作隔绝 申请;CPU相应隔绝,进入中 断任事轨范举行键盘扫描,并 做相应经管。隔绝扫描管事方 式的键盘接口如图9-9所示。 ? P1.4~P1.7作键输出线。 ? 当有键按下时,INT1端为低电 平,向CPU发出隔绝申请。若 CPU怒放表部隔绝,则相应中 断仰求,进入隔绝任事轨范。 图9-9 隔绝办法键盘接口 2019/1/29 33 3. 键操作及性能经管 ? 若图9-6中为4×8的32键,设0、1、 2、…、E、F共16个键为数字键;其 他16个键为性能键,键值为16~31, 即10H~1FH,各性能键入口轨范地 址标号差异为AAA、BBB、…、PPP。 当对键盘举行扫描并求得键值后,还 务必做进一步经管。法子是开始判别 其是性能键依旧数字键。若为数字键, 则送显示缓冲区举行显示;若为性能 键,则由散转指令“JMP @A+DPTR”转到相应的性能键经管 轨范,实行相应的操作。实行上述任 图9-10 求性能键地点转换轨范流 务的子轨范流程图如图9-10所示。 ? 程图 2019/1/29 34 性能键地点变更轨范如下: BUFF EQU 30H A,BUFF;键值→A KEYADR:MOV CJNE A,#0FH,KYARD1 AJMP DIGPRO;等于F,转数字键经管 KYARD1:JC DIGPRO;幼于F,转数字键经管 KEYTBL:MOV DPTR,#JMPTBL;送性能键地点表指针 CLR C;清进位位 SUBB A,#10H;性能键值(10H~1FH)减16 RL JMP A;(A)×2,使(A)为偶数: 0、2、4、… @A+DPTR;转相应的性能键经管轨范 2019/1/29 35 JMPTBL:AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AAA; BBB; CCC; DDD; EEE; FFF; GGG; HHH; III; JJJ; KKK; LLL; MMM; NNN; OOO; PPP; 均为2字节,转到16特性能键的相应入 口地点。 (A)=0、2、4、6…散转到AAA、BBB、 CCC、DDD、…、PPP 2019/1/29 36 9.1.2 LED显示器接口及显示轨范 单片机利用编造中运用的显示器要紧有: ? 发光二极管显示器,简称LED(Light Emitting Diode); ? 液晶显示器,简称LCD(Liquid Crystal Display); ? CRT显示器 2019/1/29 37 1. LED显示器布局道理 ? 单片机中大凡运用7段LED有共阴极和共阳极两种, 如图9-11所示。 ? 发光二极管的阳极连正在一块的(大多端K0)称为共 阳极显示器 ? 阴极连正在一块的(大多端K0)称为共阴极显示器。 ? 一位显示器由8个发光二极管构成,此中,7个发 光二极管组成字型“8”的各个笔划(段)a~g,另 一个幼数点为dp发光二极管。 ? 当正在某段发光二极管上施加肯定的正向电压时, 该段笔划即亮;不加电压则暗。为了掩护各段 LED不被损坏,须表加限流电阻。 2019/1/29 38 ? 以共阴极LED为例,如图9-11(a)所示,各LED大多阴极K0接地。若向各 掌握端a、b、…、g、dp依次送入11100001信号,则该显示器显示“7.” 字型。 ? 共阴极与共阳极7段LED显示数字0~F、“-”符号及“灭”的编码(a段为 最低位,dp点为最高位)如表9-1所列。 图9-11 LED 7段显示器 2019/1/29 39 表9-1 共阴极和共阳极7段LED显示字型编码 表 显示 字符 共阴极 段选码 共阳极 段选码 显示 字符 共阴极 段选码 共阳极 段选码 0 3F (BF) C0 (40) 9 6F (EF) 90 (10) 1 06 (36) F9 (79) A 77 (F7) 88 (08) 2 3 4 5 6 7 8 5B 4F 66 6D 7D 07 7F (DB) (CF) (F6) (FD) (FD) (87) (FF) A4 (24) B B0 (30) C 99 (19) D 92 (12) E 82 (02) F F8 (78) 80 (00) 熄灭 7C 39 5E 79 71 40 00 (FC) (B9) (DE) (F9) (F1) (C0) (80) 82 (03) C6 (46) A1 (21) 86 (06) 8E (0E) BF (3F) FF (7F) 2019/1/29 40 2. LED显示器接口及显示办法 ? LED显示器有静态显示和动态显示两种办法。 2019/1/29 41 1) LED静态显示办法 ? 静态显示即是当显示器显示某个字符时,相应的段(发光二 极管)恒定地导通或截止,直到显示另一个字符为止。 ? LED显示器管事于静态显示办法时,诸君的共阴极(大多端 K0)接地;若为共阳极(大多端K0),则接+5v电源。每位的段 选线(a~dp)差异与一个8位锁存器的输出口相连,显示器中 的诸君彼此独立,并且诸君的显示字符已经确定,相应锁存 的输出将庇护稳固。 ? 于是,静态显示器的亮度较高。这种显示办法编程容易,管 理也较纯粹,但占用I/O口线资源较多。正在显示位数较多 的状况下,普通都采用动态显示办法。 2019/1/29 42 2) LED动态显示办法 ? 正在多位LED显示时,将完全位的段选线位I/O口控 造。而共阴(或共阳)极大多端K差异由相应的I/O线掌握,杀青诸君的分 时选通。图9-12所示为6位共阴极LED动态显示接口电道。 ? 图9-126位LED动态显示接口电道图9136位动态扫描显示状况 2019/1/29 图9-12 6位LED动态显示接口电道 43 ? 比如,请求显示“E0-20”时, I/O口1和I/O口2轮替送入段选码、 位选码及显示状况如图9-13所示。 段选码、位选码每送入一次后延 时1 ms,因人眼的视觉暂留光阴 为0.1 s(100 ms),因此每位 显示的间隔不必突出20 ms,并 坚持延时一段光阴,以酿成视觉 暂留结果,给人看上去每个数码 管总正在亮。这种办法称为软件扫 描显示。 图9-13 6位动态扫描显示状况 2019/1/29 44 3. LED显示器与89C51接口及显示子轨范 ? 图9-14图中,P0口输出段选码,P1口输出位选码,位选 码占用输出口的线数肯定于显示器位数,好比6位就要占6 条。 ? 75452(或7406)是反相驱动器(30 V高电压,OC门),这是 由于89C51 P1口正逻辑输出的位控与共阴极LED请求的 低电平点亮正好相反,即当P1口位控线输出高电平居,点 亮一位LED。北京赛车历史开奖号 ? 7407是同相OC门,作段选码驱动器。 ? 逐位轮替点亮各个LED,每一位坚持1 ms,正在10~20 ms 之内再一次点亮,反复不止。如此,欺骗人的视觉暂留, 宛如6位LED同时点亮雷同。 ? 扫描显示子轨范流程如图9-15所示。 2019/1/29 45 图9-14 2019/1/29 6只LED动态显示接口 46 图9-15 DIS显 示子轨范流程图 2019/1/29 47 DIS显示子轨范清单如下: DIS: MOV R0,#7EH;显示缓冲区末地点→R0 MOV R2,#01H;位控字,先点亮最低位(右边) MOV A,R2 MOV DPTR,#TAB;字型表头地点→DPTR LP0: MOV P1,A MOV A,@R0;取显示数据 MOVC A,@A+DPTR;取出字形码 MOV P0,A;送出显示 ACALL D1MS;调延时子轨范 DEC R0;数据缓冲区地点减1 MOV A,R2 JB ACC.5,LP1;扫描到最左面的显示器了吗? RL A;没有到,左移1位 MOV R2,A AJMP LP0 LP1: RET 2019/1/29 48 TAB: DB DB DB D1MS:MOV DL: MOV DL1: DJNZ DJNZ RET 3FH,06H,5BH,4FH,66H,6DH 7DH,07H,7FH,6FH,77H,7CH 39H,5EH,79H,71H,40H,00H R7,#02H R6,#0FFH R6,DL1 R7,DL ;延时1 ms子轨范 2019/1/29 49 9.1.3 串行口掌握的键盘/LED显示器接口电道 ? 89C51的串行口RXD和TXD为一个全双工串 行通讯口,但管事正在办法0下可作同步移位寄 存器用,其数据由RXD(P3.0)端串行输出或 输入;而同步移位时钟由TXD(P3.1)端串行输 出,正在同步时钟效力下,杀青由串行到并行 的数据通讯。 ? 正在不须要运用串行通讯的局面,欺骗串行口 加表围芯片74HC164就可组成一个或多个并 行输入/输出口,用于串并转换、并串转换、 键盘驱动或显示器LED驱动。 2019/1/29 50 ? 74HC164是串行输入、并行输 出移位寄存器,并带有扫除端。 其引脚如图9-16所示。 此中: ? Q0~Q7: 并行输出端。 ? A、B: 串行输入端。 ? CLR: 扫除端,零电平居,使 74LS164输出清0。 ? CLK: 时钟脉冲输入端,正在脉 图9-16 74HC164引脚图 冲的上升沿杀青移位。 ? 当CLK=0、CLR=1时, 74HC164坚持素来的数据状况。 2019/1/29 51 1. 硬件电道 ? 如图9-17所示,图中“与”门的效力是避免键盘操作时对显示器的影响, 即仅当P1.2=1时,才怒放显示器传送。 2019/1/29 ?图9-17 串行掌握键盘扫描和显示器接口电道52 2. 轨范清单 KEY: MOV MOV KL0: JNB CLR KL1: JNB JB PK1: ACALL JNB JB PK2: MOV MOV MOV A,#00H;向串行口数据缓冲器送全0 SBUF,A TI,KL0;等候8位数据发送完毕 TI;清隔绝记号 P1.0,PK1;第1行有键按下吗? P1.1,KL1;第2行有键按下吗?若无则不断扫描 D10MS;有键按下,延时10 ms,消逝键颤栗 P1.0,PK2;确定是否键颤栗惹起 P1.1,KL1 R7,#08H;不是键颤栗惹起则逐列扫描 R6,#0FEH;选中第0列 R3,#00H;记下列号初值 2019/1/29 53 PL5: KL2: 描 PK5: MOV MOV JNB CLR JNB JNB MOV RL MOV INC DJNZ RET MOV AJMP MOV MOV MOV JNB CLR A,R6;使某一列为低 SUBF,A TI,KL2 TI P1.0,PK4;是第1行吗? P1.1,PK5;是第2行吗? A,R6;不是本列,则不断下一列 A R6,A R3;列号加1 R7,PL5;若8列扫描完仍未找到,则退出,等候奉行下一次扫 R4,#08H;是第2行,则R4送初值08H PK3;转键经管 R4,#00H;是第1行,则R4送初值00H A,#00H;等候键开释 SBUF,A TI,KL3 TI PK4: PK3: KL3: 2019/1/29 54 KL4: JNB JNB MOV ADD SUBB JNC MOV ADD MOVC MOV MOV INC CJNE MOV SJMP KD: MOV KD1: ACALL RET P1.0,KL4 P1.1,KL4 A,R4;取键号 A,R3 A,#0AH;是号令键吗? KL6;转号令键经管轨范 DPTR,#TABL;字形码表初值送DPTR A,#0AH;复兴键号 A,@A+DPTR;取字形码数据 R0,60H;取显示缓冲区指针 @R0,A;将字形码入显示缓冲区 R0;显示缓冲区地点加1 R0,#60H,KD;判是否到最高位 60H,#58H;保留显示缓冲区地点 KD1 60H,R0 LED;移用送显示子轨范 2019/1/29 55 KL6: KTAB: TABL: LED: LED1: LED2: MOV MUL MOV JMP LJMP LJMP ┊ DB DB DB SETB MOV MOV MOV MOV JNB CLR INC DJNZ CLR RET B,#03H;厘正号令键地点变更表指针 AB DPTR,KTAB;地点变更表首地点送DPTR @A+DPTR;遵循指针跳转 K1;K1、K3…为各号令键任事轨范首地点 K3 C0H,F9H,A4H,B0H;0~9字形码转换 99H,92H,82H,F8H 80H,90H P1.2;怒放显示器掌握 R7,#08H;显示位数R7 R0,#58H;先送最低位 A,@R0;送显示器数据 SBUF,A TI,LED2 TI R0;不断下一位 R7,LED1;所有送完 P1.2;合上显示器掌握 2019/1/29 56 9.2 前向通道中的A/D转换器及接口时间 ? 模/数(A/D)转换电道的品种有:计数比拟型、 逐次靠近型、双积分型等等。 ? 逐次靠近型A/D转换器,正在精度、速率和价钱上 都适中,是最常用的A/D转换器件。 ? 双积分A/D转换器,拥有精度高、抗扰乱性好、 价钱低廉等长处,但转换速率低。 ? 串行输出的A/D芯片因为省俭单片机的I/O口线,越 来越多地被采用。如拥有SPI三线等,拥有2线 位D/A)等。 2019/1/29 57 1 TLC1549串行A/D转换器芯片 1) 要紧本能 ? 逐次比拟型10位A/D转换器。 ? 片内自愿发作转换时钟脉冲,转换光阴≤21 μs; ? 最大总不成调转换差错为±1 LSB; ? 单电源供电(+5 V), ? 最大管事电流仅为2.5 mA; ? 转换结果以串行办法输出; ? 管事温度为-55~+125 ℃。 9.2.1 单通道串行输出A/D芯片TLC1549及接 口 2019/1/29 58 2) 引脚及性能 ? TLC1549M有DIP和FK 2种封装表面。此中, DIP封装的引脚陈设如 图9-18所示。引脚功 能见表9-2。 图9-18 TLC1549的引脚图 2019/1/29 59 表9-2 TLC1549M引脚性能引脚 2019/1/29 60 3) TLC1549的管事办法实时序 ? TLC1549有6种管事办法,如表9-3所列。 ? 此中办法1和办法3属统一类型,办法2和办法4属同 一类型。 ? 普通来说,时钟频率高于280 kHz时,可能为是速 速管事办法; ? 低于280 kHz时,可能为是慢速管事办法。 ? 于是,倘若不切磋I/O CLOCK周期巨细,办法5与 办法3一致,办法6与办法4一致。 2019/1/29 61 表9-3 TLC1549的管事办法办法 2019/1/29 62 ? 管事办法1管事时序图如图9-19所示。图中从CS下跳到 DATA输出数据要有1.3 μs的延时;连绵举行A/D转换时, 正在前次转换结果输出的进程中,同时实行本次转换的采样, 如此大猛进步了A/D转换的速度。 ? 倘若I/O CLOCK的时钟频率为2.1 MHz,则实行一次A/D 转换的光阴约莫为26 μs。倘若用连绵模仿信号举行采样 转换,昭着其转换速度是很高的。 图9-19 办法1管事时序 2019/1/29 63 2 TLC1549与89C51接口电道与轨范 ? TLC1549与89C51的SPI接口如图9-20所示。 图9-20 TLC1549M与89C51的接口电道 2019/1/29 64 89C51读取TLC1549中10位数据轨范如下: ORG 0050H R1549:CLR P3.0;片选有用,选中TLC1549 MOV R0,#2;要读取高两位数据 LCALL RDATA;移用读数子轨范 MOV R1,A;高两位数据送到R1中 MOV R0,#8;要读取低8位数据 LCALL RDATA;移用读数子轨范,读取数据 MOV R2,A;低8位数据送入R2中 SETB P3.0;片选无效 CLR P3.1;时钟低电平 RET;轨范终结 ;读数子轨范 RDATA:CLR P3.1;时钟低电平 MOV C,P3.2;数据送进位位CY RLC A;数据送累加器A SETB P3.1;时钟变高电平 DJNZ R0,RDATA;读数终结了吗 RET;子轨范终结 2019/1/29 65 9.2.2 多通道串行输出A/D芯片TLC2543及接口 ? TLC2543的个性如下: 12位A/D转换器(可8位、12位和16位输出); 正在管事温度规模内转换光阴为10 μs; 11通道输入; 3种内筑的自检形式; 片内采样/坚持电道; 最大±1/4 096的线性差错; 内置编造时钟; 转换终结记号位; 单/双极性输出; 输入/输出的次序可编程(高位或低位正在前); 可声援软件闭机; 输出数据长度可编程。 TLC1543为11个输入端的10位A/D芯片,价钱比TLC2543低。 2019/1/29 66 1 ? ? TLC2543的片内布局及引脚性能 TLC2543引脚如图9-21所示,片内布局如 图9-22所示。 TLC2543片内由通道抉择器、数据(地点 和号令字)输入寄存器、采样/坚持电道、 12位的模/数转换器、输出寄存器、并行到 串行转换器以及掌握逻辑电道7个一面构成。 通道抉择器遵循输入地点寄存器中存放的 模仿输入通道地点,抉择输入通道,并将 输入通道中的信号送到采样/坚持电道中, 然后正在12位模/数转换器中将采样的模仿量 举行量化编码,转换成数字量,存放到输 出寄存器中。 这些数据颠末并行到串行转换器转换成串 行数据,经TLC2543的DOUT输出到微处 理器中。 TLC2543的引脚意思如表9-4所列。 2019/1/29 67 ? ? 图9-21 TLC2543 ? 图9-22 TLC2543片内布局框图 2019/1/29 68 表9-4 TLC2543各引脚界说(1) 2019/1/29 69 表9-4 TLC2543各引脚界说(2) 2019/1/29 70 2. TLC2543的接口时序 ? TLC2543的时序有两种: 运用片选信号CS和不运用 片选信号CS。这两种时序差异如图9-23和图9-24所 示。 2019/1/29 图9-23 运用片选信号CS高位正在前的时序 71 图9-24 不运用片选信号CS高位正在前的时序 2019/1/29 72 3 TLC2543的号令字 ? TLC2543的号令字如下: 通道抉择位 D7D6D5D4 输出数据长度掌握位 D3D2 输出数据次序掌握位 D1 数据极性抉择位 D0 ?输入到输入寄存器中的8位编程数据抉择器件输入通道 和输出数据的长度合格式。其抉择样子如表9-5所列。 2019/1/29 73 表9-5 输入寄存器号令字样子 2019/1/29 74 4 ? ? TLC2543与89C51的SPI接口及轨范 TLC2543串行A/D转换器与89C51的 SPI接口电道如图9-25所示。 SPI(Serial Perpheral Interface)是一种串行表设接口 尺度,串行通讯的两边用4根线根连线差异是: 片选信号、 I/O时钟、串行输入和串行输出。 ? 这种接口的特征是火速、高效,并 且操作起来比I2C要纯粹极少,接 线和89C51的接口电道 ? 对不带SPI或一致接口才气的89C51,须用软 件合成SPI操作来和TLC2543接口。 ? TLC2543的I/O CLOCK、DIN和CS端由单片 机的P1.0、P1.1和P1.3供给。 ? TLC2543转换结果的输出(DIN)数据由P1.2接 收。 ? 89C51将用户的号令字通过P1.1输入到 TLC2543的输入寄存器中,等候20μs早先读 数据,同时写入下一次的号令字。 2019/1/29 76 1) TLC2543与89C51的8位数据传送轨范 TLC2543: MOV MOV CLR MOV MOV 到C中一位 RLC MOV 入TLC2543 SETB P1.0;发作一个时钟 NOP CLR P1.0 DJNZ R5,LOOP MOV R2,A;A/D转换的数据存于R2中 RET 奉行上述子轨范的进程如图9-26所示 2019/1/29 77 MSB: LOOP: R4,#04H;置掌握字,AIN0,8位数据高位正在前 A,R4 P1.3;片选CS有用,选中TLC2543 R5,#08H;传送8位 MOV P1,#04H;P1 2为输入位 C,P1.2;将TLC2543 A/D转换的8位数据串行读 A;带进位位轮回左移 P1.1,C;将掌握字(正在ACC中)的一位经DIN送 图9-26 TLC2543与89C51数据互换示意 图 2019/1/29 78 2) TLC2543与89C51的12位数据传送轨范 ORG 0100H MOV P1,#04H;P1 2为输入位 MOV R6,#0AH;转换10次 MOV R0,#2FH;置数据缓冲区指针 CLR P1.0;置I/O时钟为低 SETB P1.3;置CS为高 ACALL TLC2543;调转换子轨范 SJMP $ TLC2543:MOV A,#00H;筑立通道抉择和管事形式(IN0,12位) CLR P1 3;置CS为低 MOV R5,#0CH;置输出位计数初值 LOOP: MOV P1,#04H;P1 2为输入位 MOV C,P1.2;读入转换数据一位 RLC A;将进位位移给A,即将转换数据的一位读入,同时将控 造字的一位输入C 2019/1/29 79 MOV P1.1,C;送出一位掌握位入2543 SETB NOP CLR CJNE MOV INC CLR LOP1:DJNZ ANL MOV RET P1.0;置I/O时钟为高 P1.0;置I/O时钟为低 R5,#04,LOP1;剩4位了吗? @R0,A;前8位存入RAM R0 A R5,LOOP;未转完不断读节余4位 A,#0FH @R0,A;转换完的存入单位 2019/1/29 80 3) TLC2543与89C51的16位数据传送轨范 ORG START:MOV MOV CLR SETB MOV ACALL ACALL LJMP TLC2543: MOV MOV DW0: CLR JB MSB: MOV LOOP1:MOV RLC 2019/1/29 100H SP,#50H;初始化货仓指针 P1,#04H;初始化P1口 P1.0;置I/O CLOCK为低 P1.3;置CS为高 A,#0FFH TLC2543 STORE STARJ R4,#0CH;读输入数据号令字到R4,AIN0,16位,高位正在前 A,R4;读输入数据到A P1.3;置CS为低 ACC.1,LSB;若输入数据D1为1,开始辈行低字节数据传送 R5,#08;以下传送高字节数据 C,P1 2;读转换数据到C A;转换数据移到A的最低位,输入数据移入C 81 MOV P1.1,C;写输入数据(号令字) SETB P1.0;置I/O CLOCK为高 NOP CLR P1.0;置I/O CLOCK为低 DJNZ R5,LOOP1;判8个数据送完否,未完跳回 MOV R2,A;转换结果的高字节放入R2 MOV A,R4;读输入数据到A JB ACC.1,RETURN;若输入数据D1为1,送数终结 LSB: MOV R5,#08;以下传送低字节数据 LOOP2:MOV C,P1.2 RLC A MOV P1.1,C SETB P1.0 NOP CLR P1.0 DJNZ R5,LOOP2 MOV R3,A;转换结果低字节放入R3 MOV A,R4 JB ACC.1,MSB;若输入数据D1为1,举行高字节数据传送 RETURN:RET 2019/1/29 82 STORE:MOV A,R4;读输入数据到A ANL A,#0F0H;只保存地点位 SWAP A;以下发作活储地点 MOV B,#02 MUL AB ADD A,#30H MOV R1,A MOV A,R2 MOV @R1,A ;把高字节放入相应的偶数地点RAM: ;各通道地点顺次为30H、32H…… INC R1 MOV A,R3 MOV @R1,A ;把低字节放入相应的奇数地点RAM: ;各通道地点顺次为31H、33H…… RET END 2019/1/29 83 9.2.3 逐次靠近型并行输出A/D转换器及接口 1. ADC0809 A/D转换器芯片 ? ? 图9-27所示为ADC0809的引脚图及内部逻辑布局图。 它由8道模仿开闭、8位A/D转换器、三态输出锁存器以及地点 锁存译码器等构成。 图9-27 ADC0809布局 2019/1/29 84 ? 引脚性能讲明如下: – IN0~IN7:8个输入通道的模仿输入端。 – D0~D7:8位数字量输出端。 – START:启动信号,加上正脉冲后,A/D转换早先举行。 – ALE:地点锁存信号。由低至高电平居,把三位地点信号送入通道号地点锁存 器,并经译码器获得地点输出,以抉择相应的模仿输入通道。 – EOC:转换终结信号,是芯片的输出信号。转换早先后,EOC信号变低;转 换终结时,EOC返回高电平。这个信号可能举动A/D转换器的状况信号来 查问,也可能直接用作隔绝仰求信号。 – OE:输出批准掌握端(开数字量输出三态门)。 – CLK:时钟信号。最高批准值为640 kHz。 – VREF+和VREF-:A/D转换器的参考电压。 – VCC:电源电压。因为是CMOS芯片,批准的电压规模较宽,可能是+5~ +15V。 ? 8位模仿开闭地点输入通道的闭联见表96。 2019/1/29 85 ADC0809的时序图见图9-28。 表9-6 8位模仿开闭性能表 ADDC 0 0 0 ┇ 1 ADDB 0 0 1 ┇ 1 ADDA 0 1 0 ┇ 1 输入通道 号 IN0 IN1 IN2 ┇ IN7 图9-28 ADC0809的时序图 2019/1/29 86 2. ADC0809与89C51接口 ? ADC0809与89C51连合可采用查问办法,也可采用隔绝办法。图9-29为隔绝方 式连合电道图。因为ADC0809片内有三态输出锁存器,于是可直接与89C51接 口。 图9-29 ADC0809与89C51的连合 2019/1/29 87 3. 8道巡游检测编造 【例9-3】某粮库或某冷冻厂需对8点(8个冷冻室或8个粮仓)举行温度巡游检 测。请求安排一个单片机巡游检测编造,使其能对各冷冻室或各粮仓的 温度巡游检测并加以经管。设被测温度规模为-30~+50℃,温度检测精 度请求不大于±1℃。 将读数顺次存放正在片表数据存储器A0H~A7H单位。其主轨范和隔绝任事程 序如下: 主轨范: MAIN: MOV R0,#0A0H;数据暂存区首址 MOV R2,#08H;8道计数初值 SETB IT1;脉冲触发办法 SETB EA;开隔绝 SETB EX1 MOV DPTR,#7FF8H;指向0809首地点 MOVX @DPTR,A;启动A/D转换 HERE:SJMP HERE;等候隔绝 2019/1/29 88 隔绝任事轨范: MOVX A,@DPTR;读数 MOVX @R0,A;存数 INC DPTR;更新通道 INC R0;更新暂存单位 DJNZ R2,DONE RETI DONE:MOVX @DPTR,A RETI 2019/1/29 89 1 9.2.4 3 位双积分A/D转换器及接口时间 2 1 ? 合用于单片机接口的有3 位双积分A/D转换器 2 1 MC14433(精度相当于11位二进造数)和4 位双积 2 分A/D转换器ICL7135(精度相当于14位二进造数)。 2019/1/29 90 1. MC14433芯片先容 ? MC14433要紧个性参数如下: – 转换精度拥有±1/1 999的区别率或读数的±0.05%±1个 字(相当于11位二进造数); – 电压量程分1.999 V和199.9 mV两档; – 转换速率为3~10次/秒,相应的时钟频率蜕变规模为 50~150 kHz; – 输入阻抗大于100 MΩ; – 基准电压取2 V或200 mV(差异对应量程为1.999 V或 199.9 mV); – 拥有过量程和欠量程输出记号; – 片内拥有自愿极性转换和自愿调零性能; – 转换终结输出颠末多道调造的BCD码; – 管事电压规模为±4.5~±8 V或9~16 V; – 当电源为±5 V时,样板功耗为8 mW。 2019/1/29 91 ? MC14433为24脚双列直插式封装, 其引脚如图9-30所示。引脚性能 先容如下: – – – – VAG(1脚) :模仿地。 VREF(2脚):基准电压输入端。 VX(3脚):被测电压输入端。 R1、R1/C1和C1(4~6脚):表接 积分阻容元件,4脚和6脚为输入线脚为积分波形输出端。若时钟为66 kHz,R1为470 kΩ(2 V)或27 kΩ(200 mV)时,一次转换的光阴约为250 ms。 – C01和C02(7和8脚):表接失调补 偿电容。大凡取0.1μF。 – DU(9脚):守时输出掌握端。若输入 一个正脉冲,则使转换结果送至结果 寄存器。 2019/1/29 图9-30 MC14433的引脚图 92 – EOC(14脚):一次转换终结记号输出。每一次A/D转换终结时便输出一个正 脉冲,其宽度为时钟周期的1/2。若把9脚和14脚相连合,则每次转换终结都 送到输出锁存器。正在本质电道中常把它们相连。 – CLKI和CLKO(10和11脚):时钟信号输入、输出端。大凡表接一个300 KΩ左 右的电阻。 – OR(15脚):过量程记号。当|Vx|>VR时,输出低电平。 – DS4~DS1(16~19脚):个、十、百、千位选通特点位输出信号,宽度为18 个时钟周期。当DS1=1时,Q3~Q0输出为千位数;DS2=1时,Q 3~Q0输出为百位数……。 – Q3~Q0(23~20脚):经A/D转换后的BCD码结果输出端。 – VEE(12脚):负电源,为电道最低电平端。 – VSS(13脚):输出低电平基准,为数字地或称编造地。 – VDD(24脚):正电源。若VSS=VAG,则输出幅度为VAG ~ VDD ;若 VSS =VEE,则输出幅度为VEE~ VDD 。 ? 图931为MC14433的转换输出时序。 2019/1/29 93 图9-31 MC14433选通脉冲时序 2019/1/29 94 ? ? DS1=1时,Q3Q2Q1Q0输出过量程、欠量程、千位和极性记号的编码如表9-7所 列。 由表9-7可知,Q3正在Q0=0时,吐露千位数的实质: Q3=0,千位为1;Q3=1,千位 为0。Q3正在Q0=1时,吐露过、欠量程: Q3=0,吐露过量程;Q3=1吐露欠量程。 当量程选为1.999 V时,过量程吐露被测信号大于1.999 V;欠量程吐露被测信号幼 于0.179 V。Q2吐露被测信号的极性: Q2=1,为正极性;Q2=0,为负极性。 表9-7 DS1选通时Q0~Q3吐露的输出结果 DS 1 1 1 1 Q 3 1 0 × Q 2 Q 1 Q 0 0 0 0 输出结果状况 千位数为0 千位数为1 输出结果为正 × × × × 1 × 1 1 2019/1/29 × 0 1 0 × 0 1 1 输出结果为负 输入信号过量程 输入信号欠量程 95 × × × × 1 2. MC14433与89C51接口 ? MC14433与89C51的接口电道 如图9-32所示。 ? 该电道采用隔绝办法管造 MC14433的操作。因为引脚 EOC与DU连合正在一块,因此, MC14433能自愿连绵转换,每 次转换终结便正在EOC脚输出正 脉冲,经反相后举动89C51的 表部隔绝仰求信号INT1。 图9-32 5G14433与89C51单片机直接连 接的硬件接口 2019/1/29 96 9.3 编造后向通道筑设及接口时间 ? 后向通道是估量机杀青掌握运算经管后,对被控对 象的输出通道接口。 ? 编造的后向通道是一个输出通道,其特征是弱电控 造强电,即幼信号输出杀青大功率掌握。常见的被 控对象有电机、电磁开闭等。 ? 单片机杀青掌握是以数字信号或模仿信号的表面通 过I/O口送给被控对象的。此中,数字信号样子 的开闭量、二进造数字量和频率量可直接用于开闭 量、数字量编造及频率调造编造的掌握;但对待一 些模仿量掌握编造,则应通过D/A转换器转换成 模仿量掌握信号后,才气杀青掌握。 2019/1/29 97 9.3.1 后向通道中的功率开闭器件及接口 1. 继电器及接口 1) 单片机与继电器的 接口 一个样板的继电器与 单片机的接口电道如 图9-33所示。 图9-33 继电器接口 2019/1/29 98 2) 单片机与固态继电器接口 ? 固态继电器简称SSR(Solid State Relay),是一种 四端器件: 两头输入,两头输出,它们之间用光 耦合器远隔。它是一种新型的无触点电子继电器, 其输入端仅请求输入很幼的掌握电流,与TTL、 HTL、CMOS等集成电道拥有较好的兼容性,而 其输出则用双向晶闸管(可控硅)来接通和断开负 载电源。 ? 图9-34所示为固态继电器内部布局。 ? 图9-35为89C51单片机I/O口线与固态继电器 SSR接口电道。 2019/1/29 99 图9-34固态继电器内部布局 图9-35 I/O口线. 光电耦合器(远隔器)件及驱动接口 ? 后向通道往往所处境况卑劣, 掌握对象多为大功率伺服驱动 机构,电磁扰乱较为紧张。为 抗御扰乱窜入和担保编造的安 全,一再采用光电耦合器,用 以杀青信号的传输,同时又可 将编造与现场隔脱离。 ? 晶体管输出型光电耦合器的受 光器是光电晶体管,如图9-36 所示。 ? 图9-36是运用4N25的光电耦合 器接口电道图。 图9-36 光电耦合器4N25的接口电道 2019/1/29 101 ? 图9-36所示的接口电道中,运用同相驱动器OC门7407举动 光电耦合器4N25输入端的驱动。光电耦合器输入端的电流一 般为10~15 mA,发光二极管的压降为1.2~1.5 V。限流电 阻由下式估量: V CC?(VF ? VCS ) R? IF ? 式中: VCC为电源电压; ? VF为输入端发光二极管的压降,取1.5 V; ? VCS为驱动器7407的压降,取0.5V。 ? 图9-36所示电道请求IF为15 mA,则限流电阻值估量如下: R=200Ω 2019/1/29 102 ? 光电耦合器也常用于较远隔绝的信号远隔传送。一方面,光电耦合器可能 起到远隔两个编造地线的效力,使两个编造的电源彼此独立,消逝地电位 差别所发作的影响;另一方面,光电耦合器的发光二极管是电流驱动器件, 可能变成电流环道的传送表面。因为电流环电道是低阻抗电道,它对噪音 的敏锐度低,于是,进步了通讯编造的抗扰乱才气。其常用于有噪音扰乱 境况下的传输,最大传输隔绝为900 m。图9-37是用光电耦合器构成的电 流环发送和吸收电道。 图9-37 电流环电道 2019/1/29 103 3. 光电耦合驱动晶闸管(可控硅)功率开闭及接口 ? 图9-38是4N40和 MOC3041的接口驱动 电道。 ? 4N40是常用的单向晶 闸管输出型光电耦合 器,也称固态继电器。 ? MOC3041是常用的双 向晶闸管输出的光电 耦合器(固态继电器)。 图9-38 晶闸管输出型光电耦合器驱动接口 2019/1/29 104 9.3.2 串行输入D/A芯片TLC5615接口时间 ? TLC5615是拥有3线串行接口的数/模转换器。其输出为电压型,最大输 出电压是基准电压值的两倍。带有上电复位性能,上电时把DAC寄存器 复位至全0。TLC5615的本能价钱比拟高,墟市售价比拟低。 2019/1/29 105 1. TLC5615的特征 ? ? ? ? ? ? ? ? ? 2019/1/29 10位CMOS电压输出; 5 V单电源管事; 与微经管器3线串行接口(SPI); 最大输出电压是基准电压的2倍; 输出电压拥有和基准电压一致的极性; 成立光阴12.5 μs; 内部上电复位; 低功耗,最高为1.75 mW; 引脚与MAX515兼容。 106 2. 性能方框图 ? TLC5615的性能方框图如图9-39所示。 图9-39 TLC5615性能方框图 2019/1/29 107 3. 引脚陈设及性能 图9-40 TLC5615引脚图 ? TLC5615的引脚陈设及性能讲明 差异见图9-40及表9-8。 表9-8 引脚性能 引脚 名称 DIN SCLK /CS DOUT AGND REFIN OUT VDD 2019/1/29 序号 1 2 3 4 5 6 7 8 I/O I I I O I O 讲明 串行数据输入 串行时钟输入 芯片抉择。低有用 用于菊花链(daisy chaining)的串行数据输出 模仿地 基准电压输入 DAC模仿电压输出 正电源(4.5~5.5V) 108 4. TLC5615的时序认识 ? TLC5615的时序图如图9-41所示。 图9-41 时序波形图 2019/1/29 109 5. TLC5615的输入/输出闭联 图9-42的D/A输入/输出闭联如表9-9所列。 表9-9 D/A转换闭联 数字量输入 1111 1111 11(00) ┇ 1000 0000 01(00) 1000 0000 00(00) 0111 1111 11(00) ┇ 模仿量输出 2VREFIN×1023/1024 ┇ 2VREFIN×513/1024 2VREFIN×512/1024 2VREFIN×511/1024 ┇ 图9-42 TLC5615与89C51接口电道 0000 0000 01(00) 0000 0000 00(00) 2VREFIN×1/1024 0V 2019/1/29 110 ? 由于TCL5615芯片内的输入锁存器为12位宽,因此要正在10位数字的低 位后面再添上两位数字××。××为不亲切状况。串行传送的倾向是 先送出高位MSB,后送出低位LSB。 10位 × × MSB LSB ? 倘若有级联电道,则应运用16位的传送样子,即正在最高位MSB的前 面再加上4个虚位,被转换的10位数字正在中央。 4个虚位 10位 × × 2019/1/29 111 6. TLC5615与89C51的串行接口电道 ? 图9-42为TLC5615和89C51单片机的接口电道。将89C51要输出的12 位数据存正在R0和R1寄存器中,其D/A转换轨范如下: CLR P3.0;片选有用 MOV R2,#4;将要送入的前4位数据位数 MOV A,R0;前4位数据送累加器低4位 SWAP A;A中高4位和低4位换取(4位数正在高位) LCALL WRdata;由DIN输入前4位数据 MOV R2,#8;将要送入的后8位数据位数 MOV A,R1;8位数据送入累加器A LCALL WRdata;由DIN输入后8位数据 CLR P3.1;时钟低电平 SETB P3.0;片选高电平,输入的12位数据有用 RET;终结送数子轨范如下:WRdata: NOP;空操作 LOOP: CLR P3.1;时钟低电平 RLC A;数据送入进位位CY MOV P3.2,C;数据输入TLC5615有用 SETB P3.1;时钟高电平 DJNZ R2,LOOP;轮回送数 2019/1/29 RET 112 9.3.3 并行输入D/A芯片及接口时间 1. 并行输入D/A转换芯片——DAC0832 ? DAC0832引脚图和逻辑框图如图9-43所示。DAC0832主 要由两个8位寄存器和一个8位D/A转换器构成。 图9-43 DAC0832布局 2019/1/29 113 ? 图中,LE1和LE2是寄存号令。当LE1=1时,输入寄存器的输出随输入 蜕变;当LE1=0时,数据锁存正在寄存器中,不再随数据总线上的数据变 化而蜕变。ILE为高电平,且CS与WR1同时为低时,使得LE1=1;当 WR1变高时,8位输入寄存器便将输入数据锁存。XFER与WR2同时为 低,使得LE2=2,8位DAC寄存器的输出随寄存器的输入蜕变。WR2上 升沿将输入寄存器的消息锁存正在DAC寄存器中。图中的RFB是片内电阻, 为表部运算放大器供给反应电阻,用以供给适宜的输出电压;VREF端由 表部电道供给+10~-10V的参考电源;IOUT1与IOUT2是两个电流输出端。 ? 欲将数字量D0~D7转换为模仿量,只须使WR2=0,XFER=0,DAC 寄存器为不锁存状况,即ILE=1,CS和WR1端接负脉冲信号,即可完 成一次转换;或者WR1=0,CS=0,ILE=1,输入寄存器为不锁存状 态,而WR2和XFER端接负脉冲信号,可到达同样宗旨。 2019/1/29 114 1) DAC0832引脚性能 ? D0~D7: 数字量数据输入线。 ? ILE: 数据锁存批准信号,高电平有用。 ? CS: 输入寄存器抉择信号,低电平有用。 ? WR1: 输入寄存器的“写”选通讯号,低电平有用。 ? XFER: 数据变更掌握信号线,低电平有用。 ? WR2: DAC寄存器的“写”选通讯号。VREF: 基准电压输入线。 ? RFB: 反应信号输入线,芯片内已有反应电阻。 ? IOUT1和IOUT2: 电流输出线的和为常数, IOUT1随DAC寄存 器的实质线性蜕变。普通正在单极性输出时,IOUT2接地;正在双极性输出时, 接运放。 ? VCC: DGND: AGND: 模仿信号地。 2019/1/29 115 LE1 ? CS ? WR1? ILE LE2 ? WR 2 ? XFER 当LE1=1时,输入锁存器状况随数据输入线时,则锁存输入数据。 当LE2=1时,DAC寄存器的输出随输入状况蜕变; LE2=0时,锁存输入状况。 2019/1/29 116 2) DAC0832个性 ? 要紧的个性参数如下: – – – – – – – – 区别率为8位。 只需正在满量程下安排其线性度。 可与完全的单片机或微经管器直接接口,须要时亦可不与微经管 器连合而孤独运用。 电流安祥光阴为1 μs。 可双缓冲、单缓冲或直通数据输入。 功耗低,约为200 mW。 逻辑电平输入与TTL兼容。 单电源供电(+5~+15 V)。 2019/1/29 117 2. D/A转换器与89C51接口 ? 正在D/A芯片中,有很多芯片输出量是电流,而本质利用中一再须要的是模仿电压。 正在这种状况下,D/A芯片的输出还须要有将电流转换为电压的电道。下面先容两 种电道供参考: 图9-44(a)是反相电压输出电道,输出电压VOUT=-iR;图 9-44(b)是同相电压输出电道,输出电压VOUT=iR(1+R2/R1)。 图中, 当VREF接+5 V(或-5 V)时,输出电压规模是0~5 V(或0~- 5 V);当VREF接+10 V(或-10 V)时,输出电压规模是0~10 V (或0~-10 V)。输入数字量的蜕变,将惹起模仿量输出的蜕变。 ? 图9-44 D/A转换输出电道 2019/1/29 118 1) 直通式管事办法利用 ? 图9-45所示为直通式管事办法的 连合法子。输入到DAC0832的 D0~D7数据不经掌握直达8位 D/A转换器。 ? 当某一根地线或地点译码器的输 出线的CS脚有用 (低电平)或CS与WR1直接接 地时,数据线上的数据字节直通 D/A转换器转换并输出。 图9-45 DAC0832直通式电压输出电道 2019/1/29 119 2) 单缓冲管事办法利用 ? 利用编造中,正在唯有一同模仿量输出或几道模仿量不须要同时输出的场 合,应采用单缓冲办法。正在这种办法下,将二级寄存器的掌握信号并接, 输入数据正在掌握信号效力下(一次掌握,一次缓冲),直接打入8位 DAC寄存器中并进入8位D/A转换器举行D/A转换。如图9-46所示。 2019/1/29 图9-46 一同D/A输出连线图(单道模仿量输出) 120 ? 当奉行“写”指令时,DAC0832相应的控 造信号时序如图9-47所示。 图9-47 DAC0832时序图 2019/1/29 121 ① 发作锯齿波的轨范 ? 轨范框图如图9-48所示。轨范如 下: MOV DPTR,#2FFFH;筑立D/A口地 址 MOV A,#00H;输入数字量00H到A(初 值为00H) LOOP: MOVX @DPTR,A;输出对应于A实质的模仿量 图9-48 D/A发作锯齿波轨范框图 INC A;篡改A的实质(素来值加1) AJMP LOOP; 2019/1/29 122 ② 发作方波的轨范 MOV LOOP: MOV MOVX ACALL MOV MOVX ACALL AJMP DPTR,#2FFFH;筑立D/A口地点 A,#0FFH;给A送最大值 @DPTR,A;D/A输出相应模仿量 $2700H;延时 A,#00H;给A送最幼值 @DPTR,A;D/A输出相应模仿量 $2700H;延时 LOOP;返回轮回 2019/1/29 123 9.4 研究题与习题 1. 为什么要消逝键盘的呆滞颤栗?有哪些法子? 2. 试述A/D转换器的品种及特征。 3. 安排一个2×2队伍(同正在P1口)式键盘电道并编写 键扫描子轨范。 4. 试安排一个LED显示器/键盘电道。 5. 正在一个89C51利用编造中,89C51以隔绝办法通过并 行接口74LS244读取A/D器件5G14433的转换结果。 试画出相闭逻辑电道,并编写读取A/D结果的中 断任事轨范。 2019/1/29 124 6. 正在一个fOSC为12 MHz的89C51编造中接有一片D/A器件DAC0832,它的地 址为7FFFH,输出电压为0~5 V。请画出相闭逻辑框图,并编写一个轨范, 使其运转后能正在示波器上显示出锯齿波(设示波器X倾向扫描频率为50 μ s/ 格,Y倾向扫描频率为1 V/格)。 7. 正在一个fOSC为12 MHz的89C51编造中接有一片A/D器件ADC0809,它的地 址为7FF8H~7FFFH。试画出相闭逻辑框图,并编写ADC0809初始化轨范和守时 采样通道2的轨范(假设采样频率为1 ms/次,每次采样4个数据,存于89C51内 部RAM 70H~73H中)。 8. 正在一个89C51编造中扩展一片74LS245,通过光电远隔器件表接8道TTL开闭量 输入信号。试画出其相闭的硬件电道。 9. 用8051的P1口作8个按键的独立式键盘接口。试画出其隔绝办法的接口电道及 相应的键盘经管轨范。 10. 试讲明非编码键盘的管事道理。怎样去键颤栗?怎样决断键是否开释? 2019/1/29 125 11. DAC0832与89C51单片机连合时有哪些掌握信号?其效力是什么? 12. 正在一个89C51单片机与一片DAC0832构成的利用编造中,DAC0832的地点为 7FFFH,输出电压为0~5 V。试画出相闭逻辑框图,并编写发作矩形波,其波 形占空比为1∶4,高电平居电压为2.5 V,低电平居电压为1.25 V的转换程 序。 13. 正在一个由89C51单片机与一片ADC0809构成的数据收罗编造中,ADC0809的地 址为7FF8H~7FFFH。试画出相闭逻辑框图,并编写出每隔1 min轮替收罗一次 8个通道数据的轨范。共采样100次,其采样值存入片表RAM 3000H早先的存储 单位中。 14. 以DAC0832为例,讲明D/A的单缓冲与双缓冲有何差别。 15. 以DAC0832为例,讲明D/A的单极性输出与双极性输出有何差别。 16. A/D和D/A的要紧时间目标中,“区别率”与“转换精度”(即“量化差错” 或“转换差错”)有何差别。 注: 第14、15和16题的谜底正在参考文件\[2\]中的P101~105。《单片机练习辅 帮试验及解答教材》 2019/1/29 126

相关新闻推荐

Copyright 2019 北京赛车历史开奖号_北京赛车pk10历史记录网站地图