您好,欢迎来到爱玩科技网。
搜索
您的当前位置:首页学习情景5(AD教材编写20100604)

学习情景5(AD教材编写20100604)

来源:爱玩科技网
 学习情景5: 模数转换电路(AD)

5.1 学习目标

通过完成该情景所设定的任务,同学能够将一定范围内的模拟电压信号转换成所要求的数字量,以便于单片机(或计算机)处理。

5.2 工作任务

5.2.1 工作任务名称

C语言对并行AD芯片编程,读取转换出的数字量(ADC0804) 分软件仿真和实际硬件调试两个阶段。 5.2.2 工作任务背景

很多检测仪表类电子产品要求对工业现场或所作业环境的模拟量(如压力、流量、温度或光强等)进行采集并保存。当前电子产品的核心控制和数据处理单元(无论本情景中的单片机还是DSP、CPLD或上位机的CPU)是建立在数字方式基础上的。所以需要将模拟电信号转换成数字量供CPU处理。

5.2.3 完成工作任务要达到的技术标准

单片机作为一个微型计算机系统,需要测量外部的各种信号,然后进行计算,从而得到需要对外部进行控制的数据。模数变换电路就是将变送器整理好的模拟信号变换为数字信号的电路。本情境主要是让同学们了解模数变换电路的工作原理和种类、根据需要选择合适的模数变换电路、模数变换电路和单片机接口电路的设计方法、电路的焊接和调试方法。 具体实施步骤: (1) 根据模数变化电路的类型选择芯片,查阅相关的说明书和技术手册。

(2) 根据模数变换电路芯片的型号和相应的数据手册确定电路结构,设计模数变换电路

和单片机的接口电路。

模数变换电路设计和制作以及要求达到的技术标准 (1) 转换时间 小于100微秒 (2) 转换精度 1 LSB以内

5.2.4 完成工作任务所需要的设备、工具和材料

电源 焊台 电容、电阻、导线等 ADC0832(串行AD芯片) ADC0804(并行AD芯片) S52(单片机芯片)

5.3 任务知识点

5.3.1 ADC0804的介绍

所谓A/D转换器就是模拟/数字转换器(Analog to Digital Converter 简称 ADC),是将输入的模拟信号转换成为数字信号。信号输入端的信号可以是传感器(Sensor)或转换器(Transducer)的输出,而ADC输出的数字信号可以提供给微处理器,以便更广泛地应用。

ADC0804的规格及引脚图

(1)8位COMS逐次逼近型的A/D转换器; (2)三态锁定输出; (3)存取时间:135μs; (4)分辨率:8位;

(5)转换时间:100μs; (6)总误差:±1LSB;

(7)工作温度:ADC0804 LCN—0℃~+70℃; (8)ADC0804 LCD— -40℃~+85℃; (9)引脚图及说明如图2.1所示。

123456710/CS/RD/WRCLK IN/INTRVIN(+)VIN(--)AGNDVREF/2DGNDVCC (VREF)CLK RDB0DB1DB2DB3DB4DB5DB6DB720191817161514131211ADC0804ADC0801

图5.1 A/D转换器件引脚图

/CS:芯片选择信号。

/RD:外部读取转换结果的控制脚输出信号。/RD为HI时,DB0~DB7处于高阻抗;/RD为LO

时,数字数据才会输出。 /WR:用来启动转换的控制输入,相当于ADC的转换开始(/CS=0时),当/WR由HI变为LO

时,转换器被清除;当/WR回到HI时,转换正式开始。

CLK IN,CLK R:时钟输入或接振荡元件(R,C),频率约在100kHZ~1460kHZ,如果使

用RC电路则其振荡频率为1/(1.1 RC)。

/INTR:中断请求信号输出,低电平动作。

VIN(+)、VIN(-):差动模拟电压输入。输入单端正电压时,VIN(-)接地;而差动输入时,

直接加入VIN(+)、VIN(-)。 AGND,DGND:模拟信号以及数字信号的接地。 VREF:辅助参考电压。 DB0~DB7:8位的数字输出。

VCC:电源供应以及作为电路的参考电压。

2.2.3

表5-1 ADC0804 电压输入与数字输出关系表

ADC0804电压输入与数字输出关系如表2-1所示。

十 六 进 制 F E D C B A 9 8 7 6 5 4 二 进 制 码 1111 1110 1101 1100 1011 1010 1001 1000 0111 0110 0101 0100 与满刻度的比率 相对电压值VREF=2.560伏 高4位字节 低4位字节 高4位字节电压 低4位字节电压 15/16 14/16 13/16 12/16 11/16 10/16 9/16 8/16 7/16 6/16 5/16 4/16 15/256 14/256 13/256 12/256 11/256 10/256 9/256 8/256 7/256 6/256 5/256 4/256 4.800 4.480 4.160 3.840 3.520 3.200 2.880 2.560 2.240 1.920 1.600 1.280 0300 0280 0260 0240 0220 0200 0180 0160 0140 0120 0100 0080 续表5-1

十 六 进 制 3 2 1 0 二 进 制 码 0011 0010 0001 0000 与满刻度的比率 相对电压值VREF=2.560伏 高4位字节 低4位字节 高4位字节电压 低4位字节电压 3/16 2/16 1/16 3/256 2/256 1/256 0.960 0.0 0.320 0 0060 0040 0020 0 例:VIN=3V,由上表可知2.880+0.120=3V为10010110B=96H 。

5.3.2根据芯片制造商给出的资料,我们设计出AD转换原理图并给出软件仿真效果。

5.3.3 根据原理图以及芯片时序,软件设计如下:

