基于单片机的数模转换设计.doc_第1页
基于单片机的数模转换设计.doc_第2页
基于单片机的数模转换设计.doc_第3页
基于单片机的数模转换设计.doc_第4页
基于单片机的数模转换设计.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目 录1、系统方案- 3 -1.1、方案比较与选择- 3 -1.1.1、单片机选择与论证- 3 -1.1.2、显示器件选择与论证- 3 -1.1.3、键盘形式选择与论证- 4 -1.1.4排阻形式选择与论证- 4 -2理论分析与计算- 8 -2.1、D/A转换器的主要技术指标- 8 -1分辨率- 8 -2转换精度- 8 -3 输出电压(或电流)的建立时间(转换速度)- 8 - 4. 温度系数2.2 数模转换器2.2.1权电阻网络DAC的原理分析- 9 -3、 电路与程序设计- 11 -3.1.1、总体框图设计- 11 -3.1.2、显示电路- 11 -3.1.3、权电路- 12 -3.1.4、按键电路- 13 -3.1.5、驱动电路- 14 - 3.1.6、输出电路 3.1.7、总电路- 16 -3.2、程序流程图- 17 -3.2.2、液晶显示子程序流程图- 18 -3.2.3、输出电路程序流程图- 19 -4、 测试方案与测试结果- 20 -4.1、测试方案- 20 -4.2、测试结果与测试分析- 20 -附录- 21 -附录1:电路原理图- 21 -附录2:源程序- 21 -1、系统方案1.1、方案比较与选择1.1.1、单片机选择与论证方案一:AT89C51单片机。AT89C51是美国ATMEL公司生产的低电压,高性能CMOS位单片机,片内含4k字节的可反复擦写1000次的只读程序存储器(PEROM)和128字节的随机存取数据存储器(RAM),片内置通用8位中央处理器(CPU)和Flash存储单元。方案二:C8051F060单片机。C8051F060芯片是由Cygnal公司生产的,集成有高速、流水线结构的CIP-51内核,具有内置RAM,2个16位1Msps的ADC,芯片自身带有CAN总线控制器、59个I/O口。它是高度集成的芯片,减少了外围器件,进而降低了系统硬件设计的复杂性。基于对功能齐全性的考虑,和本次设计的要求我们运用方案一。1.1.2、显示器件选择与论证方案一:数码管。数码管显示能在低电压、小电流条件下驱动发光,能与CMOS、ITL电路兼容。发光响应时间极短(01s),高频特性好,单色性好,亮度高。体积小,重量轻,抗冲击性能好。寿命长,使用寿命在10万小时以上,甚至可达100万小时。但显示功能有限,只能显示数字和个别字母。方案二:液晶显示器。液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,显示质量高。其接口都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。方案三:阴极射线管显示器。此种显示器图像色彩丰富,还原性好,有丰富的几何失真调整能力。但不能长期暴露在磁场下,会磁化或损坏,不能让强光直射,会降低发光效率,不能在高温下使用,工作性能和使用寿命会大打折扣。基于对显示器功能的稳定性和齐全性考虑,我们采用方案二。1.1.3、键盘形式选择与论证方案一:独立式按键。独立按键的输入线较多,结构复杂,一般适用于按键较少,操作速度较高的场合。方案二:行列式键盘。行列式键盘由行和列线交叉组成,一般适用于按键较多的场合。使用22矩形键盘,这样键盘模块仅使用8根线与处理器相连,节省了系统资源。由于我们功能比较少,矩形键盘占用电路板位置较大,因此选择方案一。1.1.4排阻形式选择与论证 方案一:多个单个电阻。个数多,接线困难,误差大。且浪费资金。 方案二:排阻。数量少,接线容易,价格便宜。由于本次试验本身对接线要求就高,所以采用方案二。1.1.5、材料选择与论证方案一 :塑料板。塑料板质量轻,不易碎,但是也不好加工,且不环保。方案二 :木板。木板质量比塑料板重,但比玻璃板轻,易于加工,可塑性强。由于本次试验对材料的可塑性要求较高,因此采用方案二。1.2 所选器件的分析1.2.1 STEC89C51引脚图如下:1.2.2 LED显示屏1.2.3 LM3242理论分析与计算 2.1、D/A转换器的主要技术指标 1分辨率分辨率用于表征D/A转换器对输入微小量变化的敏感程度。D/A转换器模拟输出电压可能被分离的等级数可用输入数字量的位数n表示D/A转换器的分辨率;可用D/A转换器的最小输出电压与最大输出电压之比来表示分辨率。2转换精度D/A转换器的转换精度是指输出模拟电压的实际值与理想值之差,即最大静态转换误差。3 输出电压(或电流)的建立时间(转换速度) 从输入的数字量发生突变开始,到输出电压进入与稳定值相差0.5LSB范围内所需要的时间,称为建立时间tset。目前单片集成D/A转换器(不包括运算放大器)的建立时间最短达到0.1微秒以内。 4 温度系数 在输入不变的情况下,输出模拟电压随温度变化产生的变化量。一般用满刻度输出条件下温度每升高1,输出电压变化的百分数作为温度系数。2.2 数模转换器 2.2.1权电阻网络DAC的原理分析 集成运算放大器,作为求和权电阻网络的缓冲,并将电流转换为电压输出。 开关Si的位置受数据锁存器输出的数码di控制:当di=1时,Si将对应的权电阻接到参考电压UREF上;当di=0时,Si将对应的权电阻接地。虚短运算放大器总的输入电流为虚断运算放大器输出电压为令 RF=R/2 ,则即:输出的模拟电压uO正比于输入的数字量Dn,从而实现了从数字量到模拟量的转换。当Dn=Dn-1D0=0时,uO=0;因而uO的变化范围是 当Dn=Dn-1D0=111时,权电阻网络D/A转换器的特点优点:结构简单,电阻元件数较少;缺点:阻值相差较大,制造工艺复杂。3、 电路与程序设计3.1.1、总体框图设计系统总体框图如图所示 C P U 模 块控制模块显示模块输出模块驱动模块3.1.2、显示电路LED显示屏与传统的CRT相比,LED不但体积小,厚度薄,耗能少(1到10微瓦、平方厘米),工作电压低(1.5到6v)能与集成电路直接连用。并且在与集成电路焊接是比数码管接线简单。容易操作。3.1.3、权电路1、权电阻网络D/A转换器电路 权电阻网络D/A转换器电路如下图所示,它由理想运算放大器、电阻网络、电子模拟开关等组成。当di=1时(i=0,1,2,3),电子模拟开关接VREF, 当di=0时,电子模拟开关接地。 3.1.4、按键电路此电路实现四种不同功能的转换。按键一实现平板旋转360功能,按键二实现一枚硬币平衡摆动的功能,按键三实现八枚硬币平衡摆动的功能,按键四实现始终指向一点的功能。电路图如图。图 按键电路3.1.5、驱动电路本次的电路主要是有程序通过AT89C51驱动的。显示电路是由P0口和P2.0 ;P2.1;P2.2口驱动的。权电路是由P1口来驱动的。输出电路是由单片机通过权电路驱动。3.1.6、输出电路电路经过输入的数字电路通过单片机的程序,输出通过权电路,然后2R等比分流,再通过LM324输入给电压表。3.1.7、总电路 开始3.2、程序流程图 结束电压放大输出启动D/A转换单片机检测按键按键按下系统初始显示电压值 图 程序流程图3.2.2、液晶显示子程序流程图开始初始化LCD显示内容写入缓存LCD控制器启动延时置DISP为高电平液晶屏正常显示置DISP为低电平延时LCD控制器关闭液晶屏无显示图 液晶显示流程图 图所示的程序用来显示为调节电压。3.2.3、输出电路程序流程图判断? 频率增加退出波形输出等待按键命令判外部中断2 DAC输出单片机输出的数据判外部中断NY 图 LM324工作流程图4、 测试方案与测试结果 4.1、测试方案基本要求:此次试验是通过软件程序和硬件搭建电路实现。通过按键电路对显示电路数字显示分别输入0V,1V,2V,3V,4V.此时,通过转换电路后读出电压表的显示示数。观察计算误差。4.2、测试结果与测试分析测量结果: 在允许的误差范围内,观察电压表的示数。如果误差超过了允许的范围,我们先对硬件电路进行排查分析,进行对电路的数据分析,最后到软件程序的分析。附录附录1:电路原理图 附录2:源程序#include#define uchar unsigned char#define uint unsigned int sbit lcdrs=P20;sbit lcdwr=P21;sbit lcden=P22;sbit S1=P24;sbit S2=P25;sbit S3=P26;sbit S4=P27;uchar code PresetDat=SHU RU :0.00 V;uchar code CurrentDat=Made By Jbms:0.00 V;uchar count,S1num,V_point,V_ge,V_shi,I_point,I_ge,I_shi;uchar S1_OK=0,Confirm=0,DA,VCC,Power;/uchar lcd_read_dat();/延时1ms子程序开始/void delay(uint z) uint x,y; for(x=0;x121;x+) for(y=0;yz;y+);/延时1ms子程序结束/*写指令子函数*/void lcd_write_com(uchar com) lcdrs=0; /lcdrs=0即设置写指令状态 lcdwr=0; /写状态 lcden=0; /从这句开始将en置1然后又置零,是将其显示为高脉冲 P0=com; /将要写的指令传给P0口 delay(5); lcden=1; delay(5); lcden=0; / en的高脉冲设置完毕/*写数据子函数*/void lcd_write_dat(uchar x_pos,uchar y_pos,uchar dat) x_pos &= 0x0f; / X位置范围 015 / y_pos &= 0x01; / Y位置范围 0 1 / if(y_pos=1) x_pos += 0x40; x_pos += 0x80; lcd_write_com(x_pos); lcdrs=1; /lcdrs=1即设置写数据状态 lcdwr=0; /写状态 lcden=0; /从这句开始将en置1然后又置零,是将其显示为高脉冲 P0=dat; /将要写的数据传给P0口 delay(5); lcden=1; delay(5); lcden=0; / en的高脉冲设置完毕 /*初始化子函数*/void lcd_init() uchar num; lcd_write_com(0x38); /显示162,57点阵,8位数据接口。 lcd_write_com(0x0c); /显示开/关及光标设置 lcd_write_com(0x06); /设置读写一个字符后指针自动加1或减1及整屏左

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论