书签 分享 收藏 举报 版权申诉 / 136
上传文档赚钱

类型单片机原理及接口技术(C51编程)11课件.pptx

  • 上传人(卖家):三亚风情
  • 文档编号:3346391
  • 上传时间:2022-08-22
  • 格式:PPTX
  • 页数:136
  • 大小:6.69MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《单片机原理及接口技术(C51编程)11课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    单片机 原理 接口 技术 C51 编程 11 课件
    资源描述:

    1、第11章AT89S51单片机与DAC、ADC的接口单片机原理及接口技术(C51编程)(第2版)目 录CONTENTS11.1 单片机扩展DAC概述11.2 单片机扩展并行8位DAC0832的设计 11.3 AT89S51扩展10位串行DAC-TLC561511.4 单片机并行扩展8位A/D转换器ADC0809 11.5 单片机扩展串行8位A/D转换器TLC549 11.6 AT89S51扩展12位串行ADC-TLC2543的设计11.1 单片机扩展DAC概述 单片机只能输出数字量,但是对于某些控制场合,常常需要输出模拟量,例如直流电动机的转速控制。下面介绍单片机如何扩展DAC。目前集成化的DA

    2、C芯片种类繁多,设计者只需要合理选用芯片,了解它们的性能、引脚外特性以及与单片机的接口设计方法即可。由于现在部分单片机的芯片中集成了DAC,位数一般在10位左右,且转换速度也很快,所以单片的DAC开始向高的位数和高转换速度上转变。而低端的并行8位DAC,开始面临被淘汰的危险,但是在实验室或涉及某些工业控制方面的应用,低端8位DAC以其优异的性价比还是具有较大的应用空间。11.1 单片机扩展DAC概述1D/A转换器简介购买和使用D/A转换器时,要注意有关D/A转换器选择的几个问题。(1)D/A转换器的输出形式D/A转换器有两种输出形式:电压输出和电流输出。电流输出的D/A转换器在输出端加一个运算

    3、放大器构成的I-V转换电路,即可转换为电压输出。11.1 单片机扩展DAC概述1D/A转换器简介(2)D/A转换器与单片机的接口形式单片机与D/A转换器的连接,早期多采用8位的并行传输的接口,现在除了并行接口外,带有串行口的D/A转换器品种也不断增多,目前较为流行多采用SPI串行接口。在选择单片D/A转换器时,要根据系统结构考虑单片机与D/A转换器的接口形式。11.1 单片机扩展DAC概述2主要技术指标D/A转换器的指标很多,设计者最关心的几个指标如下。(1)分辨率分辨率指单片机输入给D/A转换器的单位数字量的变化,所引起的模拟量输出的变化,通常定义为输出满刻度值与2n之比(n为D/A转换器的

    4、二进制位数),习惯上用输入数字量的位数表示。显然,二进制位数越多,分辨率越高,即D/A转换器输出对输入数字量变化的敏感程度越高。11.1 单片机扩展DAC概述2主要技术指标例如,8位的D/A转换器,若满量程输出为10V,根据分辨率定义,则分辨率为10V/2n,分辨率为10V/256=39.1mV,即输入的二进制数最低位数字量的变化可引起输出的模拟电压变化39.1mV,该值占满量程的0.391%,常用符号1LSB表示。同理:10位D/A转换1 LSB=9.77mV=0.1%满量程12位D/A转换1 LSB=2.44mV=0.024%满量程16位D/A转换1 LSB=0.076mV=0.00076

    5、%满量程11.1 单片机扩展DAC概述2主要技术指标使用时,应根据对D/A转换器分辨率的需要来选定D/A转换器的位数。(2)建立时间建立时间是描述D/A转换器转换速度的参数,表明转换时间长短。其值为从输入数字量到输出达到终值误差(1/2)LSB(最低有效位)时所需的时间。电流输出的转换时间较短,而电压输出的转换器,由于要加上完成I-V转换的时间,因此建立时间要长一些。快速D/A转换器的建立时间可控制在1s以下。11.1 单片机扩展DAC概述2主要技术指标(3)转换精度理想情况下,转换精度与分辨率基本一致,位数越多精度越高。但由于电源电压、基准电压、电阻、制造工艺等各种因素存在误差。严格地讲,转

    6、换精度与分辨率并不完全一致。两个相同位数的不同的DAC,只要位数相同,分辨率则相同,但转换精度会有所不同。例如,某种型号的8位DAC精度为 0.19%,而另一种型号的8位DAC精度为 0.05%。目 录CONTENTS11.1 单片机扩展DAC概述11.2 单片机扩展并行8位DAC0832的设计 11.3 AT89S51扩展10位串行DAC-TLC561511.4 单片机并行扩展8位A/D转换器ADC0809 11.5 单片机扩展串行8位A/D转换器TLC549 11.6 AT89S51扩展12位串行ADC-TLC2543的设计11.2.1 8位并行DAC 0832简介1DAC0832的特性

    7、美国国家半导体公司的DAC0832芯片具有两级输入数据寄存器的8位DAC,能直接与AT89S51连接,特性如下。分辨率为8位。01OPTION02OPTION03OPTION电流输出,建立时间为1s。可双缓冲输入、单缓冲输入或直通输入。单一电源供电(+5V+15V),低功耗,20mW。04OPTION11.2.1 8位并行DAC 0832简介2DAC0832的引脚及逻辑结构引脚见图11-1。图11-1 DAC0832引脚11.2.1 8位并行DAC 0832简介2DAC0832的引脚及逻辑结构内部结构见图11-2。图11-2 DAC0832逻辑结构11.2.1 8位并行DAC 0832简介2D

    8、AC0832的引脚及逻辑结构 由图11-2,片内共两级寄存器,第一级为“8位输入寄存器”,用于存放单片机送来的数字量,使得该数字量得到缓冲和锁存,由LE1*(即M1=1时)加以控制;“8位DAC寄存器”是第二级8位输入寄存器,用于存放待转换的数字量,由LE2*控制(即M3=1时),这两级8位寄存器,构成两级输入数字量缓存。“8位D/A转换电路”受“8位DAC寄存器”输出数字量控制,输出和数字量成正比的模拟电流。如要得到模拟输出电压,需外接I-V转换电路。11.2.1 8位并行DAC 0832简介2DAC0832的引脚及逻辑结构 各引脚的功能如下。DI7DI0:8位数字量输入端,接收发来的数字量

    9、。01OPTION02OPTION03OPTIONILE、CS*、WR1*:当ILE=1,CS*=0,WR1*=0时,即M1=1,第一级8位输入寄存器被选中。待转换的数字信号被锁存到第一级8位输入寄存器中。XFER*、WR2*:当 XFER*=0,WR2*=0时,第一级8位输入寄存器中待转换数字进入第二级8位DAC寄存器中。11.2.1 8位并行DAC 0832简介2DAC0832的引脚及逻辑结构 各引脚的功能如下。04OPTIONIOUT1:D/A转换电流输出1端,输入数字量全为“1”时,IOUT1最大,输入数字量全为“0”时,IOUT1最小。IOUT2:D/A转换电流输出2端,IOUT2+

    10、IOUT1=常数。Rfb:I-V转换时的外部反馈信号输入端,内部已有反馈电阻Rfb,根据需要也可外接反馈电阻。05OPTION06OPTIONVREF:参考电压输入端。VCC:电源输入端,在+5V+15V范围内。07OPTION08OPTION11.2.1 8位并行DAC 0832简介2DAC0832的引脚及逻辑结构09OPTIONDGND:数字地。AGND:模拟地,最好与基准电压共地。10OPTION11.2.2 案例设计:单片机扩展DAC0832的程控电压源 单片机控制DAC0832可实现数字调压,单片机只要送给DAC0832不同数字量,即可实现不同模拟电压输出。DAC0832输出可用单缓

    11、冲方式或双缓冲方式。单缓冲方式是DAC0832片内的两级数据寄存器的有一个处于直通方式,另一处于受AT89S51控制的锁存方式。实际应用中,如只有一路模拟量输出,或虽是多路模拟量输出,但并不要求多路输出同步情况下,就可采用单缓冲方式。11.2.2 案例设计:单片机扩展DAC0832的程控电压源 单片机控制DAC0832实现数字调压的单缓冲方式接口电路见图11-3。由于 XFER*=0、WR2*=0,所以第二级“8位DAC寄存器”处于直通。第一级“8位输入寄存器”为单片机控制的锁存方式,3个锁存控制端的ILE直接接到有效的高电平,另两个控制端CS*、WR1*分别由单片机P2.0和P2.1控制DA

    12、C 0832输出电压Vo与输入数字量B关系为:11.2.2 案例设计:单片机扩展DAC0832的程控电压源 由上式见,输出模拟电压Vo与输入数字量B以及基准电压VREF成正比,且B为0时,Vo也为0,B为255时,Vo为最大的绝对值输出,且不会大于VREF。下面介绍单缓冲方式下单片机扩展DAC0832程控电压源的设计。11.2.2 案例设计:单片机扩展DAC0832的程控电压源 图11-3 单缓冲方式的单片机与DAC0832的接口原理电路11.2.2 案例设计:单片机扩展DAC0832的程控电压源【例11-1】单片机与DAC0832单缓冲方式接口见图11-3,单片机P2.0脚控制DAC0832

    13、的CS*脚,P2.1控制WR1*端。当P2.0脚为低时,如果同时WR*有效,单片机就会把数字量通过P1口送入DAC0832 的DI7DI0端,并转换输出。用虚拟直流电压表测量经运放LM358N的I/V转换后的电压值,并观察输出电压变化。11.2.2 案例设计:单片机扩展DAC0832的程控电压源 仿真运行后,可看到虚拟直流电压表测量输出电压在2.5V0V(参考电压为2.5V)范围内不断线性变化。如参考电压为5V,则输出电压在5V0V范围内变化。如果虚拟直流电压表太小,看不清楚电压显示值,可用鼠标滚轮放大直流电压表。单片机送给DAC0832不同的数字量,就可得到不同的输出电平,从而使单片机控制D

    14、AC0832成为一个程控电压源。11.2.2 案例设计:单片机扩展DAC0832的程控电压源 参考程序如下:include regal.h#define uchar unsigned char#define uint unsigned int#define out p1sbit dac csp2 osbit dac wr-p2 1void main(void)/主函数uchar temp,1-25511.2.2 案例设计:单片机扩展DAC0832的程控电压源 while(1)out-temp;DAC CS=0;/单片机控制Cs脚为低 DAC Wr=0;/单片机控制wR1脚为低,向DAC写入 /

    15、转换的数字量 DAC CS=I;DAC Wr=l;temp+;while(-1);i先减1,然后再使用i的值 while(-1);while(-1);11.2.3 案例设计2:波形发生器的制作 单片机如把不同波形数据发送给DAC0832,就可产生各种不同波形信号。下面介绍单片机控制DAC0832产生各种函数波形案例、【例11-2】单片机控制DAC0832产生正弦波、方波、三角波、梯形波和三角波。Proteus 的原理电路见图11-4。单片机P1.0 P1.4接有5个按键,当按键按下时,分别对应产生正弦波、方波、三角波、梯形波和三角波。11.2.3 案例设计2:波形发生器的制作 图11-4 控制

    16、DAC0832产生各种波形的原理电路 11.2.3 案例设计2:波形发生器的制作 单片机控制DAC0832产生各种波形,实质就是单片机把波形的采样点数据送至DAC0832,经D/A转换后输出模拟信号。改变送出的函数波形采样点后的延时时间,就可改变函数波形的频率。产生各种波形原理如下。4321678511.2.3 案例设计2:波形发生器的制作 正弦波产生原理:单片机把正弦波的256个采样点的数据送给DAC0832。正弦波采样数据可用软件编程或MATLAB等工具计算。方波产生原理:单片机采用定时器定时中断,时间常数决定方波高、低电平持续时间。三角波产生原理:单片机把初始数字量0送DAC0832后,

    17、不断增1,增至0 xff后,然后再把送给DAC0832的数字量不断减1,减至0后,再重复上述过程。11.2.3 案例设计2:波形发生器的制作 锯齿波产生原理:单片机把初始数据0送DAC0832后,数据不断增1,增至0 xff后,再增1则溢出清“0”,模拟输出又为0,然后再重复上述过程,如此循环,则输出锯齿波。正弦波产生原理:单片机把正弦波的256个采样点的数据送给DAC0832。正弦波采样数据可用软件编程或MATLAB等工具计算。11.2.3 案例设计2:波形发生器的制作 参考程序如下:#includesbit wr=P36;sbit rd=P32;sbit key0=P10;/定义P1.0脚

    18、的按键为正弦波键key0sbit key1=P11;/定义P1.1脚的按键为方波键key1sbit key2=P12;/定义P1.2脚的按键为三角波键key2sbit key3=P13;/定义P1.3脚的按键为梯形波键key3sbit key4=P14;/定义P1.3脚的按键为锯齿波键key4unsigned char flag;/flag为1、2、3、4、5时对应/正弦波、方波、三角波、梯形波、锯齿波unsigned char const code /以下为正弦波采样点数组256个数据11.2.3 案例设计2:波形发生器的制作 SIN_code256=0 x80,0 x83,0 x86,0

    19、x89,0 x8c,0 x8f,0 x92,0 x95,0 x98,0 x9c,0 x9f,0 xa2,0 xa5,0 xa8,0 xab,0 xae,0 xb0,0 xb3,0 xb6,0 xb9,0 xbc,0 xbf,0 xc1,0 xc4,0 xc7,0 xc9,0 xcc,0 xce,0 xd1,0 xd3,0 xd5,0 xd8,0 xda,0 xdc,0 xde,0 xe0,0 xe2,0 xe4,0 xe6,0 xe8,0 xea,0 xec,0 xed,0 xef,0 xf0,0 xf2,0 xf3,0 xf4,0 xf6,0 xf7,0 xf8,0 xf9,0 xfa,0

    20、xfb,0 xfc,0 xfc,0 xfd,0 xfe,0 xfe,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xff,0 xfe,0 xfe,0 xfd,0 xfc,0 xfc,0 xfb,0 xfa,0 xf9,0 xf8,0 xf7,0 xf6,0 xf5,0 xf3,0 xf2,0 xf0,0 xef,0 xed,0 xec,0 xea,0 xe8,0 xe6,0 xe4,0 xe3,0 xe1,0 xde,0 xdc,0 xda,0 xd8,0 xd6,0 xd3,0 xd1,0 xce,0 xcc,0

    21、xc9,0 xc7,0 xc4,0 xc1,0 xbf,0 xbc,0 xb9,0 xb6,0 xb4,0 xb1,0 xae,0 xab,0 xa8,0 xa5,0 xa2,0 x9f,0 x9c,0 x99,0 x96,0 x92,0 x8f,0 x8c,0 x89,0 x86,0 x83,0 x80,0 x7d,0 x79,0 x76,0 x73,0 x70,0 x6d,0 x6a,0 x67,0 x64,0 x61,0 x5e,0 x5b,0 x58,0 x55,0 x52,0 x4f,0 x4c,0 x49,0 x46,0 x43,0 x41,0 x3e,0 x3b,0 x39,0

    22、x36,0 x33,0 x31,0 x2e,0 x2c,0 x2a,0 x27,0 x25,0 x23,0 x21,0 x1f,0 x1d,0 x1b,0 x19,0 x17,0 x15,0 x14,0 x12,0 x10,0 xf,0 xd,0 xc,0 xb,0 x9,0 x8,0 x7,0 x6,0 x5,0 x4,0 x3,0 x3,0 x2,0 x1,0 x1,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x1,0 x1,0 x2,0 x3,0 x3,0 x4,0 x5,0 x6,0 x7,0 x8,0 x9,0 x

    23、a,0 xc,0 xd,0 xe,0 x10,0 x12,0 x13,0 x15,0 x17,0 x18,0 x1a,0 x1c,0 x1e,0 x20,0 x23,0 x25,0 x27,0 x29,0 x2c,0 x2e,0 x30,0 x33,0 x35,0 x38,0 x3b,0 x3d,0 x40,0 x43,0 x46,0 x48,0 x4b,0 x4e,0 x51,0 x54,0 x57,0 x5a,0 x5d,0 x60,0 x63,0 x66,0 x69,0 x6c,0 x6f,0 x73,0 x76,0 x79,0 x7c11.2.3 案例设计2:波形发生器的制作 unsi

    24、gned char keyscan()/键盘扫描函数unsigned char keyscan_num,temp;P1=0 xff;/P1口输入temp=P1;/从P1口读入键值,存入temp中/判是否有键按下,即键值不为0 xff,则有键按下 if(temp&0 xff)if(key0=0)/产生正弦波的按键按下,P1.0=0 keyscan_num=1;/得到的键值为1,表示产生正弦波 else if(key1=0)/产生方波的按键按下,P1.1=0 keyscan_num=2;/得到键值为2,表示产生方波 11.2.3 案例设计2:波形发生器的制作 else if(key2=0)/产生三

    25、角波的按键按下,P1.2=0keyscan_num=3;/得到的键值为3,表示产生三角波else if(key3=0)/产生梯形波的按键按下,P1.3=0keyscan_num=4;/得到的键值为4,表示产生梯形波else if(key4=0)/产生锯齿波的按键按下,P1.3=0keyscan_num=5;/得到的键值为5,表示产生锯齿波else keyscan_num=0;/没有按键按下,键值为0 return keyscan_num;/得到的键值返回11.2.3 案例设计2:波形发生器的制作 void init DAo8320/AC0832初始化函数rd=0;wr=0;Void SIN()

    26、/正弦波函数unsigned int i;do P2=SIN_codei;/由P2口输出给DAC0832正弦波数据 i=i+1;/数组数据指针增1while(i256);/判是否已输出完256个波形数据,/未完继续输出数据11.2.3 案例设计2:波形发生器的制作 Void Square()/方波函数EA=1;/总中断允许ET0=1;/允许T0中断TMOD=1;/T0工作在方式1TH0=0 xff;/给T0高8位装入时间常数TL0=0 x83;/给T0低8位装入时间常数TR0=1;/启动T011.2.3 案例设计2:波形发生器的制作 Void Triangle()/三角波函数P2=0 x00;

    27、/三角波函数初始值为0doP2=P2+1;/三角波上升沿while(P20 x00);/判是否已经输出为0P2=0 x00;11.2.3 案例设计2:波形发生器的制作 Void Sawtooth()/锯齿波函数P2=0 x00;doP2=P2+1;/产生锯齿波的上升沿while(P20 xff);/判上升沿是否已经 结束11.2.3 案例设计2:波形发生器的制作 Void Trapezoidal()/梯形波函数unsigned char i;P2=0 x00;doP2=P2+1;/产生梯形波的上升沿while(P20;i-)/梯形波的平顶延时P2=0 xff;/产生梯形波的下降沿 doP2=P

    28、2-1;/产生梯形波的下降沿while(P20 x00);/判梯形波的下降沿是否结束 P2=0 x00;11.2.3 案例设计2:波形发生器的制作 void main()/主函数init_DA0832();/DA0832的初始化函数 do flag=keyscan();/将键盘扫描函数得到的键值赋给flag while(!flag);while(1)switch(flag)case 1:do f lag=keyscan();SIN();while(flag=1);break;11.2.3 案例设计2:波形发生器的制作 case 2:Square();do flag=keyscan();whil

    29、e(flag=2);TR0=0;break;case 3:do flag=keyscan();Triangle();while(flag=3);break;11.2.3 案例设计2:波形发生器的制作 case 4:do flag=keyscan();Trapezoidal();while(flag=4);break;case 5:do flag=keyscan();Sawtooth();while(flag=5);break;default:flag=keyscan();break;11.2.3 案例设计2:波形发生器的制作 void timer0(void)interrupt 1/定时器T0

    30、的中断函数 P2=P2;/方波的输出电平求反 TH0=0 xff;/重装定时时间常数 TL0=0 x83;TR0=1;/启动定时器T0本案例在仿真运行时,可看到弹出的虚拟示波器,从虚拟示波器屏幕上可观察到由按键选择的函数波形输出。如在仿真时关闭该虚拟示波器后,再启用虚拟示波器观察波形,可点击鼠标右键,现下拉菜单,点击“oscilloscope”后,仿真界面又会出现虚拟示波器屏幕。目 录CONTENTS11.1 单片机扩展DAC概述11.2 单片机扩展并行8位DAC0832的设计 11.3 AT89S51扩展10位串行DAC-TLC561511.4 单片机并行扩展8位A/D转换器ADC0809

    31、11.5 单片机扩展串行8位A/D转换器TLC549 11.6 AT89S51扩展12位串行ADC-TLC2543的设计11.3.1 串行DACTLC5615简介 美国TI公司产品,串行接口DAC,电压输出型,最大输出电压是基准电压值两倍。带上电复位功能,即上电时把 DAC 寄存器复位至全零。单片机只需用3 根串行总线就可完成 10 位数据的串行输入,易于和工业标准的微处理器或单片机接口,非常适于电池供电的测试仪表、移动电话,也适用于数字失调与增益调整以及工业控制场合。TLC5615的引脚见图11-5。图11-5 TLC5615引脚11.3.1 串行DACTLC5615简介8只引脚功能如下:n

    32、 DIN:串行数据输入端;n SCLK:串行时钟输入端;n CS*:片选端,低电平有效;n DOUT:用于级联时的串行数据输出端;n AGND:模拟地;n REFIN:基准电压输入端,2V(VDD-2);n OUT:DAC 模拟电压输出端;n VDD:正电源端,4.55.5V,通常取 5V。11.3.1 串行DACTLC5615简介TLC5615 内部功能框图见图11-6。图11-6 TLC5615 内部功能框图11.3.1 串行DACTLC5615简介主要由以下几部分组成:n 0 位 DAC 电路;n一个 16 位移位寄存器,接收串行移入的二进制数,且有一个级联的数据输出端DOUT;n 并行

    33、输入输出的 10 bit DAC 寄存器,为 10 位 DAC 电路提供待转换的二进制数据;n电压跟随器为参考电压端REFIN提供高输入阻抗,大约10M;n 2 电路提供最大值为 2 倍于REFIN输出;n 上电复位电路和控制逻辑电路。11.3.1 串行DACTLC5615简介两种工作方式:第1种工作方式:12 位数据序列。从图10-8看出,16 位移位寄存器分为高4位的虚拟位、低2位的填充位以及10位有效数据位。在TLC5615 工作时,只需要向 16 位移位寄存器先后输入10位有效位和低2位的任意填充位。01OPTION02OPTION第2种工作方式:级联方式,即 16 位数据列,可将本片

    34、的DOUT接到下一片的 DIN,需向 16 位移位寄存器先后输入高 4 位虚拟位、10 位有效位和低 2 位填充位,由于增加了高 4 位虚拟位,所以需要 16 个时钟脉冲。11.3.1 串行DACTLC5615简介利用带有串行接口的TLC5615 D/A转换电路,调节可变电阻器,使输出电压可在 05V 内调节。调整电位计,用电压表测量DAC转换输出的电压值。当TLC5615片选脚CS*为低时,串行输入数据才能被移入16位移位寄存器。当CS*为低时,在每一个 SCLK 时钟的上升沿将 DIN 的一位数据移入 16 位移寄存器。注意,二进制最高有效位被导前移入。接着,CS*的上升沿将16位移位寄存

    35、器的10位有效数据锁存于 10 位 DAC 寄存器,供DAC电路进行转换;当片选端 CS*为高时,串行输入数据不能被移入16位移位寄存器。11.3.2 案例设计:单片机扩展串行DACTLC5615的设计【例11-3】单片机控制串行DAC-TLC5615进行D/A转换,原理电路及仿真见图11-7。调节可变电位计RV1的值,使TLC5615的输出电压可在05V 内调节,从虚拟直流电压表可观察到DAC转换输出的电压值。11.3.2 案例设计:单片机扩展串行DACTLC5615的设计图11-7 单片机与DAC-TLC5615的接口电路 11.3.2 案例设计:单片机扩展串行DACTLC5615的设计参

    36、考程序如下:#include#include#define uchar unsigned char#define uint unsigned intsbit SCL=P11;sbit CS=P12;sbit DIN=P10;uchar bdata dat_in_h;uchar bdata dat_in_l;sbit h_7=dat_in_h7;sbit l_7=dat_in_l7;11.3.2 案例设计:单片机扩展串行DACTLC5615的设计void delayms(uint j)uchar i=250;for(;j0;j-)while(-i);i=249;while(-i);i=250;1

    37、1.3.2 案例设计:单片机扩展串行DACTLC5615的设计/一次向TLC5615中写入12bit数据函数void Write_12Bits(void)uchar i;SCL=0;/置零SCL,为写bit做准备;CS=0;/片选端=0;for(i=0;i2;i+)/循环2次,发送高两位;if(h_7)/高位先发;DIN=1;/将数据送出;SCL=1;/提升时钟,写操作在时钟上升沿触发SCL=0;/结束该位传送,为下次写作准备;else DIN=0;SCL=1;CL=0;dat_in_h=1;11.3.2 案例设计:单片机扩展串行DACTLC5615的设计for(i=0;i8;i+)/循环八次

    38、,发送低八位;if(l_7)DIN=1;/将数据送出;SCL=1;/提升时钟,写操作在时钟上升沿触发SCL=0;/结束该位传送,为下次写作准备else DIN=0;SCL=1;SCL=0;dat_in_l=1;for(i=0;i2;i+)/循环2次,发送两个填充位 DIN=0;SCL=1;SCL=0;CS=1;SCL=0;11.3.2 案例设计:单片机扩展串行DACTLC5615的设计void TLC5615_Start(uint dat_in)/启动DAC转换函数dat_in%=1024;dat_in_h=dat_in/256;dat_in_l=dat_in%256;dat_in_h=6;W

    39、rite_12Bits();void main()/主函数while(1)TLC5615_Start(0 xffff);delayms(1);11.3 单片机扩展ADC概述 1A/D转换器简介目前单片ADC芯片较多,对设计者来说,只需合理的选择芯片即可。现在部分的单片机片内也集成了A/D转换器,位数为8位、10位或12位,且转换速度也很快,但是在片内A/D转换器不能满足需要的情况下,还是需要外扩。因此,作为外部扩展A/D转换器的基本方法,读者还是应当掌握。尽管A/D转换器种类很多,但目前广泛应用在单片机应用系统中的主要有逐次比较型转换器和双积分型转换器,此外-式转换器也逐渐得到重视和应用。11

    40、.3 单片机扩展ADC概述 1A/D转换器简介 逐次比较型ADC,在精度、速度和价格都适中,是最常用的A/D转换器。双积分型ADC,具有精度高、抗干扰性好、价格低廉等优点,与逐次比较型A/D转换器相比,转换速度较慢,近年来在单片机应用领域中已得到广泛应用。-式ADC具有积分式与逐次比较型ADC的优点。它对工业现场串模干扰具有较强抑制能力,不亚于双积分ADC,它比双积分ADC有较高转换速度。与逐次比较型ADC相比,有较高信噪比,分辨率高,线性度好。由于上述优点,-式ADC得到了重视,已有多种-式A/D芯片可供用户选用。11.3 单片机扩展ADC概述 1A/D转换器简介A/D转换器按照输出数字量的

    41、有效位数分为4位、8位、10位、12位、14位、16位并行输出以及BCD码输出的位、位、位等多种。目前,除了并行的A/D转换器外,带有同步SPI串行接口的A/D转换器的使用也逐渐增多。串行接口的A/D转换器具有占用单片机的端口线少、使用方便、接口简单等优点,已经得到广泛的使用。较为典型的串行A/D转换器为美国TI公司的TLC549(8位)、TLC1549(10位)以及TLC1543(10位)和TLC2543(12位)等。11.3 单片机扩展ADC概述 1A/D转换器简介A/D转换器按照转换速度可大致分为超高速(转换时间1ns)、高速(转换时间1s)、中速(转换时间1ms)、低速(转换时间1s)

    42、等几种不同转换速度的芯片。目前许多新型的A/D转换器已将多路转换开关、时钟电路、基准电压源、二/十进制译码器和转换电路集成在一个芯片内,为用户提供了极大方便。11.3 单片机扩展ADC概述 2A/D转换器主要技术指标转换时间或转换速率。转换时间是指A/D转换器完成一次转换所需要的时间。转换时间的倒数为转换速率。分辨率。分辨率是衡量A/D转换器能够分辨出输入模拟量最小变化程度的技术指标。分辨率取决于A/D转换器的位数,习惯上用输出的二进制位数或BCD码位数表示。例如,A/D转换器AD1674的满量程输入电压为5V,可输出12位二进制数,即用212个数进行量化,其分辨率为1LSB,也即5V/212

    43、=1.22mV,其分辨率为12位,或能分辨出输入电压1.22mV的变化。11.3 单片机扩展ADC概述 2A/D转换器主要技术指标又如,双积分型输出BCD码的A/D转换器MC14433,其满量程输入电压为2V,其输出最大的十进制数为1999,分辨率为三位半,如果换算成二进制位数表示,其分辨率约为11位,因为1999最接近于211=2048。量化过程引起的误差称为量化误差。量化误差是由于有限位数字量对模拟量进行量化而引起的误差。量化误差理论上规定为一个单位分辨率的1/2LSB,提高位数既可以提高分辨率,又能减少量化误差。11.3 单片机扩展ADC概述 2A/D转换器主要技术指标转换精度。定义为一

    44、个实际A/D转换器与一理想A/D转换器在量化值上的差值,可用绝对误差或相对误差表示。目 录CONTENTS11.1 单片机扩展DAC概述11.2 单片机扩展并行8位DAC0832的设计 11.3 AT89S51扩展10位串行DAC-TLC561511.4 单片机并行扩展8位A/D转换器ADC0809 11.5 单片机扩展串行8位A/D转换器TLC549 11.6 AT89S51扩展12位串行ADC-TLC2543的设计11.4 单片机并行扩展8位A/D转换器ADC0809 1 ADC0809引脚及功能 逐次比较型8路模拟输入、8位数字量输出的A/D转换器,引脚见图11-8。图11-8 ADC0

    45、809引脚11.4 单片机并行扩展8位A/D转换器ADC0809 1 ADC0809引脚及功能共28个引脚,双列直插式封装,引脚功能如下:u IN0IN7:8路模拟信号输入。u D0D7:转换完毕的8位数字量输出端。u C、B、A与ALE:C、B、A端控制8路模拟输入通道的切换,分别与单片机的3条地址线相连。C、B、A=000111对应IN0IN7通道地址。各路模拟输入通道之间切换由改变加到C、B、A上的编码来实现。ALE为ADC0809接收C、B、A编码时的锁存控制信号。11.4 单片机并行扩展8位A/D转换器ADC0809 1 ADC0809引脚及功能uOE、START、CLK:OE为转换

    46、结果输出允许端;START为启动信号输入端;CLK为时钟信号输入端,ADC0809的CLK信号须外加。uEOC:转换结束输出信号。当A/D转换开始时,该引脚为低电平,当A/D转换结束时,该引脚为高电平。uVR(+)、VR(-):基准电压输入端。11.4 单片机并行扩展8位A/D转换器ADC0809 2ADC0809的内部结构结构见图11-9。ADC0809采用逐次比较方法完成A/D转换,由单一+5V电源供电。片内带有锁存功能的8路选1模拟开关,由加到C、B、A引脚编码决定所选通道。图11-9 ADC0809结构框图11.4 单片机并行扩展8位A/D转换器ADC0809 2ADC0809的内部结

    47、构 ADC0809完成一次转换需100s(此时加在CLK引脚的时钟频率为640MHz,即转换时间与加在CLK引脚的时钟频率有关),它具有输出TTL三态锁存缓冲器,可直接连到AT89S51单片机的数据总线上。通过适当的外接电路,ADC0809可对05V的模拟信号进行转换。11.4 单片机并行扩展8位A/D转换器ADC0809 3输入模拟电压与输出数字量的关系ADC0809输入模拟电压与转换输出结果数字量关系如下:其中:VIN处于(VREF(+)-VREF(-))之间,N为十进制数。通常情况下VREF(+)接+5V,VREF(-)接地,即模拟输入电压范围为0+5V,对应的数字量输出为0 x000

    48、xff。11.4 单片机并行扩展8位A/D转换器ADC0809 4 ADC0809的转换工作原理讨论接口设计前,先了解单片机如何控制ADC开始转换,如何得知转换结束以及如何读入转换结果的问题。单片机控制ADC0809进行A/D转换过程如下:首先由加到C、B、A上的编码决定选择ADC0809的某一路模拟输入通道,同时产生高电平加到ADC0809的START引脚,开始对选中通道转换。11.4 单片机并行扩展8位A/D转换器ADC0809 4 ADC0809的转换工作原理 当转换结束时,ADC0809发出转换结束EOC(高电平)信号。当单片机读取转换结果时,需控制OE端为高电平,把转换完毕的数字量读

    49、入到单片机内。查询方式是检测EOC脚是否变为高电平,如为高电平则说明转换结束,然后单片机读入转换结果。单片机读取A/D转换结果可采用查询方式和中断方式。11.4 单片机并行扩展8位A/D转换器ADC0809 4 ADC0809的转换工作原理中断方式是单片机启动ADC转换后,单片机执行其他程序。ADC0809转换结束后EOC变为高电平,EOC通过反相器向单片机发出中断请求,单片机响应中断,进入中断服务程序,在中断服务程序中读入转换完毕的数字量。很明显,中断方式效率高,特适合于转换时间较长的ADC。11.4.1 案例:单片机控制ADC0809进行A/D转换【例11-4】采用查询方式控制ADC080

    50、9(Proteus元件库中没有ADC0809,可用库中ADC0808替代,与ADC0809性能完全相同,用法一样,只是在非调整误差方面有所不同,ADC0808为1/2LSB,而ADC0809为1LSB)进行A/D转换,原理电路见图10-12。输入给ADC0809模拟电压可通过调节电位器RV1来实现,ADC0808将输入的模拟电压转换成二进制数字,并通过P1口输出,控制发光二极管亮与灭,来显示转换结果的二进制数字量。11.4.1 案例:单片机控制ADC0809进行A/D转换图11-10 单片机控制ADC0809进行转换11.4.1 案例:单片机控制ADC0809进行A/D转换ADC0808转换一

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:单片机原理及接口技术(C51编程)11课件.pptx
    链接地址:https://www.163wenku.com/p-3346391.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库