#include #include #include unsigned char i=0; unsigned char l,n,m,sum;

unsigned char shuma[]={

0x3f, // 0 0x06, // 1 0x5b, // 2 0x4f, // 3 0x66, // 4 0x6d,// 5 0x7d, // 6 0x07, // 7 0x7f, // 8

0x6f // 9

};

main() {

while(1) {

P3=0xbf; // wr=0 rd=1 根据pdf资料里面的时序要求

P3=0x7f; // wr=1 rd=0 启动AD转换 P0=0xff; // 数码管赋初值

// P1=0x32; // P2=0xe; // P2=0x7d; // P2=0x7b;

sum=P0;//16

l=sum%0x0a; //个位 n=sum/0x0a%0x0a; // 十位 m=sum/0x; // 百位 switch(l) {

case 0: P2=0xe;P1=shuma[0]; break; case 1: P2=0xe;P1=shuma[1]; break; case 2: P2=0xe;P1=shuma[2]; break; case 3: P2=0xe;P1=shuma[3]; break; case 4: P2=0xe;P1=shuma[4]; break; case 5: P2=0xe;P1=shuma[5]; break; case 6: P2=0xe;P1=shuma[6]; break; case 7: P2=0xe;P1=shuma[7]; break; case 8: P2=0xe;P1=shuma[8]; break; case 9: P2=0xe;P1=shuma[9]; break;

}

switch(n) {

case 0: if(m!=0){P2=0x7d;P1=shuma[0]; }break; case 1: P2=0x7d;P1=shuma[1]; break; case 2: P2=0x7d;P1=shuma[2]; break; case 3: P2=0x7d;P1=shuma[3]; break; case 4: P2=0x7d;P1=shuma[4]; break; case 5: P2=0x7d;P1=shuma[5]; break; case 6: P2=0x7d;P1=shuma[6]; break; case 7: P2=0x7d;P1=shuma[7]; break; case 8: P2=0x7d;P1=shuma[8]; break; case 9: P2=0x7d;P1=shuma[9]; break;

}

switch(m) {

case 0: P2=0x7f;P1=shuma[0]; break; case 1: P2=0x7b;P1=shuma[1]; break; case 2: P2=0x7b;P1=shuma[2]; break; case 3: P2=0x7b;P1=shuma[3]; break; case 4: P2=0x7b;P1=shuma[4]; break; case 5: P2=0x7b;P1=shuma[5]; break; case 6: P2=0x7b;P1=shuma[6]; break; case 7: P2=0x7b;P1=shuma[7]; break; case 8: P2=0x7b;P1=shuma[8]; break; case 9: P2=0x7b;P1=shuma[9]; break;

}

} }

5.4 任务实施

1. 接受任务单制定实施计划

2. 设计模数变换电路和单片机的接口电路。

3. 合理选择元器件和核算元件价格。

4. 设计电路原理图并编制材料清单

5. 根据设计的模数变换电路和接口电路原理图。

6. 根据电路,编写单片机程序后,在仿真软件中进行效果测试,成功后制作硬件电路。 7. 对该电路板上电,进行测试。改变输入电压信号大小、外界电磁干扰、机械振动、温

度等条件,记录AD转换结果和转换时间等原始数据,然后计算转换精度、以及线性度等参数。

8. 分析该电路板各个参数是否达到芯片数据手册所声明的水平,并分析原因。重点观察

转换精度是否能保证7bit和转换时间两个参数。转换时间通过修改程序fclk频率观察是否能得到正确转换结果。(7、8为现场运行调试和分析) 9. 撰写实验报告

5.5 问题探究

1 如果输入端(传感器、或其他检测电路)给出的是电流信号,如何处理?(加电阻转

换成电压信号(大电阻?小电阻?会有什么不同?采用电流方式AD芯片,通过电流

放大器芯片)

2 AD芯片选择时,如何考虑与输入端之间输入输出阻抗问题?(上端输出阻抗尽量要小,AD芯片输入阻抗尽量大!若不匹配,可以加中间级放大器) 3 在微弱信号采集中,应采取哪些常用措施抵抗电磁干扰?(封闭金属壳,电路板上

处理方法,远离电源部分) 4 模拟电压量转换成数字量后,如何显示或查询?转换后的数字量可能有哪些异常,如何处理?(单片机控制数码管或液晶显示,也可以用串口传到上位机在串口助手中显示,或自己编写的上位机程序中显示,保存,历史数据?)数字量跳变很大,直接显示在数模管上后面几位显“8”->以后数据处理内容! 5 使用AD芯片时,为保证转换精度,应注意哪些使用条件?(电压,参考电压,温度,电磁干扰) 6 如果当前主流CPU可以建立在模拟信号运算基础上(电方式或者光方式),那么还需要AD转换或者DA转换单元么?

5.6 任务拓展

5.5.1 使用串行A/D转换器ADC0832采集模拟电压信号 详细设计方案参考 ADC0832.pdf 文档 5.5.2 微弱电压信号采集中常用的数字滤波方法 1 (加权)平均值滤波 2 Butterworth 滤波方法

5.7 工作和学习测评

1 是否已经完成任务单上的专业知识和技能训练 2 工作状态、工作的质量,学生自评 3 课堂答辩,学生互评

4 工作任务是否被完整完成?归档是否完整?教师点评 5 是否完成设计及调试任务?

6 工作过程中是否受到阻碍?如何解决的? 7 团队合作是否协调?

8 工作能力的提高工作状态、工作的质量 9 学习目的是否达到?

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- aiwanbo.com 版权所有 赣ICP备2024042808号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务