您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 单片机第10章课后答案
·264·第11章DAC、ADC的接口1.对于电流输出的D/A转换器,为了得到电压输出,应使用()。答:I/V转换电路2.使用双缓冲同步方式的D/A转换器,可实现多路模拟信号的()输出。答:同步3.下列说法是否正确。A.“转换速度”这一指标仅适用于A/D转换器,D/A转换器不用考虑“转换速度”问题。B.ADC0809可以利用“转换结束”信号EOC向AT89S51单片机发出中断请求C.输出模拟量的昀小变化量称为A/D转换器的分辨率D.对于周期性的干扰电压,可使用双积分型A/D转换器,并选择合适的积分元件,可以将该周期性的干扰电压带来的转换误差消除答:(1)错,D/A转换器也要考虑“转换速度”或“转换时间”问题,即建立时间(转换时间);(2)对;(3)错,是D/A转换器的分辨率;(4)对。4.D/A转换器的主要性能指标都有哪些?设某DAC为二进制12位,满量程输出电压为5V,试问它的分辨率是多少?答:D/A转换器的主要技术指标如下:分辨率:D/A转换器的分辨率指输入的单位数字量变化引起的模拟量输出的变化,是对输入量变化敏感程度的描述。建立时间:建立时间是描述D/A转换速度快慢的一个参数,用于表明转换速度。其值为从输入数字量到输出达到终位误差±(1/2)GB(昀低有效位)时所需的时间。转换精度:理想情况下,精度与分辨率基本一致,位数越多精度越高。严格讲精度与分辨率并不完全一致。只要位数相同,分辨率则相同.但相同位数的不同转换器精度会有所不同。当DAC为二进制12位,满量程输出电压为5V时,分辨率为1.22mV5.A/D转换器两个昀重要的技术指标是什么?答:A/D转换器的两个昀重要指标:(1)转换时间和转换速率--转换时间A/D完成一次转换所需要的时间。转换时间的倒数为转换速率。(2)分辨率--A/D转换器的分辨率习惯上用输出二进制位数或BCD码位数表示。6.分析A/D转换器产生量化误差的原因,一个8位的A/D转换器,当输入电压为0~5V时,其昀大的量化误差是多少?答:量化误差是由于有限位数字且对模拟量进行量化而引起的;昀大的量化误差为0.195%;7.目前应用较广泛的A/D转换器主要有哪几种类型?它们各有什么特点?答:目前应用较广泛的有:逐次逼近式转换器、双积分式转换器、∑-△式A/D转换器。逐次逼近型A/D转换器:在精度、速度和价格上都适中,是昀常用的A/D转换器件。双积分A/D转换器:具有精度高、抗干扰性好、价格低廉等优点,但转换速度慢,近年来在单片机应用领域中也得到广泛应用。∑-△式A/D转换器:具有积分式与逐次逼近式ADC的双重优点,它对工业现场的串模干扰具有较强的抑制能力,不亚于双积分ADC,它比双积分ADC有较高的转换速度。与逐次逼近式ADC相比,有较高的信噪比,分辨率高,线性度好,不需要采样保持电路。8.在DAC和ADC的主要技术指标中,“量化误差”、“分辨率”和“精度”有何区别?答:对DAC来说,分辨率反映了输出模拟电压的昀小变化量。而对于ADC来说,分辨率表示输出数字量变化一个相邻数码所需输入模拟电压的变化量。量化误差是由ADC的有限分辨率而引起的误差,但量化误差只适用于ADC,不适用于DAC。精度与分辨率基本一致,位数越多精度越高。严格讲精度与分辨率并不完全一致。只要位数相同,分辨率则相同。但相同位数的不同转换器,精度可能会有所不同,例如由于制造工艺的不同。9.Proteus虚拟仿真设计一个单片机与DAC0832组成的波形发生器,要求利用片内定时器产生的2ms定时中断来输出周期为1s,输出电平为0~5V三角波,并通过虚拟示波器观察三角波的周期是否准确。答:参考本教材的【例11-2】。10.Proteus虚拟仿真利用AT89S51单片机与ADC0809制作一个简易的数字电压表,测量0~5V的电压,用4位一体的LED·265·数码管显示测量值,要求昀高位显示模拟通道号,其余3位显示测量结果,且始终有小数点显示,小数点后显示2位数字。要求测量的昀小分辨率为0.0196V,测量误差为±0.02V。答:参考本教材的【例11-5】。11.Proteus虚拟仿真在【例11-5】的基础上,把查询方式改为中断方式来读取转换结果,要求对2路输入模拟电压进行交替采集并交替显示,超过界限时指示灯D2闪烁并驱动蜂鸣器报警。提示:采用中断方式读取转换结果,需要对图11-11的电路作改动,将EOC脚与P2.5脚断开,然后将EOC脚经过反相器74LS04接至单片机的INT0脚。1.模拟/数字(A/D)转换,是模拟信号转换为数字信号的过程,数字/模拟(D/A)转换是模拟信号转换为数字信号的过程。2.ADC0832是一个具有串行接口的8位分辨率、双通道A/D转换芯片,DAC0832是是一个8位D/A转换器芯片。3.ADC0809的工作频率允许范围是不高于640KHZ。4.ADC0832的工作频率是250KHZ。5.DAC0832的工作电源电压是+5V~+15V。2.ADC0890芯片是m路模拟输入的n位A/D转换器,m、n是。AA.8、8B.8、9C.8、16D.1、83.当DAC0832D/A转换器的CS接单片机的P2.0时,程序中0832的地址指针DPDR寄存器应置为。DA.0832HB.FE00HC.FEF8HD.以上三种都可以10.DAC0832利用控制信号可以构成的三种不同的工作方式。A、B、C、EA.1WRB.2WRC.ILED.XFERE.XFER7-1答:判断A/D转换是否结束一般可采用3种方式,即EOC信号和单片机相连可有3种方式:①延时方式:EOC悬空,启动转换后,延时100μs后读入转换结果。②查询方式:EOC接单片机端口线,查得EOC变高,读入转换结果,作为查询信号。③中断方式:ROC经非门接单片机的中断请求端,转换结束作为中断请求信号向单片机提出中断申请,在中断服务中读入转换结果。其中延时方式和查询方式均占用单片机CPU,即在这段时间,CPU只能做延时或查询的工作,而采用中断方式时,CPU可先执行主程序,一旦产生中断,才去处理数据接收的工作,使得CPU利用率较前面两种要高。7-2答:在选定转换通道后,ADC0809工作的主要有以下几个步骤:1)启动A/D转换,给START引脚一个下降沿;2)ALE信号与START信号一般连接在一起,这样使得在ALE信号的前沿写入地址信号,紧接着在其后沿就启动转换;3)查询EOC引脚状态,EOC引脚由0变1,表示A/D转换过程结束;4)允许读数,将OE引脚设置为1状态。5)读取A/D转换结果,从ADC0809的外部地址读取其转换结果。·266·7-3答:ADC0809与8051单片机接口时,控制信号主要有:ALE、START、EOC、OE。作用分别是:(1)ALE:地址锁存允许信号在ALE上升沿,ADDA、ADDB、ADDC地址状态被送入地址锁存器中。(2)START:转换启动信号。START上跳沿时,所有内部寄存器清0;START下跳沿时,开始进行A/D转换;在A/D转换期间,START应保持低电平。(3)OE:输出允许信号。用于控制三态输出锁存器向单片机输出转换得到的数据。OE=0,输出数据线呈高电阻;OE=1,输出转换得到的数据。(4)EOC——转换结束状态信号。启动转换后,系统自动设置EOC=0,转换完成后,EOC=1。该状态信号既可作为查询的状态标志,又可以作为中断请求信号使用。7-4答:DAC0832与8051单片机接口时,主要有如下控制信号:ILE、/CS、/WR1、/WR2、/XFER,作用分别是:(1)CS:转入寄存器片选信号,低电平有效。(2)ILE:输入寄存器的数据锁存允许信号,高电平有效。(3)1WR:输入寄存器的数据写信号,低电平有效。(4)2WR:DAC寄存器写信号,并启动转换。低电平有效。(5)XFER:数据向DAC寄存器传送控制信号,传送后即启动转换,低电平有效。7-5答:所谓单缓冲方式就是使DAC0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控的锁存方式,或者两个输入寄存器同时受相同的信号控制的方式。在实际应用中,如果只有一路模拟量输出,或虽有几路模拟量但并不要求同步输出的情况,就可采用单缓冲方式。所谓双缓冲方式,就是把DAC0832的两个锁存器都接成受控锁存方式。3.在图8-5中,ADC0809的转换时钟由单片机的ALE提供,由于ADC0809的典型转换频率为640KHz左右,如果单片机的晶振频率为12MHZ,则ALE的频率为2MHZ,不符合要求,需要分频。请画出分频电路。答:ALE的输出通过4分频后得到500KHz的工作频率送ADC0809的CLK端。可采用2个由D触发器构成的T’触发器实现。4.简述DAC0832的直通工作方式、单缓冲工作方式、双缓冲工作方式的特点和用途。答:直通工作方式:5个控制端均有效,直接D/A转换,不需受控。单缓冲工作方式:两个输入寄存器中任意一个处于直通方式,另一个工作于受控方式。在只有一路模拟量输出,或虽有几路模拟量但并不要求同步输出时,可采用单缓冲方式。双缓冲工作方式:两个锁存器都处于受控状态,用于需两路模拟量同时输出的场合。1.画出ADC0809典型应用电路,其中CLK引脚连接时应注意什么问题?EOC引脚连接在查询和中断工作方式下应如何处理?答:ADC0809典型应用电路如题图1所示。CLK引脚接入的工作频率应不高于640KHZ。EOC引脚的·267·连接在查询时可接到某个引脚上,编程时不断查询该引脚,一旦为1说明转换结束。在中断工作方式下应如题图1所示,接在某个外中断输入端,一旦转换结束,申请中断。7-6答:(1)周期为25ms的锯齿波发生器C语言源程序如下:#includeabsacc.h#includereg52.h#defineDA0832XBYTE[0x7fff]#defineucharunsignedchar#defineuintunsignedintuchari;voiddelay_100us(){TH1=0xff;//置定时器初值0xff9c,即65436,定时0.1msTL1=0x9c;TR1=1;//启动定时器1while(!TF1);//查询计数是否溢出,即定时0.1ms时间到,TF1=1TF1=0;//0.1ms时间到,将定时器溢出标志位TF清零}voidmain(void){TMOD=0x10;//置定时器1为方式1while(1){for(i=0;i=255;i++)//形成锯齿波输出值,最大255{DA0832=i;//D/A转换输出delay_100us();}}}(2)周期为50ms的三角波C语言源程序如下:#includeabsacc.h#includereg52.h#defineDA0832XBYTE[0x7fff]#defineucharunsignedchar#defineuintunsignedint题图1ADC0809与80C51接口·268·uchari,j;voiddelay_100us(){TH1=0xff;//置定时器初值0xff9c,即65436,定时0.1msTL1=0x9c;TR1=1;//启动定时器1while(!TF1);//查询计数是否溢出,即定时0.1ms时间到,TF1=1TF1=0;//0.1ms时间到,将定时器溢出标志位TF清零}voidmain(void){TMOD=0x10;//置定时器1为方式1while(1){for(i=0;i=255;i++)//形成三角波输出值,最大255{DA0832=i;//D/A转换输出delay_100us();}for(j=255;j=0;j--)//形成三角波输出值,最大255{DA0832=j;//D/A转换输出delay_100us();}}}(3)周期为50ms的方波C语言源程序如下:#includeabsacc.h#includereg52.h#defineDA0832XBYTE[0x7fff]#defineucharunsignedcha
本文标题:单片机第10章课后答案
链接地址:https://www.777doc.com/doc-5254705 .html