AD转换实验报告.docx

上传人:scccc 文档编号:14413929 上传时间:2022-02-05 格式:DOCX 页数:16 大小:393.91KB
返回 下载 相关 举报
AD转换实验报告.docx_第1页
第1页 / 共16页
AD转换实验报告.docx_第2页
第2页 / 共16页
AD转换实验报告.docx_第3页
第3页 / 共16页
AD转换实验报告.docx_第4页
第4页 / 共16页
AD转换实验报告.docx_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《AD转换实验报告.docx》由会员分享,可在线阅读,更多相关《AD转换实验报告.docx(16页珍藏版)》请在三一文库上搜索。

1、转换实验报告A/D摘要本设计是利用AT89C51 ADC0809 CD4027K片为核心,加以其他辅助电路实现对信号的A/D转换,其中以单片机AT89C51为核心控制A/D转换器。先是对信号进行采集,然后用 ADC0809寸信号实现从模 拟量到数字量的转换。改变采样数据,调整电路,使其达到精确转换。目录1 .方案设计与论证 11.1 理论分析 11.2 输出、输入方案选择 11.3 显示方案 21.4 时钟脉冲选择 22 .硬件设计 22.1 A/D转换器模块 22.2 单片机1K块 32.3 JK触发器模块 43软件设计44 .仿真验证与调试54.1 测试万法 54.2 性能测试仪器 74.

2、4 误差分析 75 .设计总结及体会5附录(一)实物图6附录(二)软件程序 61 .方案设计与论证1.1 理论分析8位A/D转换由芯片内部的控制逻辑电路、时序产生器、移位寄存 器、D/A转换器及电压比较器组成,它具有将模拟量转换成数字量的 特性,其原理图如下:机U仃输植立电医比就需 二廿启动林冲D/A Oft微电露AD转换原理图(1)输由、输入方案选择 1.2A/D转换器有多路选择器,可选择八路模拟信号ININ中的一 70路进 入A/D转换。现在选择IN通道作为输入,则对应的地址码位oADD=0、 ADD=0、ADD=0。当转换完成后,OE=1,打开三态输abc出锁存缓 冲器,将转换数据从DD

3、 口输出到单片机的P0端口。07IN口输入D端口输出 AAA/D转换器)2图(1.3显示方案由于静态控单片机控制数码管显示有两种动态和静 态两种方法,制数码管每次只能显示一位,造成资源浪费,所以选择 动态扫描,并增加变换频率。1.4时钟脉冲选择方案一:可以直接用矩形波来控制。因CLKJK通过触发器完成二分频,然后Q端接 方案二:ALE JK 经过12NHZK 1/6=2MHz,为晶振的频率是12MHzALE的频率为1MHz.触发器二分频后就是 2.硬件设计 2.1 A/D转换器模块RESPACK-8P2.D/的P2.1l/ pa-j/Aio P2.3/A11 P2.4/A12 P2 5/A13

4、 P2.6/A14 F21 仲d3咱O/RXD P3:-1/TXp P3.2/1 NTD PSINBM.4/TOP3.5/T1P3.6/WRF 7U2INOIN1IN2IN2IN4 mbIN7AIDD AADD BA 0 C ALEMREF _J2L LUV K WSTARTEOCUfl DUT31UTS 口 UT母DUTff OUTGOUT7OUTSOE7_S2191早a15179ftDC006tfTFTTi)3A/D转换电路图(转换经电压比较器后输入到控制电路,IN0模拟量从端口输入,OE。=0=0=0D0D7 口输出,地址码位 ADD、ADD、ADD后从acb ,转换结束EOC转换结束控

5、制信号,EOC=0端输出允许控 制信号,转换启动信号,上升沿将片内寄存器清零,下降EOC=1后。START沿开始A/D转换。时钟信号输入端CLOCK接触发器Q端,把1MHz 的信号作为时钟脉冲输入。2.2单片机模块PCiIiiAtC 用XT*LZPO5AMWiFldAitM 代5出MH=1ElP2JDWPl 2TA IOTHP,M1空PldiS苏P2 8*13PNWIQP17/BH5P-1IXTZP3 BWJ*1 TiTSiXP3P1ZR3 3riWWIMa!甩:丽彳P14PS4HQf 14乃也U四乌疝百*U冷制标图(4)SALE 一R-CI 1R 12.3JK触发器模块图形符号如图(4),选

6、用89C51单片机,89C51单片机本身的电源电压是5v, 有两种低功耗方式:待机方式和掉电方式。在掉电状态下,其耗电电 流为3mA,在掉电方式下提供约50mA的电流。80C51单片机是8 位单片机,速度较慢,且不能在线编程。在单片机的外部加一个振荡 电路,这个电路有晶振和两个电容组成,晶振两端分别接到两个电容 的一端,两个电容的另一端都要接地。这两个电容串联的容量就是就 等于负载电容,这两个电容选用 33PF的。在P0端口接一个上拉电 阻,增加高电平驱动能力。P0 口输出七段码,P2.0、P2.1、P2.2 口输 出位选码。图(5)JK触发器具有置0、置1、保持、翻转的功能。J=1, K=0

7、时,置1; j=0, K=1时,置0; j=k=0,保持;j=k=i , CLK下降沿到来时翻转。3.软件设计系统软件流程图如下图(6),其中主要包含这三部分,即信号采样、A/D转换、输出显示。信号采样:先产生启动转换的正脉冲信号,对数据进行采样。A/D转换:对输入数据转换,把数据分取个位、十分位、百分位。输出显示:位选端P2.0、P2.1、p2.2分别显示个位、十分位、百分 位,完成三位显示。开始系统初始 信号采否转换完A/D输出显示 结束 ) 图(6仿真验证与调试4.测试方法4.1。0.00系统对实验进行仿真验证,初始值显示,最大值为5.00 5V1步骤:)接入电源;2)改变滑动变阻器的阻

