《MCS-51单片机的输入输出通道接口》由会员分享,可在线阅读,更多相关《MCS-51单片机的输入输出通道接口(43页珍藏版)》请在金锄头文库上搜索。
1、单片机原理及应用单片机原理及应用教学课件教学课件第第5 5章章 MCS-51MCS-51单片机的输入单片机的输入/ /输出输出通道接口通道接口 主要内容:输入/输出通道的组成与配置,A/D、D/A转换器及其接口技术。通过本章的学习,使读者了解输入/输出通道设计的基本原理和方法,掌握常用A/D、D/A芯片及其与MCS-51单片机的接口电路与程序设计。单片机原理及应用单片机原理及应用教学课件教学课件 输入通道(前向通道):输入通道(前向通道):被测对象与单片机联系的信号通道。包括传感器或敏感元件、通道结构、信号调节、A/D转换、电源的配置、抗干扰等。 输出通道(后向通道):输出通道(后向通道):单
2、片机与被控对象联系的信号通道。包括功率驱动、干扰的抑制、D/A转换等。 5.1.1 5.1.1 传感器传感器 传感器:传感器:传感器是将各种输入变量转换成可供测量的信号的前端部件。 传感器的分类:传感器的分类: (1)按传感器的用途可以将传感器分为:压敏和力敏传感器、位置传感器、液面传感器、能耗传感器、速度传感器、热敏传感器、加速度传感器、射线辐射传感器、振动传感器、湿敏传感器、磁敏传感器、气敏传感器、真空度传感器和生物传感器等。 (2)按传感器输出信号标准可将传感器分为: 模拟传感器、数字传感器、开关传感器等。 5.1 5.1 输入输入/ /输出通道概述输出通道概述单片机原理及应用单片机原理
3、及应用教学课件教学课件 传感器的发展方向:传感器的发展方向: 传感器已经成为现代信息技术系统三大支柱之一,在工业、农业、航空航天、军事国防等领域得到了日益广泛的应用。其发展方向主要有以下几个方面:(1)利用新的物理现象、化学反应、生物效应设计传感器。(2)引入数据融合技术。(3)使用新型材料,向微功耗、集成化及无源化发展。(4)采用新的加工技术。(5)向微型化发展。(6)向高可靠性、宽温度范围发展等。 单片机原理及应用单片机原理及应用教学课件教学课件 5.1.2 单片机应用系统的输入/输出通道 过程过程I/O通道:通道:单片机系统和被控对象之间信息的交互通道(输入通道、输出通道)称为过程I/O
4、通道,过程I/O通道的一般结构如下图所示。单片机原理及应用单片机原理及应用教学课件教学课件 特点:特点: (1)要靠近拾取对象采集信息; (2)传感器、变送器的性能和工作环境因素严重影响通道的方案设计; (3)一般是模拟、数字等混杂电路; (4)常需要放大电路; (5)抗干扰设计非常重要。 输入通道的结构类型:输入通道的结构类型: 输入通道结构形式取决于被测对象的环境、输出信号的类型、数量、大小等。其结构如下页图所示。 1 1输入通道输入通道单片机原理及应用单片机原理及应用教学课件教学课件 单片机原理及应用单片机原理及应用教学课件教学课件 2输出通道 特点特点:(1)小信号输出,大功率控制;(
5、2)输出伺服驱动控制信号;(3)电磁和机械干扰较为严重。通道结构:通道结构:在输出通道中,单片机完成控制处理后的输出,总是以数字信号或模拟信号的形式,通过I/O口或者数据总线传送给被控对象。输出通道的结构如下页图所示。单片机原理及应用单片机原理及应用教学课件教学课件 3 3信号处理电路信号处理电路 输入通道中,信号处理的任务是可由硬件实现能够完成小信号放大,信号变换,滤波、零点校正、线性化处理、温度补偿、误差修正和量程切换等任务。可由硬件实现,有些也可由软件实现。单片机原理及应用单片机原理及应用教学课件教学课件 (1)开关量输入 被控对象的一些开关状态可以经开关量输入通道输入到单片机系统,这些
6、开关信号根据实际情况需要经过电平匹配、电气隔离或互感器后才能够通过单片机接口,接入到单片机系统。(2)小信号放大技术 输入通道中,对小信号需要经过测量放大器、可编程增益放大器及带有放大器的小信号双线发送器等电路进行放大调节。(3)隔离放大技术 在某些要求输入和输出电路彼此隔离的情况下,必须使用隔离放大器。常用隔离放大器有变压器耦合隔离放大器和光耦合隔离放大器两种。 单片机原理及应用单片机原理及应用教学课件教学课件 5.2 D/A转换器及接口技术 D/AD/A转转换换器器(Digit Digit to to Analog Analog ConverterConverter):将数字量转换成模拟量
7、的器件称为D/A转换器,通常用DAC表示。 D/AD/A转换接口器设计中主要考虑的问题:转换接口器设计中主要考虑的问题:D/A转换芯片的选择、数字量的码输入、精度、输出模拟量的类型与范围、转换时间、与CPU的接口方式等。 5.2.1 D/A5.2.1 D/A转换器的性能指标转换器的性能指标(1)分辨率:指D/A转换器能分辨的最小输出模拟增量,即相邻两个二进制码对应的输出电压之差称为D/A转换器的分辨率。可用最低位(LSB)表示。如,n位D/A转换器的分辨率为1/2n。单片机原理及应用单片机原理及应用教学课件教学课件 (2)精度:精度是指D/A转换器的实际输出与理论值之间的误差,它是以满量程VF
8、S的百分数或最低有效位(LSB)的分数形式表示。(3)线性误差:D/A的实际转换特性(各数字输入值所对应的各模拟输出值之间的连线)与理想的转换特性(始、终点连线)之间是有偏差的,这个偏差就是D/A的线性误差。即两个相邻的数字码所对应的模拟输出值(之差)与一个LSB所对应的模拟值之差。常以LSB的分数形式表示。(4)转换时间TS(建立时间):从D/A转换器输入的数字量发生变化开始,到其输出模拟量达到相应的稳定值所需要的时间称为转换时间。(5)偏移量误差:偏移量误差是指输入数字量为零时,输出模拟量对零的偏移值。 单片机原理及应用单片机原理及应用教学课件教学课件 5.2.2 D/A转换器的分类 按输
9、出形式分类:按输出形式分类:电压输出型和电流输出型。 按是否含有锁存器分类:按是否含有锁存器分类:内部无锁存器和内部有锁存器。 按能否作乘法运算分类:按能否作乘法运算分类:乘算型和非乘算型。 按按输输入入数数字字量量方方式式分分类类:并行总线D/A转换器和串行总线D/A转换器。 按转换时间分类:按转换时间分类:超高速D/A(TS100ns)、高速D/A(TS为100ns10s)、中速中速D/A(TS为为10s100s)、)、低速D/A(TS100s)等。单片机原理及应用单片机原理及应用教学课件教学课件 D/A转换电阻网络的创新设计(补充) 单片机原理及应用单片机原理及应用教学课件教学课件 D/
10、A转换电阻网络的创新设计(补充) 图2电路的特点是电路简洁,仅有9只电阻,但电阻取值跨度太大,一是很难从电阻系列值中选取,二是各位数据的负载不一,两者均导致电路误差较大,精度不高。 图1电路的电阻取值规范,克服了图2电路的缺点,精度高,但用集成电路实现时,价格昂贵;用分立元件时则电阻的个数太多,共需17只。 图3电路的各项性能指标,均介于两者之间,既有较高的精度,电路也简洁,仅12只电阻。 单片机原理及应用单片机原理及应用教学课件教学课件 5.2.3 D/A转换器的接口 1DAC0832的特点与引脚的特点与引脚(1)DAC0832的特点 DAC0832是NS公司生产的DAC0830系列(DAC
11、0830/32)产品中的一种,8位CMOS数模转换芯片,其特点如下:8位并行D/A转换;片内二级数据锁存,提供数据输入双缓冲、单缓冲、直通三种工作方式;电流输出型芯片(需外接运放);DIP20封装,CMOS低功耗器件,单电源(+5V+15V,典型值+5V)供电;具有双缓冲控制输出;参考电压为-10+10V与MCS-51连接方便。单片机原理及应用单片机原理及应用教学课件教学课件 DAC0830系 列 均 为 DIP20封 装 , 且 管 脚 完 全 兼 容 ,DAC0832的引脚如下图所示。引脚功能如下:D0D7:8位数字量输入端:片选端,低有效ILE:数据锁存允许:写控制信号1:写控制信号2:
12、数据传送控制信号Iout1:电流输出端1Iout2:电流输出端2RFB:内置反馈电阻端VREF:参考电压源(-10V+10V)DGND:数字量地AGND:模拟量地Vcc:+5+15V单电源供电端单片机原理及应用单片机原理及应用教学课件教学课件 表2-5工作寄存器组选择控制表单片机原理及应用单片机原理及应用教学课件教学课件 2 2电压输出方法电压输出方法 DAC0832需要电压输出时,可以简单地使用一个运算放大器连接成单极性输出形式。如右图所示。 3 3单缓冲方式接口单缓冲方式接口 单缓冲方式是指DAC0832内部的两个数据缓冲器有一个处于直通方式,另一个处于受单片机控制的方式。如下页图所示。I
13、LE接+5V,片选信号及数据传输信号都与地址选择线P2.7相连,地址为7FFFH,两级寄存器的写信号都由CPU的端控制。数字量可以直接从MCS-51的P0口送入DAC0832。当地址选择线选择好DAC0832后,只要输出控制信号,DAC0832就能一次完成数字量的输入锁存和D/A转换输出。单片机原理及应用单片机原理及应用教学课件教学课件 执行下列几条指令就可以完成一次执行下列几条指令就可以完成一次D/AD/A转换:转换:MOVDPTR,#7FFFH;地址指向DAC0832MOVA,#DATA;待转换的数字量DATA送累加器AMOVXDPTR,A;数字量送P2.7指向的地址,有效时完成一次D/A
14、输入 例题例题 利用上图所示电路,使用DAC0832作波形发生器产生三角波。单片机原理及应用单片机原理及应用教学课件教学课件 解解:在上页图中,放大器LM324的输出端VOUT直接反馈到RFB,所以该电路只能产生单极性的模拟电压。产生三角波的程序如下产生三角波的程序如下: ORG0100HSTART:MOVDPTR,#7FFFH;地址指向DAC0832MOVA,#00H;三角波起始电压为0UP:MOVXDPTR,A ;数字量送DAC0832转换INCA;三角波上升边JNZUP;未到最高点0FFH,返回UP继续DOWN:DECA;到三角波最高值,开始下降边MOVXDPTR,A;数字量送DAC08
15、32转换JNZDOWN;未到最低点0,返回DOWN继续SJMPUP;返回上升边END 数 字 量 从 0开 始 逐 次 加 1, 模 拟 量 与 之 成 正 比 , 当(A)=0FFH时,则逐次减1,减至(A)=0后,再从0开始加1,如此循环重复上述过程,输出就是一个三角波。单片机原理及应用单片机原理及应用教学课件教学课件 对于多路D/A转换,若要求同步进行D/A转换输出时,则必须采用双缓冲方式。例例题题 假设某一分时控制系统,由一台单片机控制并行的两台设备,连接电路如下图所示,两台设备的模拟控制信号分别由两片DAC0832输出,要求两片DAC0832同步输出。4双缓冲方式 单片机原理及应用单
16、片机原理及应用教学课件教学课件 解解:如上页图所示,利用DAC0832双缓冲的原理,对不同端口地址的访问具有不同的操作功能,具体功能如下表所示。实现同步输出的操作步骤为:实现同步输出的操作步骤为:将1#待转换数据由数据总线1#DAC0832的第一级锁存(写7FFFH口);将0#待转换数据由数据总线0#DAC0832的第一级锁存(写0DFFFH口);将1#、0#DAC0832的第一级锁存器中的数据各自的第二级锁存,同时开始D/A转换(写0BFFFH),周而复始。单片机原理及应用单片机原理及应用教学课件教学课件 程序如下:程序如下: ORG0100HSTART:MOVDPTR,#7FFFH;数据指
17、针指向1#的第一级锁存器MOVA,#DATA1;取第一个待转换数据DATA1MOVXDPTR,A;送入第一级缓冲器MOVDPTR,#0DFFFH ;数据指针指向0#的第一级锁存器MOVA,#DATA0;取第二个待转换数据DATA0MOVXDPTR,A;送入第一级缓冲器MOVDPTR,#0BFFFH ;数据指针指向两个转换器的第二级缓冲地址MOVXDPTR,A;1#和0#数据同时由第一级向第二级锁存传送,并开始转换RETEND单片机原理及应用单片机原理及应用教学课件教学课件 D/A转换器的创新应用程控放大器 单片机原理及应用单片机原理及应用教学课件教学课件 D/A转换器的创新应用程控放大器 增益
18、小于增益小于1的程控放大器的程控放大器单片机原理及应用单片机原理及应用教学课件教学课件 D/A转换器的创新应用程控放大器 增益大于增益大于1的程控放大器的程控放大器单片机原理及应用单片机原理及应用教学课件教学课件 5.3 A/D转换器及接口技术 A/D转转换换器器(Analog To Digit Converter):将模拟量转换为与之成比例的数字量的器件称为A/D转换器,常用ADC表示。 5.3.1 A/D5.3.1 A/D转换器的性能指标转换器的性能指标 (1)分辨率:分辨率是指输出数字量变化一个相邻数码所需输入模拟电压的变化量。A/D转换器的分辨率定义为满刻度电压与2n之比值,其中n为A
19、DC的位数。 例例如如:具有12位分辨率的ADC能分辨出满刻度的(1/2)12或满刻度的0.0245%。一个10V满刻度的12位ADC能够分辨输入电压变化的最小值为2.4mV。而 位的A/D转换器(满字为1999),其分辨率为满刻度的1/1999100%=0.05%。 单片机原理及应用单片机原理及应用教学课件教学课件 (2)转换速率与转换时间:转换速率是指A/D转换器每秒钟转换的次数。转换时间是指完成一次A/D转换所需的时间(包括稳定时间)。转换时间是转换速率的倒数。(3)量化误差:有限分辨率A/D的阶梯状转移特性曲线与理想无限分辨率A/D的转移特性曲线(直线)之间的最大偏差称为量化误差。通常
20、是1个或半个最小数字量的模拟变化量,表示为1LSB,1/2LSB。(4)线性度:实际A/D转换器的转移函数与理想直线的最大偏差。不包括量化误差、偏移误差(输入信号为零时,输出信号不为零的值)和满刻度误差(满度输出时,对应的输入信号与理想输入信号值之差)三种误差。(5)量程:量程是指A/D能够转换的电压范围,如05V,-10+10V等。(6)其他指标:内部/外部电压基准、失调(零点)温度系数、增益温度系数,以及电源电压变化抑制比等性能指标。单片机原理及应用单片机原理及应用教学课件教学课件 5.3.2 A/D转换器的分类 单片机原理及应用单片机原理及应用教学课件教学课件 5.3.3 A/D转换器的
21、接口 1 1逐次逼近式逐次逼近式A/DA/D转换器(转换器(SARSAR) 组成:组成:由结果寄存器、比较器和控制逻辑等部件组成。 原原理理:采用对分搜索逐位比较的方法逐步逼近,利用数字量试探地进行D/A转换、再比较判断,从而实现A/D转换。 将D/A转换器的输出从二进制数据的最高位起,依次逐位置1,与待转换的模拟量比较,若前者小于后者,该位置1并保留下来,若前者大于后者,该位清0;然后再照此比较下一位,直至比完最低位。最后得到的结果,即A/D转换的值。 特点:特点:转换速度较快(比较次数等于A/D的位数),通常在几S至几百S数量级;被转换的模拟量若频率很高(变化较快)则要加采样保持电路;被转
22、换的模拟量若幅度过小(信号微弱)则需要加信号处理电路。单片机原理及应用单片机原理及应用教学课件教学课件 (1)ADC0809的特点 ADC0809是NS(National Semiconductor,美国国家半导体)公司生产的逐次逼近型A/D转换器。其特点如下: 分辨率为8位,误差1LSB ; CMOS低功耗器件; 转换时间为100 s(当外部时钟输入频率fc = 640 kHz ) ; 很容易与微处理器连接; 单一电源+5V,采用单一电源+5V供电时量程为05V; 无需零位或满量程调整,使用5V或采用经调整模拟间距的电压基准工作; 带有锁存控制逻辑的8通道多路输入转换开关; DIP28封装;
23、 带锁存器的三态数据输出。 转换结果读取方式有延时读数、查询EOC=1、EOC申请中断。单片机原理及应用单片机原理及应用教学课件教学课件 (2)ADC0809引脚功能引脚功能 IN0IN7:8通道模拟量输入端2-82-1:8位数字量输出端C、B、A:接地址锁存器的低三位地址ALE:地址锁存允许控制信号START:清0内寄存器,启动转换OE:允许读A/D结果,高有效CLK:时钟输入端,范围为10kHz1200kHz,典型值640kHzEOC:转换结束时为高Vcc:+5VVref+:参考电压,+5VVref-:0V单片机原理及应用单片机原理及应用教学课件教学课件 ADC0809有8路模拟量输入IN
24、7IN0。一次只能选通其中的某一路进行转换,选通的通道由ALE上升沿时送入的C,B,A引脚信号决定。C,B,A地址与选通的通道间的关系如下表所示。单片机原理及应用单片机原理及应用教学课件教学课件 (3)接口与编程接口与编程 ADC0809典型应用如下图所示。由于ADC0809输出含三态锁存,所以其数据输出可以直接连接MCS-51的数据总线P0口。可通过外部中断或查询方式读取A/D转换结果。单片机原理及应用单片机原理及应用教学课件教学课件 例例题题 假设ADC0809与MCS-51的硬件连接如上页图所示,要求采用中断方法,进行8路A/D转换,将IN0IN7转换结果分别存入片内RAM的30H37H
25、地址单元中。解:程序如下:解:程序如下: ORG 0000H LJMP MAIN; 转主程序 ORG 0003H; 中断服务入口地址 LJMP INT0F; 中断服务。 ORG 0100HMAIN: MOV R0, #30H ; 内部数据指针指向30H单元 MOV DPTR, #7FF8H ; 指向P2.7口,且选通IN0 (低3位地址为 000) SETB IT0; 设置下降沿触发 SETB EX0; 允许中断 SETB EA; 开总中断允许 MOVX DPTR, A ; 启动A/D转换 LJMP $; 等待转换结束中断单片机原理及应用单片机原理及应用教学课件教学课件 中断服务程序如下:中断
26、服务程序如下: INT0F: MOVX A, DPTR; 取A/D转换结果 MOV R0, A; 存结果 INC R0; 内部指针下移 INC DPTR; 外部指针下移,指向下一路 CJNE R0,#38H,NEXT; 未转换完8路,继续转换 CLR EX0; 关中断允许 RETI; 中断返回 NEXT: MOVX DPTR, A; 启动下一路A/D转换 RETI; 中断返回,继续等待下一次 END单片机原理及应用单片机原理及应用教学课件教学课件 3串行A/D转换器 特特点点:引脚数少(常见的8引脚或更少),集成度高(基本上无需外接其他器件),价格低,易于数字隔离,易于芯片升级,廉价,速度略微
27、降低。 (1)MAX187/189芯片引脚及功能 MAX187/189是 MAXIM公 司 生 产 的 具 有 SPI( Serial Peripheral Interface)总线接口的12位逐次逼近式(SAR)A/D转换芯片。特点如下: 12位逐次逼近式(SAR)串行A/D转换芯片; 转换速度为75 kHz,转换时间为8.5s; 输入模拟电压:05V; 单一+5 V供电; DIP8引脚封装,外接元件简单,使用方便。 MAX187与MAX189的区别在于:MAX187具有内部基准,无需外部提供基准电压,MAX189则需外接电压基准。 单片机原理及应用单片机原理及应用教学课件教学课件 MAX1
28、87/189芯片引脚如下图所示。引脚的功能如下:V VDDDD:工作电源:+5V5%;GNDGND:模拟和数字地;V VREFREF:参考电压输入; :片选输入;AINAIN:模拟电压输入,范围为0VREF或04.096 V(MAX187); (shut shut downdown):关闭控制信号输入,提供三级关闭方式:待命低功耗状态(电流仅10A),允许使用内部基准;禁止使用内部基准;D DOUTOUT:串行数据输出,在串行脉冲SCLK的下降沿数据变化;SCLK:串行时钟输入,最大允许频率为5MHz。单片机原理及应用单片机原理及应用教学课件教学课件 使用MAX187/189进行A/D转换时分
29、的步骤: 启动A/D转换,等待转换结束 当 输入低电平时,启动A/D转换,此时DOUT引脚输出低电平,充当传递“转换结束”信号的作用。当DOUT输出变高电平时,说明转换结束(在转换期间,SCLK不允许送入脉冲)。 串行读出转换结果 从SCLK引脚输入读出脉冲,SCLK每输入一个脉冲,DOUT引脚上输出一位数据,数据输出的顺序为先高位后低位,在SCLK信号的下降沿,数据改变,在SCLK的上升沿,数据稳定。在SCLK信号为高电平期间从DOUT引脚上读数据。 单片机原理及应用单片机原理及应用教学课件教学课件 (2)接口与编程)接口与编程 MAX187与MCS-51的连接电路如下图所示。其中,P1.7
30、为控制片选,P1.6为输入串行移位脉冲,P1.5为接收串行数据端。MAX187外接4.7 F退耦电容激活内部电压基准,接+5 V允许使用内部基准。 注意:注意:MAX187/189的片选在转换和读出数据期间必须始终保持低电平。单片机原理及应用单片机原理及应用教学课件教学课件 工工作作流流程程:清P1.7,启动MAX187开始A/D转换;读P1.5,等待转换结束;当P1.5变高,转换结束;从P1.6引脚发串行脉冲,从P1.5引脚逐位读取数据。 注注意意:由由于于MCS-51单片机外接晶振最大不超过12 MHz,即便是执行一条单周期指令也需1 s,所以发送SCLK时无需延时。 例例题题 如图上页图
31、所示的MAX187与MCS-51连接的电路图,将MAX187转换结果存入31H、30H单元,右对齐,31H存高位(高4位补0)。解解:程序如下:程序如下: HIGH EQU 31H LOW EQU 30H ORG 1000HSTART: MOV HIGH, #00 MOV LOW, #00; 将转换结果单元清除 CLR P1.6单片机原理及应用单片机原理及应用教学课件教学课件 CLR P1.7; 启动A/D转换 JNB P1.5, $; 等待转换结束 SETB P1.6; SCLK上升沿 MOV R7, #12; 置循环初值12 LP: CPL P1.6; 发SCLK脉冲 JNB P1.6, LP; 等待SCLK变高 MOV C, P1.5; 将数据取到C MOV A, LOW RLC A MOV LOW, A MOV A, HIGH RLC A MOV HIGH, A; 将取到的数据位逐位移入结果保存单元 DJNZ R7, LP SETB P1.7; 结束 RET END 单片机原理及应用单片机原理及应用教学课件教学课件 作业与练习:作业与练习: 5.195.20