第10章--数字信号输入输出接口电路

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第10章数字信号输入/输出接口电路10.1开关信号的输入/输出方式10.2I/O资源及扩展10.3STM8S与总线接口设备的连接10.4简单显示驱动电路10.5LED数码管及其显示驱动电路10.6LCD模块显示驱动电路10.7键盘电路10.8光电耦合器件接口电路10.9单片机与继电器接口电路10.10电平转换电路广东工业大学物理与光电工程学院©广东工业大学物理与光电工程学院©10.1开关信号输入/输出方式开关信号包括脉冲信号、电平信号。在单片机控制系统中,常采用如下几种方式现实开关信号的输入和输出。广东工业大学物理与光电工程学院©1.直接解码输入/输出方式在这种方式中,直接利用CPUI/O引脚输入/输出开关信号,如图10-1(a)所示。2.编码输入/输出方式在这种方式中,将若干条用途相同(均为输入或输出)的I/O引脚组合在一起,按二进制编码后输入或输出。例如,对于n条输出引脚,经过译码后,可以控制2n个设备;对于2n个不同时有效的输入量,经过编码器与CPU连接时,也只需要n个引脚,如图(b)所示。广东工业大学物理与光电工程学院©3.矩阵输入/输出方式将CPUI/O引脚分成两组,用N条引脚构成行线,M条引脚构成列线,行、列的交叉点就构成了所需的N×M个检测点。显然,所需的I/O引脚数目为N+M,而检测点总数达到了N×M个,如图(C)所示。可见,I/O引脚的利用率较高,硬件开销少,因此得到了广泛应用。在矩阵编码方式中,如果行线、列线均定义为输出状态,就可以输出N×M个开关量;当行、列线中有一组为输出线,另一组为输入线时就构成了N×M个输入检测点,如矩阵键盘电路。广东工业大学物理与光电工程学院©10.2I/O资源及扩展通过单片机实现数字信号的输入处理和输出控制时,必须了解以下问题:(1)准确理解CPU中各引脚的功能,确定可利用的I/O资源,并做出相对合理的使用规划。(2)作输出控制信号时,必须了解CPU复位期间和复位后该引脚的状态。MCS-51系列CPU在复位期间和复位后各I/O端口的状态可参阅第2章有关内容。(3)了解I/O端口输出级电路结构和I/O端口的负载能力。只有了解了CPUI/O端口输出级电路结构和负载能力,才可能设计出原理正确、工作可靠的I/O接口电路。(4)了解I/O端口输出电平范围。(5)了解I/O端口耐压。广东工业大学物理与光电工程学院©广东工业大学物理与光电工程学院©10.2.1STM8S系统扩展I/O引脚资源策略STM8S芯片总线不开放,在STM8S中扩展I/O引脚的原则是:(1)外部所有输入信号直接与MCU的I/O引脚相连,以便MCU直接处理。(2)高速输出信号直接从MCU芯片I/O引脚输出。(3)当I/O引脚资源紧张时,低速脉冲信号、电平信号可通过串入并出移位寄存器芯片,如一片或两片74HC595串行输出。(4)更换封装。(5)必要时可考虑用另一个MCU芯片扩展I/O引脚。广东工业大学物理与光电工程学院©通过串入并出芯片扩展输出引脚图10-2通过串入并出芯片扩展输出引脚广东工业大学物理与光电工程学院©广东工业大学物理与光电工程学院©10.2.2利用串入并出及并入串出芯片扩展I/O口在速度要求不高情况下,可利用74LS164、74HC594、74HC595等“串入并出”芯片扩展输出口;利用74LS165、74HC597等“并入串出”芯片扩展输入口,也是一种简单、实用的I/O口扩展方式。例10-1假设U1扩展输出引脚输出的信息存放在EDATA1单元中,U2扩展输出引脚输出的信息存放在EDATA1+1单元中,则将数据串行输出到74HC595的输出端的程序段如下:;在RAM1段定义EDATA1、EDATA2EDATA1DS.B1;U1输出信息EDATA2DS.B1;U2输出信息;---I/O引脚初始化---BSETPC_DDR,#4;1,PC4引脚定义为输出(SDI)BSETPC_CR1,#4;1,选择推挽方式BSETPC_CR2,#4;1,选择高速输出#DefineSdiPC_ODR,#4;1,PC4引脚定义为串行数据输入端(SDi)BSETPC_DDR,#3;1,PC3引脚定义为输出(SCLK)BSETPC_CR1,#3;1,选择推挽方式BSETPC_CR2,#3;1,选择高速输出#DefineSCLKPC_ODR,#3;1,PC3引脚定义为串行移位脉冲SCLKBRESSCLK;静态时SCLK引脚输出低水平广东工业大学物理与光电工程学院©BSETPC_DDR,#2;1,PC2引脚定义为输出(PCLK)BSETPC_CR1,#2;1,选择推挽方式BRESPC_CR2,#2;0,选择低速输出#DefinePCLKPC_ODR,#2;将PC2引脚定义为并行送数脉冲PCLKBRESPCLK;静态时PCLK引脚输出低水平;-------串行数据输出程序段----------LDWX,#1;先输出U2芯片的引脚信息Serial_LOOP1:LDA,(EDATA1,X);取输出数据MOVR03,#8;左移8次Serial_LOOP2:BRESSCLK;串行移位脉冲SCLK置为低电平RLCA;带进位C循环左移,即先输出b7位BCCMSdi;C送Sdi引脚(即数据送SDI引脚)NOP;插入NOP适当延迟BSETSCLK;置为高电平,形成上升沿DECR03JRNER03,Serial_LOOP2DECWXJRPLSerial_LOOP1;当X=0时,循环BRESSCLK;串行移位脉冲SCLK恢复为低电平状态BSETPCLK;并行输出锁存脉冲PCLK置为高电平,形成上升沿NOP;延迟BRESPCLK;并行输出锁存脉冲PCLK恢复为低电平状态广东工业大学物理与光电工程学院©10.2.3利用MCU扩展I/O①不仅扩展了I/O引脚,也扩展了其它硬件资源;②部分工作可由扩展MCU完成,减轻了主MCU的负担。③MCUI/O端口电平状态可以编程设定,从面少去承担逻辑转换的与非门电路芯片。可使用UART、SPI接口同步串行通信方式工并行通信方式实现两个MCU之间的信息交换。广东工业大学物理与光电工程学院©10.2.3利用MCU扩展I/O广东工业大学物理与光电工程学院©10.3STM8S与总线接口设备的连接STM8S系列MCU总线不开放,当需要与总线接口设备,如总线接口液晶模块(LCM)相连时,可用MCU的某一个I/O引脚模拟总线接口设备的读选通信号(/RD)以及定控制信号(/WR)。可将其中功能单一的I/O口作为数据总线接口。如64引脚或80引脚封装的PG口。广东工业大学物理与光电工程学院©图10-4ST8SMCU与总线设备连接示意图广东工业大学物理与光电工程学院©;实现图10-4所示连接的数据口初始化指令系列:MOVPG_CR1,#0FFH;输出为推挽,输入为带上拉电阻CLRPG_CR2;输出时,PG口处于低速方式BRESPC_ODR,#2;输出片选信号/CE;NOPMOVPG_DDR,#0FFH;PG定义为输出MOVPG_CR2,#0FFH;根据速度,选择PG口输出信号边沿时间LDPG_ODR,A;数据输出BRESPC_ODR,#4;使写控制信号/WR为低电平,形成/WR选通脉冲的前沿(下降沿);NOPBSETPC_ODR,#4;使写控制信号/WR为高电平,形成/WR选通脉冲的后沿(上降沿)BSETPC_ODR,#2;如果是非连续写操作,则取消片选信号/CE;---读操作指令系列BRESPC_ODR,#2;输出片选信号/CE;NOPCLRPG_DDR;PG口定义为输入CLRPG_CR2;为0,输入时可不理会CR2的内容BRESPC_ODR,#3;使选通信号/RD为低电平,形成/RD选通脉冲的前沿(下降沿);NOPLDA,PG_IDR;从总线读数据BSETPC_ODR,#3;使选通信号/RD为高电平,形成/RD选通脉冲的后沿(上降沿)BSETPC_ODR,#2;如果是非连续读操作,则取消片选信号/RD广东工业大学物理与光电工程学院©10.3简单显示驱动电路6.3.1发光二极管发光二极管在本质上与普通二极管差别不大,也是一个PN结,同样具有正向导通,反向截止的特性。发光二极管的伏安特性曲线与普通二极管相似,如图6-12所示(为了便于比较,图中用虚线表示普通二极管的伏安特性曲线)。图10-5LED二极管伏安特性曲线广东工业大学物理与光电工程学院©(1)外加正向电压小于0.9V~1.1V时,LED不导通;当外加电压大于正向阀值电压时,LED导通,同时发光。显然,LED二极管的正向导通电压比普通二极管大,具体数值与LED材料有关,如表10-7所示。(2)LED导通后,伏安特性曲线更陡,即LED导通后,内阻更小(因此也常用作降压元件,如将+5V电源降为3V电源)。(3)LED二极管反向击穿电压比普通二极管低,一般在5V~10V之间。广东工业大学物理与光电工程学院©LED材料光颜色正向导通电压VF(V)砷化镓(GaAs)红光1.2磷化镓铟(InGaP)红光/黄橙1.6~2.0磷砷化镓(GaAsP)红光1.6~1.8镓铝砷(GaAlAs)红光1.6~1.8磷化镓(GaP)红光1.9~2.5氮化镓铟(InGaN)蓝光3.0~3.7磷化铟镓铝(AlGaInP)橙绿/绿光3.0~3.5LED二极管的亮度与LED材料、结构以及工作电流有关。一般来说,工作电流越大,LED二极管的亮度也越大,但亮度与工作电流的关系因材料而异。例如GaP发光二极管,当工作电流增加到一定数值后,电流增加,LED亮度不再增大,即出现亮度饱和现象。而GaAsP发光二极管的亮度随电流的增大而增大,在器件因功耗增加而损坏前观察不到亮度饱和现象。LED发光二极管工作电流一般控制在2~20mA之间,最大不超过50mA,否则会损坏。而小尺寸高亮度LED工作电流控制在2~10mA范围内,就可获得良好的发光效果。广东工业大学物理与光电工程学院©直径在5mm以下的小尺寸高亮度LED工作电流不大,一般可直接由MCU芯片I/O引脚驱动,如图10-6(a)所示。对于推挽输出引脚,采用图10-6(b)所示的高电平有效驱动方式似乎没有什么不妥,但是应该避免使用高电平有效驱动方式,原因是空穴迁移率远低于电子迁移率,导致尺寸、掺杂浓度相同的P沟MOS管沟道电阻大于N沟MOS管,除非是上下两管导通电阻相同(体现在相同驱动电流的情况下,两管压降相同)。10.4.2驱动电路广东工业大学物理与光电工程学院©例如,对STM8S芯片标准驱动能力引脚来说,当负载电流均为4mA时(芯片温度为85℃),从技术手册查到在拉电流负载状态下,P沟管压降(VDD-VOH)为0.5V,而在灌电流负载状态下,N沟管压降(VOL)约为0.3V,管耗差0.8mW。尽管许多MCU芯片单个I/O引脚拉电流及灌电流能力均达10~20mA,驱动小尺寸LED发光二极管似乎不是问题,但受MCU芯片散热条件限制,同一个I/O口以及所有I/O引脚电流总和有严格的限制(参见2.3.7节)。因此,当灌电流或拉电流大于2mA时,建议在负载与MCU芯片之间增设驱动器(门电路或三极管等),如图10-6(c)~(e)所示。广东工业大学物理与光电工程学院©图10-6MCU与LED的连接方式广东工业大学物理与光电工程学院©图10-6(a)采用直接驱动方式,I/O引脚定义为OD输出方式,限流电阻由LED工作电流IF确定,即R1=FOLFIVVVDD其中,VF为LED二极管工作电压,其大小与材料有关(对于红光LED,估算限流电阻时VF一般取2.0V);VOL为MCUI/O引脚输出低电平时电压,其大小与灌电流有关(此处为IF),可从数据手册中查到。广东工业大学物理与光电工程学院©图10-6(b)也采用直接驱动方式,I/O引脚定义为推挽输出方式。输出高电平时,LED发光,其限流电阻的计算与图10-6(a)的类似。图10-6(c)采用PNP三极管驱动,当Pxy引脚输出低电平时,三极管饱和导通,限流电阻R1与LED内阻(几欧姆~几十欧姆)构成了集电极等效电阻RC。限流电阻

1 / 285
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功