版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
8.1磨刀霍霍—预备知识
8.1.1数字量和模拟量8.1.2数字量和模拟量之间的相互转换8.1.3DAC和ADC的主要技术指标第8章
模拟外设及其与51单片机的接口8.2小试牛刀—实战案例
动手实践8-1:数字量转换为模拟电压动手实践8-2:简单波形信号的产生动手实践8-3:模拟电压转换为数字量8.3庖丁解牛—原理剖析8.3.1常用DAC和ADC转换器简介8.3.2DAC0832及其与单片机的接口8.3.3ADC0809及其与单片机的接口第8章
模拟外设及其与51单片机的接口8.4牛气冲天——实战进阶(*)8.4.1ADC0809和DAC0832的高级应用动手实践8-4:信号波形重现及数据的采集动手实践8-5:利用两片DAC0832分别输出不同波形动手实践8-6:波形的同步—DAC0832双缓冲方式的应用8.4.2串行总线接口ADC和DAC动手实践8-7:MAX1241与51单片机的接口
动手实践8-8:PCF8591与51单片机的接口第8章
模拟外设及其与51单片机的接口8.1磨刀霍霍—预备知识
8.1.1数字量和模拟量在单片机内部的CPU和集成的各种内部资源中,以及单片机芯片内部的总线和外部的系统总线中,处理和传输的一位或多位二进制代码,称为数字量。数字量中的每一位二进制代码可用于控制一个LED的亮灭,或者代表开关的通断状态、定时/计数器是否溢出等,称为开关量。多个开关量的编码组合可以表示更多的信息,例如8个开关的通断状态可以用8位二进制表示。显然,数字量的位数越多,能够表示的信息种类就越多。一般的对应关系是,假设数字量为n位二进制代码,则最多可以表示2n种不同的信息。在模拟电路系统中,各点电压和电流的幅度大小随时间连续不断地变化。这意味着,在给定的一个变化范围内,幅度可以有很多甚至无穷多个取值。这样的电压和电流幅度取值称为模拟量。如果将模拟量的取值用数字量进行表示,就需要无穷多位二进制代码。显然,这是不现实的。在实际系统中,通常的做法是通过量化(Quantization)和编码(Code),将模拟量所有可能的取值用事先规定的有限个二进制编码组合来表示。这样得到的各种编码组合就成为数字量,而且是位数有限的,就可以用计算机进行处理了。8.1.2数字量和模拟量之间的相互转换数字量到模拟量的转换数字量到模拟量的转换简称为D/A转换,实现DAC的转换电路或器件称为D/A转换器或DAC。目前集成化的DAC芯片种类繁多,设计者只需要合理选用芯片,了解它们的性能、引脚外特性以及与单片机的接口设计方法即可。由于现在部分单片机的芯片中集成了DAC,位数一般在10位左右,且转换速度也很快,所以单片的DAC开始向高的位数和高转换速度上转变。而低端的并行8位DAC,开始面临被淘汰的危险,但是在实验室或涉及某些工业控制方面的应用,低端8位DAC以其优异的性价比还是具有较大的应用空间。(8-1)(8-2)模拟量到数字量的转换模拟量到数字量的转换简称为A/D转换(AnalogtoDigitalConversion),实现ADC的转换电路或器件称为A/D转换器或ADC(AnalogtoDigitalConverter)。ADC按实现的原理可以分为逐次逼近式、双积分式、并行/串行比较式、压频转换式ADC等,根据转换的速度可以分为低速、中断、高速、超高速ADC等,根据转换得到数字量的位数,典型的有8位、12位、14位和16位ADC转换器等。8.1.3DAC和ADC的主要技术指标分辨率对DAC,分辨率指输入单位数字量的变化所引起的输出模拟量幅度的变化,通常描述为输出满刻度(满量程)值与2n之比(n为DAC的二进制位数),或者DAC的最小输出电压,习惯上又常用输入数字量的位数表示。例如,假设满量程输出为5V,则当ADC转换位数为8位时,根据定义得到其分辨率为5/2n=5/256≈19.5mV,即输入的二进制数最低位数字量的变化可引起输出的模拟电压变化19.5mV,该值占满量程的0.39%≈1/28,常用符号1LSB表示,即1LSB=1/28。如果DAC的位数增加为12位,则分辨率为1LSB=1/212≈0.024%。对ADC来说,分辨率表示系统可分辨的最小输入模拟电压表示,一般用1个bit对应的模拟电压大小,或者转换后输出的二进制位数n来描述,通常n=8位、10位、12位、16位等。例如,12位A/D转换器AD1674的最大输入电压为5V,则分辨率为1LSB=5/212≈1.22mV,也就意味着当输入模拟电压变化幅度超过1.22mV时,转换输出数字量有1bit的变化。由此可见,ADC和DAC的分辨率都主要决定于转换位数。二进制位数越多,分辨率越高,转换的灵敏度和精度就越高。转换精度理想情况下,转换精度与分辨率基本一致,位数越多精度越高。但由于在生产和使用ADC和DAC的过程中,电源电压、基准电压、电阻、制造工艺等各种因素的影响,即便是两个相同位数的DAC和ADC,其分辨率则相同,但转换精度也会有区别。因此严格地说,转换精度与分辨率并不完全一致。例如,某种型号的8位DAC精度为±0.19%,而另一种型号的8位DAC精度为±0.05%。转换时间
转换时间又称为建立时间,是描述DAC转换速度的一项重要参数。转换时间指的是将数字量转换为稳定的模拟信号所需的时间,一般表示为从输入数字量到输出达到终值误差的±1/2LSB时所需的时间。一般DAC的转换时间在几十纳秒~几微秒,而逐次逼近型ADC转换时间的典型值为1~200
s。8.2小试牛刀—实战案例
动手实践8-1:数字量转换为模拟电压(ex8_1.pdsprj,p8_1.asm)动手实践8-2:简单波形信号的产生(ex8_2.pdsprj,p8_2_1.asm.p8_2_2.asm)动手实践8-3:模拟电压转换为数字量(ex8_3.pdsprj,p8_3.asm)动手实践8-1动手实践8-1动手实践8-2原理图通案例1,只是在运放输出端接示波器。动手实践8-3注意设置时钟频率为500KHz8.3庖丁解牛—原理剖析
8.3.1常用DAC和ADC转换器简介DAC0832的引脚及内部结构DAC0832是8位T型电阻解码网络D/A转换器芯片,是DAC0830系列的一种。其分辨率为8位,满刻度误差±1LSB,线性误差±0.1%,建立时间为1
s,功耗20mW,采用单一+5V~+15V电源供电。DAC0832的数字输入端具有双重缓冲功能,可以双缓冲、单缓冲或直通方式输入。DAC0832输入数字量与输出模拟电压之间的关系用式(8-2)描述。大多数情况下,参考电压VREF=-5V,因此V0=5/28D
≈
0.0195DV,其中D为输入数字量表示的大小。ADC0809的引脚及内部结构ADC0809/ADC0808都是8位CMOS逐次逼近型A/D转换器,ADC0808的最小转换误差为1/2LSB,而ADC0809的转换误差为1LSB。两个芯片都采有8路模拟量输入通道,带转换起停控制,输入模拟电压范围0V~+5V。ADC0809输入模拟电压VIN与转换输出数字量D之间的关系可以表示为(8-3)大多数情况下,参考电压VREF(+)=5V,VREF(-)=0V,则VIN=5/256D,输出数字量D=256VIN/5=51.2VIN,最后结果按四舍五入取整数。ADC0809的工作时序如图8-10所示,其工作过程可以总结如下:(1)ALE脉冲将地址打入,选择一路模拟量送到比较器。(2)在START端输入脉冲正跳变作用下,使内部的逐次逼近寄存器复位,下降沿启动A/D转换,并使EOC信号为低电平。(3)转换结束时,EOC信号回到高电平,转换结果存入输出锁存器。(4)OE端输入的正脉冲将转换结果数据由D0~D7(ADC0809)或IOUT1~IOUT8(ADC0808)端子输出。(5)上述操作完毕后,如果需要,可以通过再次执行相同的程序,重复上述过程。ADC0809的引脚及内部结构8.3.2DAC0832及其与单片机的接口从单片机的角度,DAC0832相当于输出设备,ADC0809相当于输入设备。两种芯片在与51单片机进行连接和数据传送时,有两种典型的方法,即总线控制方法和并口控制方法。所谓总线控制方式,就是将DAC0832中的输入寄存器和DAC寄存器视为两个可写的外部RAM单元,将ADC0809的8个通道分别视为8个可读的外部RAM单元,从而采用与外部RAM单元的访问一样的方法进行控制和访问。所谓并口控制方式,就是单片机与DAC0832和ADC0809之间数字量的输入和输出通过普通的并口进行,所需的应答联络和控制信号也都通过并口引脚输出或者输入。DAC0832的工作方式所谓直通方式,指的是8位输入寄存器和8位DAC寄存器都直接处于导通状态,数字量由数据线直接输入,并立即启动转换。所谓单缓冲方式,指的是DAC0832内部的输入寄存器和DAC寄存器一个处于直通状态,另一个处于受控制状态,或者两个同时被控制。数字量必须在外部有效的控制信号作用下打入DAC0832内部,并立即启动转换。所谓双缓冲方式,指的是8位输入寄存器和8位DAC寄存器利用两组信号分别进行控制,数字量先送到输入寄存器,再送入DAC寄存器并启动转换。直通方式的硬件连接和程序ex8_4.pdsprjMOV
P1,#0FFH并口控制:通过MOV指令将数字量直接由并口输出,单缓冲方式的硬件连接和程序ex8_1.pdsprj总线控制:通过MOVX指令将数字量由数据总线输出,输入寄存器和DAC寄存器同时打开。ex8_5.pdsprj并口控制:通过MO指令由并口输出数字量,输入寄存器和DAC寄存器的控制信号用位操作指令产生。MOV P1,#0FFHSETB P3.0;产生CS负脉冲CLR P3.0SETB P3.0双缓冲方式的硬件连接和程序ex8_6.pdsprj总线控制:通过MOVX指令将数字量由数据总线输出,输入寄存器和DAC寄存器同时打开。按照上述连接,要将一个数字量送DAC0832进行D/A转换,可以编写如下程序:8.3.3ADC0809及其与单片机的接口一片ADC0809可以通过IN7~IN0引脚同时接入最多8个模拟量,这8个模拟量在芯片内部都是由同一套电路进行ADC转换的。因此在任何一个时刻,只能选择一个通道的模拟量送入并进行ADC转换。在ADC0809的引脚中,通过端子C、B、A或ADDC、ADDB、ADDA送入3位二进制代码,即可确定选择当前需要转换的通道,其中CBA=000~111依次对应IN0~IN7。需要注意的,3位地址必须在ALE端子送来的正脉冲作用下,才能打入芯片内部。这就要求单片机在送出这3位地址的同时,利用相关信号产生正脉冲送入ALE。通道选择与启动控制ex8_3.pdsprj延时方式(无条件传送方式)如果A/D转换的时间是确定不变的,可以让单片机在启动转换后延时对应的时间,再读取转换结果。这种方式不需要ADC转换器向单片机传送专门的应答联络信号,称为延时方式或者条件传送方式。例如,在转换时钟频率为500KHz时,ADC0809的转换时间为128
s,因此在程序中启动转换后,利用软件延时或定时/计数器定时等待128
s再读取转换结果即可。在这种方式下,由于单片机不需要通过专门的信号了解ADC转换是否结束,因此一般将ADC0809的EOC悬空不用。ADC0809的工作方式及其与单片机的连接查询方式
单片机启动ADC转换后,不断查询其状态,将该状态作为条件,当检测到条件满足时,说明转换结束,立即读入转换结果。在ADC0809引脚中,当转换结束时,EOC引脚会自动输出一个由原来的低电平到高电平的正跳变。因此可以将该引脚与单片机的某个并口引脚相连接,单片机利用指令JB或JNB不断检测该引脚的状态,即可知道ADC转换是否结束。中断方式
在这种方式下,单片机不是执行指令主动查询转换是否结束,而是在启动ADC转换后被动等待ADC转换器送来中断请求,响应中断后执行中断服务程序,在中断服务中通过执行相应的指令读取转换结果。显然,在这种方式下,ADC转换器必须在转换结束时能够向单片机发出中断请求。根据工作时序,在转换结束时EOC引脚会自动输出一个正跳变。因此,只需要将ADC0809的EOC信号通过非门反相后,再与单片机的INT0或INT1连接,即可在转换结束时得到一个负跳变,从而向单片机发出外部中断请求。ex8_7.pdsprj在上述3种方式下,单片机都是通过执行MOVX指令,送出地址和读写命令,以选择转换通道,或由P0口数据总线读取ADC转换结果,因此都属于总线控制方式。在并口够用的情况下,ADC0809也能很方便地实现并口控制。图8-15是在查询方式下利用并口进行控制的一种典型电路连接方法(参见文件ex8_8.pdsprj)。ADC0809的并口控制ex8_8.pdsprj在单片机时钟频率为12MHz时,程序中的延时子程序实现约200s的延时,再循环启动下一次A/D转换。注意:这里的延时时间相当于采样间隔,而不是A/D转换所需的时间。8.4牛气冲天—实战进阶
8.4.1ADC0809和DAC0832的高级应用在一个典型的测控系统中,可能同时需要DAC和ADC,其中ADC实现现场数据的采集,而DAC用于将单片机计算得到的控制信号数字量转化为模拟电压或电流,对被控对象进行控制。此外,在现场测控系统中,还可能用到多片DAC实现多路信号波形的产生,其中有一个典型的问题是各信号波形之间的同步问题。上述问题中的关键技术通过如下几个案例进行体会。动手实践8-4:信号波形重现及数据的采集本案例利用ADC0809采集各种不同信号的波形数据,并利用DAC0832实现波形的重现。原理图如图8-16所示(参见文件ex8_9.pdsprj)。图中利用信号发生器产生不同幅度和频率的信号波形,利用单片机内的定时/计数器T0定时,控制ADC0809每隔100s采集一次波形数据。采集的每个点波形数据一方面立即送DAC0832转换,从而在输出端还原出与信号发生器输出一样的波形信号。此外,还将最开始的若干点波形数据保存到单片机的内部RAM单元。根据原理图中的连接方法,ADC0809采用查询方式实现转换结果的读取,DAC0832采用单缓冲方式实现DAC转换和信号波形的重现,其地址分别为7FF8H和0BFFFH。在上述程序的主程序中,主要做如下操作:(1)P3.2引脚即波形数据保存缓冲区的初始化(缓冲区的起始地址指针、缓冲区的长度);(2)定时/计数器T0的初始化:定时方式,禁用门控,方式2;(3)定时/计数器T0的计数初值设为156,当单片机时钟脉冲频率为12MHz时,定时100ms;(4)定时/计数器T0开中断;(5)等待定时中断。若是,则不再保存。在定时/计数器T0的中断服务程序中,主要做如下操作:(1)启动ADC转换,采用查询方式(检测P3.2即EOC状态)等待ADC转换结束;(2)读取ADC转换结果,立即送DAC0832进行DAC转换;(3)保存波形数据到内部RAM;(4)判断指定个数的波形数据是否保存完。若是,则不再保存。波形数据保存到单片机的内部RAM单元:动手实践8-5:利用两片DAC0832分别输出不同波形本案例利用两片DAC0832分别产生两个不同波形的信号。原理图如图8-20所示(参见文件ex8_10.pdsprj)。图中,两片DAC0832都采用单缓冲方式连接,只是两片的片选信号分别由地址总线的A15和A14为提供,因此地址分别为7FFFH和0BFFFH。动手实践8-6:波形的同步—DAC0832双缓冲方式的应用在上述案例中,两片DAC0832的工作是相互独立的,从而将导致两个信号的波形不同步。为了说明这个问题,在上述案例的主程序中,输出两个信号波形数据的操作之间(Line15)添加一条调用延时子程序的语句。重新运行程序,并将示波器上的纵横轴刻度减小到足够小,在示波器上将观察到如图8-22所示波形。波上的每个台阶就是程序循环一次输出一个点所需的时间,其中包括通过延时子程序实现的延时以及程序中循环执行其他指令所需的时间。利用DAC0832工作在双缓冲方式,即可很方便地实现两片DAC0832输出信号波形的同步。为此,只需要修改原理图中两片DAC0832的WR2和XFER引脚连接。其中,两个芯片的WR2都仍然接单片机的P3.2引脚,而将两个芯片的XFER引脚都接到地址总线A13。本案例原理图参见文件ex8_11.pdsprj。8.4.2串行总线接口ADC和DAC常用的串行接口ADC器件有采用I2C接口的12位MX1238、ADS1112、PCF8591等,采用SPI总线的MAX1241、TLC4541等,采用1-Wire总线的DS2450等。常用的串行接口DAC器件有采用I2C接口的DAC5574、DAC8571等,采用SPI总线的DAC7611、DAC7631等。这里以MAX1241和PCF8591为例,介绍串行接口ADC和DAC的基本用法。8.4.2串行总线接口ADC和DAC常用的串行接口ADC器件有采用I2C接口的12位MX1238、ADS1112、PCF8591等,采用SPI总线的MAX1241、TLC4541等,采用1-Wire总线的DS2450等。常用的串行接口DAC器件有采用I2C接口的DAC5574、DAC8571等,采用SPI总线的DAC7611、DAC7631等。这里以MAX1241和PCF8591为例,介绍串行接口ADC和DAC的基本用法。MAX1241是一种低功耗、低电压的12位串行ADC,与ADC0809一样采用逐次逼近方法实现ADC转换。芯片内置快速采样/保持电路,最大非线性误差小于1LSB,转换时间为9μs。该芯片采用三线式SPI串行接口与单片机进行数据传送。MAX1241及其与51单片机的接口MAX1241的内部结构如图8-24所示,引脚功能如表8-1所示。在和片选信号的作用下,由控制逻辑电路对模拟电压输入进行采样保持并送入内部的12位ADC转换器。控制逻辑电路同时产生ADC转换时钟。MAX1241芯片上的SPI总线只有3根,转换结果在和外部送入SCLK时钟脉冲作用下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 血源性病原体职业暴露应急演练考核试卷及答案
- 实验幼儿园亲子趣味运动会活动方案
- 2026年专业技术人员共需科目考试试题含答案(保密意识和保密常识教育)
- 养老院室内消火栓使用应急演练脚本
- CBD项目金属屋面幕墙施工方案
- 敬老院群体性事件应急预案
- 某地区重点工程管道焊接施工方案
- 2026危险化学品安全作业经典例题附答案详解
- 管道堵塞渗漏应急处置细则
- 中职美术面试题及答案
- 2024年高考语文全国甲卷文言文阅读挖空
- 护理人员中医技术使用手册专业版
- 现代供应链管理实务高职全套教学课件
- 建筑材料与检测说课
- 中耕植保机械课件
- 病理科建设与管理指南
- 2023年福建省妇幼保健院招聘工作人员(共500题)笔试必备质量检测、历年高频考点模拟试题含答案解析
- 500静压混凝土预制桩钢桩施工记录
- GB/T 41619-2022科学技术研究项目评价实施指南基础研究项目
- GB/T 19638.2-2005固定型阀控密封式铅酸蓄电池
- NB∕T 33009-2021 电动汽车充换电设施建设技术导则
评论
0/150
提交评论