,*,出版社 理工分社,单片机应用技术项目教程,出版社 理工分社,单片机应用技术项目教程,教学目标,*,出版社 理工分社,单片机应用技术项目教程,项目分析,*,出版社 理工分社,单片机应用技术项目教程,项目知识平台,*,出版社 理工分社,单片机应用技术项目教程,项目实施,*,出版社 理工分社,单片机应用技术项目教程,工作任务,*,出版社 理工分社,单片机应用技术项目教程,项目小结,*,出版社 理工分社,单片机应用技术项目教程,项目考核,*,出版社 理工分社,单片机应用技术项目教程,复习思考,*,出版社 理工分社,单片机应用技术项目教程,项目拓展,*,工程11:调速水泵,知识目标:,1,了解,PWM,调速原理;,2,了解常用,D/A,转换的原理、技术指标;,3,掌握常用,D/A,转换芯片的使用方法;,4,掌握,DAC,器件的三种工作方式。,技能训练目标:,1,熟练掌握常用,D/A,转换芯片与单片机的接口方法;,2,学会对,D/A,转换程序设计方法;,调速水泵,设计要求:,利用,DAC0832,输出,05V,模拟电压对水泵进行速度调节,使水泵的扬程、流量相应改变。,本系统功能由硬件和软件两大部份协调完成,硬件局部主要由单片机最小系统、DAC0832芯片组成的 D/A转换电路、电源电路、I-V放大电路等组成。,其中AT89C52主要完成外围硬件的控制以及一些运算功能;D/A转换电路主要是将单片机产生的波形从数字形式转化为模拟形式,以电流的形式输出;I-V放大电路是由LM324构成的两级运放,主要作用是一是将DAC0832的输出电流转换成输出电压单极性,二是提高输出信号的电压和功率,使之能够驱动水泵正常工作;电源电路主要是由7805芯片组成的电源电路,主要功能是给单片机最小系统以及D/A转换电路供电,外接电源为220伏的交流电。本系统还应提供12V直流电源给运放LM324,24V直流电源给水泵。,总体设计方案,单片机,水泵,I-V,放大电路,电源电路,时钟电路,复位电路,D/A,转换电路,图,11,1,调速水泵方框图,应用软件采用模块化设计方法。系统软件主要由主程序、,D/A,转换功能函数、延时子程序等模块组成。,主程序,D/A,转换子程序,延时子程序,图,11-2,系统软件结构框图,D/A,转换器的作用,单片机,控制对象,D/A,转换,将数字量转换为模拟量,以便操纵控制对象。,D/A,转换器的主要技术指标,分辨率,分辨率是指最小输出电压对应于输入数字量最低位增1所引起的输出电压增量和最大输出电压对应于输入数字量所有有效位全为1时的输出电压之比,例如,4位DAC的分辨率为1/(24-1)=1/15=6.67%分辨率也常用百分比来表示。8位DAC的分辨率为1/255=0.39%。显然,位数越多,分辨率越高。,D/A,转换器的主要技术指标转换精度,D/A转换精度分为绝对和相对转换精度,一般是用误差大小表示。,绝对转换精度是指满刻度数字量输入时,模拟量输出接近理论值的程度。它和标准电源的精度、权电阻的精度有关。相对转换精度指在满刻度已经校准的前提下,整个刻度范围内,对应任一模拟量的输出与它的理论值之差。它反映了DAC的线性度。通常,相对转换精度比绝对转换精度更有实用性,相对转换精度一般用绝对转换精度相对于满量程输出的百分数来表示,有时也用最低位LSB的几分之几表示。例如,设VFS为满量程输出电压5V,n位DAC的相对转换精度为0.1%,那么最大误差为0.1%VFS=5mV;假设相对转换精度为1/2LSB,LSB=1/2n,那么最大相对误差为1/2n+1VFS,D/A,转换器的主要技术指标,转换速率,/,建立时间,转换速率实际是由建立时间来反映的。建立时间是指数字量为满刻度值各位全为1时,DAC的模拟输出电压到达某个规定值比方,90%满量程或1/2LSB满量程时所需要的时间。,建立时间是D/A转换速率快慢的一个重要参数。很显然,建立时间越大,转换速率越低。不同型号DAC的建立时间一般从几个毫微秒到几个微秒不等。假设输出形式是电流,DAC的建立时间是很短的;假设输出形式是电压,DAC的建立时间主要是输出运算放大器所需要的响应时间。,D/A,转换器的主要技术指标非线性误差,D/A,转换器的非线性误差定义为实际转换特性曲线与理想特性曲线之间的最大偏差,并以该偏差相对于满量程的百分数度量。转换器电路设计一般要求非线性误差不大于,1/2LSB,D/A,转换器的主要技术指标,输出极性和范围,D/A,转换器输出范围与参考电压有关。对电流输出型,要用转换电路将其转换成电压,故输出范围与转换电路有关。,输出极性有双极性和单极性两种。,典型,D/A,转换器件,DAC0832,D/A转换器的种类非常多,本工程以美国国家半导体公司生产的DAC0832为例来介绍它们的使用方法。,DAC0832是具有两个输入数据存放器的8位双缓冲器DAC,单电源供电。芯片内带有资料锁存器,可与数据总线直接相连。电路有极好的温度跟随性,使用了COMS电流开关和控制逻辑而获得低功耗、低输出的泄漏电流误差。芯片采用R-2RT型电阻网络,对参考电流进行分流完成D/A转换。转换结果以一组差动电流IOUT1和IOUT2输出。,DAC0832主要性能参数:分辨率8位;转换时间1s;参考电压10V;单电源+5V+15v;功耗20mW。,典型芯片,-DAC0832,介绍,DAC0832,是一个八位,D/A,转换器,转换时间,1,微秒,结构如下:,LE1,或,LE2=1,,当前寄存器的输出跟随输入,LE1,或,LE2=0,,锁存数据,DAC0832,功能分析,DI0-DI7,:转换数据输入,CS,:片选信号,因此,,DAC0832,可以有三种工作形式:,直通,、,单级锁存,、,两级锁存,。,DAC0832,和单片机的连接,译码器输出,一个处于直通方式,另一个处于受控的锁存方式,单缓冲方式的接口1,LE1,受控,LE2,直通,单缓冲方式的接口2,两个输入存放器同时受控的方式,LE1,、,LE2,同时受控,双缓冲方式的接口和应用,Y7,A,7,A,6,A,5,74LS138,Y6,C,BA,Y7,Y6,两个锁存器,都接成,受控锁存方式。,你知道它与第二种单缓冲方式的区别吗,?,DAC0832,的应用,D/A转换器在实际中经常作为波形发生器使用,通过它可以产生各种各样的波形。它的根本原理如下:利用D/A 转换器输出模拟量与输入数字量成正比这一特点,通过程序控制CPU向D/A转换器送出随时间呈一定规律变化的数字,那么D/A转换器输出端就可以输出随时间按一定规律变化的波形。,产生锯齿波,根据右图编程,DAC0832的地址为7FFFH。从DAC0832输出端分别产生锯齿波、三角波和方波。如果要使DAC0832输出电压是逐渐上升的锯齿波,只要让单片机从P0.0P0.7输出不断增大的数据即可。,由于DAC0832相当于片外存储器,因此可以采用由“ABSACC.H头文件所定义的指令“XBYTEunsigned int来实现对DAC0832的寻址,如:#define DAC0832 XBYTE0 x7FFF,产生锯齿波,参考程序:,/*,*,文件名:,ex1.C,*,摘要:产生锯齿波,*,/,#include /,定义单片机的头文件,#include /,定义绝对地址访问,#define uchar unsigned char,#define DAC0832 XBYTE0 x7FFF,/*,*,函数名称:,main(),主函数,*函数功能:启动,D/A,转换,输出锯齿波,*,/,void main(),uchar i;,while(1),for(i=0;i0 xff;i+)/,形成锯齿波输出值,最大为,255,DAC0832=i;/DA,转换,产生三角波,参考程序:,/*,*,文件名:,ex2.C,*,摘要:产生三角波,*,/,#include,#include /,定义绝对地址访问,#define uchar unsigned char,#define DAC0832 XBYTE0 x7FFF,/*,*,函数名称:,main(),主函数,*函数功能:启动,D/A,转换,输出三角波,*,/,void main(),uchar i;,while(1),for(i=0;i0;i-)DAC0832=i;,产生方波,参考程序:,/*,*,文件名:,ex3.C *,摘要:产生方波,*,/,#include,#include /,定义绝对地址访问,#define uchar unsigned char,#define DAC0832 XBYTE0 x7FFF,/*,*,函数名称:,delay,子函数 *函数功能:延时,*,/,void delay()/,延时函数,uchar i;,for(i=0;i=255)/判断是否超出DAC0832的最大输出数据字节,i=250;/如果超出那么按最大值换算,i=i+5;/每次启动DAC0832转换值为5,相当于每按键一次输出电压增加0.1V,P2=i;/将数据i的值送入到DAC0832中进行自动转换,参考程序:,if(reduce=0)/判断是否减速键按下,if(reduce=0),delay(2);/延时去抖,if(i=0)/判断是否超出DAC0832的最小输出数据字节,i=5;/如果超出那么按最小值换算,i=i-5;/每次启动DAC0832转换值为5,,/相当于每按键一次输出电压减少0.1V,P2=i;/将数据i的值送入到DAC0832中进行自动转换,1启动Keil uVision4软件,创立新工程:CH11.UVPROJ,CPU选择Atmel 89C52。,2对工程的属性进行设置:目标属性中选择“生成HEX文件。,3编写参考源程序ch11.c,以C为扩展名保存在工程文件夹中。,4将参考源程序参加程序组:鼠标右键单击程序组图标,参加文件组。,5调试:进入调试状态,期间可能需要修改参考源程序,直到没有语法错误为止。翻开相应窗口,运行程序,观察运行结果。,【,活动三,】,程序仿真与调试,【,活动四,】,实物制作,调速水泵实物图,考核项目,考核内容,技术要求,评分,标准,得分,备注,总体设计,任务分析,方案设计,软件和硬件功能划分,任务明确(,5分);,方案设计合理、有新意(,10分);,软件和硬件功能划分合理(,5分);,20分,硬件设计,片内器件分配,;,电路原理图设计;,电路制作;,片内器件分配正确、合理(,5分);,电路原理图设计正确(,10分);,电路制作:布线正确、整齐、合理(,5分);,20分,软件设计,算法和数据结构设计;,流程图设计;,编程;,算法和数据结构设计正确、合理(,5分);,流程图设计正确、简明;(,5分);,编程正确、有新意(,10分);,20分,系统仿真与调试,调试顺序;,错误排除;,调试结果;,调试顺序正确(,5分);,能熟练排除错误(,10分);,调试后运行正确(,5分);,20分,实训报告,书写;,内容;,图形绘制;,结果分析,书写规范整齐(,5分);,内容翔实具体(,5分);,图形绘制正确、完整、全面(,5分);,能正确分析实验结构(,5分);,20分,合计,100分,D/A转换器很多时候用于产生波形。,DAC0832是具有两个输入数据存放器的8位DAC,数字信号经D/A转换后与单片机间的接口方式有单缓冲方式、双缓冲方及直通方式。,1,说明,DAC0832,的工作方式主要有几种?,2,DAC0832,与,8051,单片机接口时有哪些控制信号?作用分别是什么?,3,查找常用的,DAC,芯片并了解它们的功能特点。,函数发生器设计。,