8、值,观察数码管的显示的变化1-LLILLLlEk LnE廿MM PS JlMlH M XMrJ FC 3 A MJ3UAMS Ml kUM Fil w小心收心罡黄普尊一M西it新4 g”引。醛 wwwll*1 mP工皿*n*x Fi,5F卜n 2m也)最大值图(87初始图()4.2性能测试仪器直流电源数字万用表4.3实验数据实验数据表表1组别12345678910)仿真(V0.000.290.851.451.852.743.744.354.725.00V)实测(0.000.290.811.421.872.663.674.314.724.97)显示(V0.000.320.881.471.862.

9、763.724.334.735.004.4误差分析)在接入电源时的导1造成本实验的误差可能有以下几点原因:)万用表的接)滑动变阻器可能引起阻值误差;23线可能增加阻值;触不良也有误差。 设计总结及体会 5.最后到在收到任务时,根据要求从总体到部分来仔细分析任务,具体的器材使用,而且对每个组员合理分配任务。在设计时,对每个 模块设计多方案,从中择优选用。硬件部分要注意所加电压不能过大, 否则会烧毁集成块。实际电路焊接时,线路要尽量短、直,便于以后 检查。对于每一点要焊实,不能出现虚焊,不可短路。软件设计要模 块化,语言要尽量简洁程序应采用模块化结构,程序代码简洁,具有 较高执行效率。对于变量的使

10、用,尽可能多的使用局部变量,编写程 序需要不断的修改、整理、优化,以使程序具有较少的代码量,较高 工作效率。这设计让我们学到了很多知识,了解和掌握许多芯片的作 用和功能。通过小组成员的共同努力实验终于出来了, 非常有成就感, 也要感谢老师的悉心指导。附录(一)实物图附录(二)软件程序#include #include #define uint unsigned int#define uchar unsigned char sbit ST=P2A4;sbit OE=P2A5;sbit EOC=P2A6;sbit w_select1=P2A0;sbit w_select2=P2A1;sbit w_

11、select3=P2A2;sbit w_select4=P2A3;uchar num_1=0,num_2=0,num_3=0;/uchar code table10 = 0x03, 0x9f, 0x25, 0x0d, 0x99, 0x49, 0x41,0x1f, 0x01, 0x09;/uchar code table10 = 0xC0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80,0x90;uchar code table10 = 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x

12、6f;/*名称:Delay_1ms()功能:延时子程序,延时时间为1ms * x输入:x( 延时一毫秒的个数)输出:无*/ void Delay_1ms(uint x) uint h,k;/uchar k;for(h = x; h 0; h-) for(k = 20; k0; k-);void DA_change(uchar k) float D_value;D_value=5*k/255;num_1=D_value/1;/取个位值num_2=(D_value-num_1)*10/1;/取小数点后第一位值取小数点后第二位值num_3=(D_value-num_1)*10-num_2)*10/1

13、;/*名称:Display(uchar k)功能:将参数分成十位、个位分别显示*输入:k (键盘数值)*输出:P0 口输出七段码,P2 口输出位选码*void Display。P0 = tablenum_1+0x80; /需显示小数点w_select3=0; Delay_1ms;/w_select3=1;/显示5ms个位消隐P0 = tablenum_2;w_select2=0; Delay_1ms;/w_select2=1;P0 = tablenum_3;/显示5ms小数点后第一位消隐w_select1=0; Delay_1ms;/显示5ms小数点后第二位*名称:Main()功能:主函数*void main(void)uchar Key_Value = 16; /两次读出的键值uchar getdata;whileP2=P2&0xf0;P0=0xff;P3=0xff;ST=0;/产生启动转换的正脉冲信号ST=1;ST=0;while (EOC=0);OE=1;getdata=P0;OE=0;DA_change(getdata);Display( );/没有按键按下,也显示电压值num_1=0,num_2=0,num_3=0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1