苏州大学实验报告-实验四AD转换模块实验报告.doc_第1页
苏州大学实验报告-实验四AD转换模块实验报告.doc_第2页
苏州大学实验报告-实验四AD转换模块实验报告.doc_第3页
苏州大学实验报告-实验四AD转换模块实验报告.doc_第4页
苏州大学实验报告-实验四AD转换模块实验报告.doc_第5页
全文预览已结束

下载本文档

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

文档简介

苏州大学实验报告院、系年级专业姓名学号课程名称成绩指导教师同组实验者实验日期实验名称:A/D转换模块实验 一实验目的掌握A/D转换的基本原理和需要注意的问题;学习单片机A/D转换的接口电路;理解课本中的程序代码;用查询方式实现本次A/D转换实验。 二实验内容理解A/D转换原理;运行与理解各子程序;主程序运行课本的样例程序;编制一个查询方式A/D转换程序,其中电位器作为模拟量输入:手动改变电位器的大小,通过A/D转换模块转换之后,通过小灯和串口两种方式分别显示转换后的结果。 三实验过程(一)原理图Uin(模拟输入)UREFABUiD/A比较器数据输出D0D1.D7控制逻辑EOC输出锁存器移位寄存器START时钟图4-1 逐次逼近式A/D转换器工作原理图(二)接线图A/D采样点Vcc40 39 38 37 36 35 34 33 32 31MC68HC908GP3230 29 28 27 26 25 24 23 22 211 2 3 4 5 6 7 8 9 1011 12 13 14 15 16 17 18 19 20图4-2 AD转换接线原理图(三)基本原理A/D转换模块(Analog To Digital Convert Module)即模数转换模块的功能是将电压信号转换为对应的数字信号。实际应用中,这个电压信号可能由温度、湿度、压力等实际物理量经过传感器和相应的变换电路转化而来。经过A/D转换,MCU就可以处理这些物理量。 四编程(一)流程图开始1 ?人工复位结束头文件和声明将本次A/D转换结果,发往串口启动一次A/D转换过程SCI初始化子程序SCI初始化子程序将本次A/D转换结果赋给PTA图4 A/D转换流程图(二)所用寄存器名称及其各个位A/D转换状态和控制寄存器(Analog-to-Digital Status and Control RegisterADSCR)数据位 D7 D6 D5 D4 D3 D2 D1 D0定义COCO AIEN ADCO ADCH4 ADCH3 ADCH2 ADCH1 ADCH0复位 0 0 0 1 1 1 1 1A/D转换输入时钟寄存器(Analog-to-Digital Input Clock RegisterADCLK)数据位 D7 D6 D5 D4 D3 D2 D1 D0定义 ADIV2 ADIV1 ADIV0 ADICLK - - - -复位 0 0 0 1 1 1 1 1A/D转换数据寄存器(Analog-to-Digital Data RegisterADR)(三)主要代码段1汇编方式:串行通信查询方式的主程序部分代码MainInit: /复位后程序从此开始执行 /系统初始化 SEI /关中断 /1.堆栈初始化为RAM最高端LDHX #RAMEndAddr/HX=#RAMEndAddrTXS /HX-SP /2.系统初始化JSR MCUInit /初学时跳过此处/3.串行口初始化JSR SCIInit /4.AD模块初始化/用内部总线时钟,2分频/0通道、一次A/D转换、转换结束不产生中断JSR ADInit /5.定义PTA口为输出 LDA #0xFF STA DDRA /程序总循环入口MainLoop: LDA #0x00 /采集通道0,并求20次的平均值 LDX #20 JSR ADAve /调A/D转换均值滤波子程序 JSR SCISend1 /串口发送转换结果 COMA STA PTA /小灯显示转换结果 BRA MainLoop2C语言方式:串行通信查询方式的主程序部分代码/主函数void main() INT8U ADValue,ADValTmp; ADValue=0; DisMCUInt(); /禁止总中断 MCUInit(); /芯片初始化 SCIInit(); /串行口初始化 ADInit(); /AD模块初始化 ADValTmp=0; /主循环 while(1) ADValue = adave(20,0); /采集通道0,并求20次的平均值 DDRA = 0xff; if(ADValTmp!=ADValue) PTA = ADValue; SCISend1(ADValue); /采集、滤波并发送 ADValTmp=ADValue; 五实验问答(根据实验指导书所列举的问题)1A/D转换中应该注意到哪些问题?答:进行A/D转换,应该了解以下一些基本问题:第一,采样精度是多少?第二,采样速率是多快?第三,滤波问题;第四,物理量回归等。 采样精度就是指数字量变化一个最小量时模拟信号的变化量,即我们通常所说的采样位数。通常在MCU中采样位数为8位,某些增强型的可达到10位,而专用的A/D采样芯片则可达到12位,14位,甚至16位。采样速率是指完成一次A/D采样所要花费的时间。在多数的MCU中要花费大于1520个指令周期。因而此速率和所选器件的工作频率有很大关系。为了使采样的数据更准确,必须对采样的数据进行筛选去掉误差较大的毛刺。通常我们采用中值滤波和均值滤波的方式来提高采样的精度。中值滤波是取三次采样的中间值,均值滤波是取多次采样的算术平均值。若要得到更高的精度,可以通过建立其他误差模型分析方式来实现。 在实际应用中,得到稳定的A/D采样值以后,还需要把A/D采样值与实际物理量对应起来,这一步称为物理量回归。A/D转换的目的是把模拟信号转化为数字信号,供计算机进行处理,但必须知道A/D转换后的数值所代表的实际物理量的值,这样才有实际意义。 2在进行电路设计时,面对众多的AD/DA芯片,如何选择你所需要的器件?答:要综合设计的诸项因素,系统技术指标、成本、功耗、安装等,最主要的依据还是速度和精度。 精度与系统中所测量控制的信号范围有关,但估算时要考虑到其他因素,转换器位数应该比总精度要求的最低分辩率高一位。常见的AD/DA器件有8位,10位,12位,14位,16位等。速度应根据输入信号的最高频率来确定,保证转换器的转换速率要高于系统要求的采样频率。有的单芯片内部含有多AD/DA模块,可同时实现多路信号的转换;常见的多路AD器件只有一个公共的AD模块,由一个多路转换开关实现分时转换。数字接口方式有并行/串行之分,串行又有SPI、I2C、SM等多种不同标准。数值编码通常是二进制,也有BCD(二十进制)、双极性的补码、偏移码等。通常AD器件的模拟输入信号都是电压信号,而DA器件输出的模拟信号有电压和电流两种。同时根据信号是否过零,还分成单极性(Unipolar)和双极性(Bipolar)。一般CMOS工艺的芯片功耗较低,对于电池供电的手持系统对功耗要求比较高的场合一定要注意功耗指标。 3一个8位的A/D转换芯片,当最大模拟量量程为5V时,其分辨率是多少?若是12位的芯片,其分辨率又为多少?答:对8位的A/D转换芯片,其分辨率为: 5V/28-119.61mV 对12位的A/D转换芯片,其分辨率为: 5V/212-11.22mV 4请思考A/D采集值转换为实际物理量值有哪些基本方法?答:有列表法,作图法,物理量回归等。请查阅相关的资料。 5观察实验过程中小灯的亮暗变化,在电位器的阻值不发生变化的时候可能会发生某些小灯不稳定的情况,请解释这种现象的原因?答:因为程序中用的的多次测量值的均值滤波方法,当采样过程中收到干扰时,采集到的每次的数据误差通过均值函数滤波后,会在一定的范围内上下波动。所以会出现这种情况。6怎样来

温馨提示

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

评论

0/150

提交评论