AD转换实验报告
AD转换实验报告

A/D转换实验报告摘要本设计是利用AT89C51、ADC0809、CD4027芯片为核心,加以其他辅助电路实现对信号的A/D转换,其中以单片机AT89C51为核心控制A/D转换器。
先是对信号进行采集,然后用ADC0809对信号实现从模拟量到数字量的转换。
改变采样数据,调整电路,使其达到精确转换。
目录1.方案设计与论证 (1)1.1理论分析 (1)1.2输出、输入方案选择 (1)1.3显示方案 (2)1.4时钟脉冲选择 (2)2.硬件设计 (2)2.1A/D转换器模块 (2)2.2单片机模块 (3)2.3JK触发器模块 (4)3软件设计 (4)4.仿真验证与调试 (5)4.1测试方法 (5)4.2性能测试仪器 (7)4.4误差分析 (7)5.设计总结及体会 (5)附录(一)实物图 (6)附录(二)软件程序 (6)1.方案设计与论证1.1理论分析8位A/D转换由芯片内部的控制逻辑电路、时序产生器、移位寄存器、D/A转换器及电压比较器组成,它具有将模拟量转换成数字量的特性,其原理图如下:AD转换原理图(1)1.2输出、输入方案选择A/D转换器有多路选择器,可选择八路模拟信号IN0~IN7中的一路进入A/D转换。
现在选择IN0通道作为输入,则对应的地址码位ADD C=0、ADD B=0、ADD A=0。
当转换完成后,OE=1,打开三态输出锁存缓冲器,将转换数据从D7~D0口输出到单片机的P0端口。
IN口输入D端口输出A/D转换器图(2)1.3显示方案单片机控制数码管显示有两种动态和静态两种方法,由于静态控制数码管每次只能显示一位,造成资源浪费,所以选择动态扫描,并增加变换频率。
1.4时钟脉冲选择方案一:可以直接用矩形波来控制方案二:ALE通过JK触发器完成二分频,然后 Q端接CLK。
因为晶振的频率是12MHz,ALE的频率为12NHz×1/6=2MHz,经过JK 触发器二分频后就是1MHz.2.硬件设计2.1 A/D转换器模块A/D转换电路图(3)模拟量从IN0端口输入,经电压比较器后输入到控制电路,转换后从D0~D7口输出,地址码位ADD C=0、ADD B=0、ADD A=0。
AD转换实验报告

8292924809基于单片机的AD转换电路专业:班级:学号:组员:指导老师:年月日目录键入章标题(第 1 级) (1)键入章标题(第2 级) (2)键入章标题(第3 级) (3)键入章标题(第 1 级) (4)键入章标题(第2 级) (5)键入章标题(第3 级) (6)引言A/D转换是指将模拟信号转换为数字信号,这在信号处理、信号传输等领域具有重要的意义。
常用的A/D转换电路有专用A/D集成电路、单片机ADC模块,前者精度高、电路复杂,后者成本低、设计简单。
基于单片机的A/D转换电路在实际电路中获得了广泛的应用。
一般的A/D转换过程是通过采样、保持、量化和编码4个步骤完成的,这些步骤往往是合并进行的.当A/D转换结束时,ADC输出一个转换结束信号数据。
CPU可由多种方法读取转换结果:a查询方式;b中断方式;c DMA方式。
通道8为A/D转换器,ADC0809是带有8为A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。
它是逐次逼近式A/D转换器,可以和单片机直接接口。
ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成.多路开关可选通8个模拟通道,允许8路模拟量分时输出,共用A/D转换器进行转换。
三台输出锁存器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据.一个实际系统中需用传感器把各种物理参数测量出来,并转换为电信号,在经过A/D转换器,传送给计算机;微型计算机加工后,通过D/A转换器去控制各种参数量。
一、实验方案的选择与分析1.1复位电路方案单片机在开机时都需要复位,以便中央处理器CPU以及其他功能部件都处于一个确定的初始状态,并从这个状态开始工作。
51的RST引脚是复位信号的输入端.复位电平是高电平有效持续时间要有24个时钟周期以上。
本系统中单片机时钟频率为6MHz则复位脉冲至少应为4us.方案一:上电复位电路上电瞬间,RST端的的电位与Vcc相同,随着电容的逐步充电,充电电流减小,RST电位逐渐下降。
实验四 AD转换实验

重庆交通大学学生实验报告实验课程名称单片机原理与应用实验名称A/D转换实验实验类型验证性实验开课实验室语音楼单片机原理实验室学院信息科学与工程学院学生姓名学号开课时间2012至2013学年第 2 学期实验评佑等级很好好一般差实验操作能力实验结果实验分析实验思考总结实验成绩教师签名一、实验目的:1.了解ADC0809/ADC0808的工作原理;2.掌握单片机与ADC0809/ADC0808接口原理;3.熟悉CPU中断方式和查询方式读取A/D转换结果的程序设计方法。
二、实验内容:以查询工作方式应用程序,分别启动8路模拟输入通道进行A/D转换,8路转换结果存储在内部数据存储器首地址为30H开始的单元内,并将第0路转换结果送到P1口显示。
按照以上原理完成以下要求:1.用中断方式编写并调试出一个程序;2.用查询方式编写并调试出一个程序;3.用调用显示子程序方法,将转换结果在显示块上显示出来;4.将采样结果以8个LED显示进行编码,以得到将0V—5V区间分为256级显示效果;5.用C51重新编写程序实现上述要求的C程序。
用Proteus仿真软件运行硬件电路仿真设计。
三、实验步骤:1.硬件设计。
参考指导书中所列数码管显示的元器件以及实验程序参考框图,利用Proteus仿真软件,作出其电路图。
2.利用Keil仿真软件编写程序,将其编写好的程序进行调试。
四、实验调试及结果:<一>实验调试方法:1、打开Keil程序,执行菜单命令“ Project”—>“New Project”创建“ 0808AD 转换”项目,并选择单片机型号为AT89C51。
2、执行菜单命令“file”—>“New”创建文件,输入源程序,保存为“0808AD 转换.c”。
在“Project”栏的File项目管理窗口中右击文件组,选择“Add Filesto Group Source Group1”,将源程序“0808AD转换.c”添加到项目中。
ad转换实验报告

ad转换实验报告AD转换实验报告概述:AD转换(Analog-to-Digital Conversion)是将模拟信号转换为数字信号的过程。
本实验旨在通过实际操作和数据记录,探究AD转换的原理和应用。
实验目的:1. 了解AD转换的基本原理和分类;2. 掌握AD转换器的使用方法;3. 分析AD转换器的性能指标。
实验器材:1. AD转换器模块;2. 信号发生器;3. 示波器;4. 电脑。
实验步骤:1. 连接实验器材:将信号发生器的输出端与AD转换器的输入端相连,将AD转换器的输出端与示波器的输入端相连,将示波器与电脑连接;2. 设置信号发生器:调整信号发生器的频率、幅度和波形,生成不同的模拟信号;3. 设置AD转换器:根据实验要求,选择合适的AD转换器工作模式,并设置采样率和分辨率;4. 进行AD转换:通过示波器监测AD转换器输出的数字信号,并记录下相应的模拟输入信号值;5. 数据分析:将记录的数据输入电脑,进行进一步的数据分析和处理。
实验结果:在实验过程中,我们通过改变信号发生器的频率、幅度和波形,观察到AD转换器输出的数字信号的变化。
根据示波器的显示和记录的数据,我们得到了一系列的AD转换结果。
通过对这些结果的分析,我们可以得出以下结论:1. AD转换器的分辨率对转换精度有重要影响。
分辨率越高,转换结果的精度越高;2. AD转换器的采样率对转换结果的准确性有影响。
采样率过低可能导致信号失真或丢失;3. 不同的模拟信号在AD转换过程中可能会产生不同的失真现象,如量化误差、采样误差等;4. AD转换器的性能指标包括分辨率、采样率、信噪比等,这些指标对于不同应用场景有不同的要求。
实验总结:通过本次实验,我们深入了解了AD转换的原理和应用。
实验结果表明,AD转换器在现代电子设备中具有重要的作用,广泛应用于音频处理、图像处理、传感器数据采集等领域。
了解和掌握AD转换的基本原理和性能指标,对于我们理解和设计数字系统具有重要意义。
ad转换器的实验报告

ad转换器的实验报告AD转换器的实验报告一、引言AD转换器(Analog-to-Digital Converter)是一种电子设备,用于将模拟信号转换为数字信号。
在现代电子技术中,AD转换器被广泛应用于各种领域,如通信、控制系统、医疗设备等。
本实验旨在通过实际操作,了解AD转换器的工作原理和性能特点。
二、实验目的1. 了解AD转换器的基本原理;2. 掌握AD转换器的使用方法;3. 分析AD转换器的性能特点。
三、实验原理AD转换器的基本原理是将连续的模拟信号转换为离散的数字信号。
其工作过程可以简单概括为以下几个步骤:1. 采样:从模拟信号中按照一定的时间间隔取样,得到一系列离散的采样点;2. 量化:将每个采样点的幅值转换为相应的数字值;3. 编码:将量化后的数字值转换为二进制编码。
四、实验装置和步骤1. 实验装置:AD转换器、信号发生器、示波器、计算机;2. 实验步骤:a) 连接信号发生器的输出端与AD转换器的输入端;b) 连接AD转换器的输出端与示波器的输入端;c) 设置信号发生器的频率和幅值,调节示波器的触发电平和时间基准;d) 打开AD转换器和示波器,开始采集数据;e) 将采集到的数据导入计算机,进行数据分析。
五、实验结果与分析通过实验,我们获得了一系列采样点的幅值和时间信息。
将这些数据导入计算机,我们可以进行进一步的分析和处理。
例如,我们可以绘制出信号的波形图,观察信号的周期性和幅值变化。
同时,我们可以计算出信号的平均值、最大值、最小值等统计量,以评估AD转换器的精度和稳定性。
六、实验误差与改进在实验过程中,可能会存在一些误差,影响实验结果的准确性。
例如,信号发生器的输出可能存在漂移,导致采样点的幅值偏离真实值。
此外,AD转换器本身的非线性特性也会引入误差。
为了减小误差,可以采取以下改进措施:1. 使用更精确的信号发生器,提高输出稳定性;2. 选择高精度的AD转换器,降低非线性误差;3. 增加采样点的数量,提高采样率。
实验十DA、AD转换实验报告(一)

实验十DA、AD转换实验报告(一)引言概述:实验十DA、AD转换实验报告(一)本实验报告旨在介绍实验十DA、AD转换的相关内容。
在本次实验中,我们将会学习数字模拟转换和模拟数字转换的原理与方法,并通过实际操作进行验证。
本报告将按照以下五个主要部分进行阐述:(1)实验准备,(2)DA转换原理与方法,(3)AD转换原理与方法,(4)实验步骤与结果,(5)实验总结。
正文内容:1. 实验准备1.1 硬件准备- 数字模拟转换器(DAC)模块- 模拟数字转换器(ADC)模块- 连接电缆1.2 软件准备- 实验十DA、AD转换实验软件2. DA转换原理与方法2.1 DA转换原理- 数字模拟转换器将数字信号转换为模拟电压或电流输出的过程- 通过将数字数据转换为电路中的模拟信号,实现了数字信号到模拟信号的转换2.2 DA转换方法- 标准电压法- 标准电流法- R-2R网络法3. AD转换原理与方法3.1 AD转换原理- 模拟数字转换器将模拟量转换为数字量的过程- 通过将连续的模拟信号转换为离散的数字信号,实现了模拟信号到数字信号的转换3.2 AD转换方法- 逐次逼近法- 并行比较法- 闪存式转换法4. 实验步骤与结果4.1 实验设置- 连接DAC和ADC模块到电路中- 连接电缆,确保连接正确4.2 实验步骤- 设置DAC模块的输出值- 进行DA转换并记录输出结果- 将模拟信号输入到ADC模块中- 进行AD转换并记录输出结果4.3 实验结果- 实验运行过程中的数据记录与图表展示5. 实验总结5.1 实验心得体会- 通过本次实验,我更深入地了解了DA、AD转换的原理与方法- 实际操作过程中加深了对数字模拟转换和模拟数字转换的理解5.2 实验结果分析- 分析实验得到的数据与图表,验证转换原理与方法的准确性5.3 实验改进与展望- 在后续的实验中,可以进一步探索其他类型的DA、AD 转换器- 可以对实验步骤进行改进,提高实验效果和精确度总结:本实验报告阐述了实验十DA、AD转换的相关内容。
微机ad转换实验报告

微机ad转换实验报告微机AD转换实验报告一、引言AD转换是现代电子技术中非常重要的一部分,广泛应用于各种领域,如通信、仪器仪表、自动控制等。
本实验旨在通过使用微机进行AD转换实验,探究其原理和应用。
二、实验目的1. 了解AD转换的基本原理;2. 掌握使用微机进行AD转换的方法;3. 分析AD转换的精度和速度。
三、实验原理AD转换是将模拟信号转换为数字信号的过程。
在本实验中,我们将使用微机的AD转换器将模拟信号转换为数字信号。
微机的AD转换器通常是一个多通道的模数转换器,能够将多个模拟信号转换成相应的数字信号。
四、实验步骤1. 连接硬件设备:将待转换的模拟信号通过信号调理电路连接到微机的AD转换器输入端;2. 打开实验软件:启动微机上的AD转换实验软件;3. 设置参数:根据实验要求,设置采样率、分辨率等参数;4. 进行AD转换:点击软件界面上的“开始转换”按钮,开始进行AD转换;5. 数据分析:获取转换后的数字信号,进行数据分析和处理。
五、实验结果与分析通过实验,我们得到了一系列数字信号。
根据这些数字信号,我们可以进行各种数据处理和分析。
例如,我们可以绘制出信号的波形图、频谱图等,进一步分析信号的特性和性能。
六、实验中的问题与解决方法在实验过程中,我们可能会遇到一些问题,如信号失真、噪声干扰等。
针对这些问题,我们可以采取一些解决方法,如增加滤波电路、调整采样率等,以提高AD转换的精度和稳定性。
七、实验总结通过本次实验,我们深入了解了AD转换的原理和应用,掌握了使用微机进行AD转换的方法。
AD转换在现代电子技术中具有广泛的应用前景,掌握AD转换的原理和技术对于我们的学习和工作都具有重要意义。
八、实验心得本次实验让我对AD转换有了更深入的了解。
通过实际操作,我进一步掌握了使用微机进行AD转换的方法,并且了解到了AD转换的精度和速度对于实际应用的重要性。
在今后的学习和工作中,我将更加注重AD转换技术的应用与研究,为现代电子技术的发展做出自己的贡献。
AD转换实验报告

实验报告题目: 班级: 时间: 姓名:实验目的熟悉数模转换的基本原理,掌握D/A 的使用方法。
一、实验设备CPU 挂箱、8086CPU 模块、示波器。
二、实验内容利用D/A 转换器产生锯齿波、三角波和方波。
三、实验原理图本实验用A/D 、D/A 电路四、实验步骤1、实验连线 CS0 CS0832 示波器 DOUT DS 跳线:1 22、用实验箱左上角的“VERF.ADJ ”电位器调节0832的8脚上的参考电压至5V 。
3、调试程序并全速运行,产生不同的波形。
4、用示波器观察波形。
六、实验提示利用电位器“VERF.ADJ ”可以调零,“VERF.ADJ ”电位器调整满偏值。
DAC0832在本实验中,工作在双缓冲接口方式下。
当A1=0时可锁存输入数据;当A1=1时,可启动转换输出。
所以要进行D/A 转换需分二步进行,方法如下:MOV DX,ADDRESS ;ADDRESS 片选信号偶地址MOV AL,DATAOUT DX,AL ;锁存数据ADD DX,2OUT DX,AL ;启动转换七、程序框图程序一 产生锯齿波 程序二 产生方波(实验程序名:dac-1.asm ) (实验程序名:dac-2.asm )N 数据清零 数据=FFH ?数据加一开始 开始 锁存数据 转换输出 数据00送BX 寄存BX 中的数据输出到0832 延时 数据FF 送B X 寄存器 延时程序三产生三角波(实验程序名:dac-3.asm)开始数据清零锁存数据转换输出数据加一数据=FFH?数据=FFH锁存数据转换输出数据减一数据=0?八、程序代码清单:DAC-1,产生锯齿波:assume cs:codecode segment publicorg 100hstart: mov dx,04a0hup1: mov bx,0Up2: mov ax,bxout dx,ax ;锁存数据mov dx,04a2hout dx,ax ;输出使能mov dx,04a0hinc bx ;数据加一jmp up2code endsend startDAC-2,产生方波:assume cs:codecode segment publicorg 100hstart: mov dx,04a0hmov cx,04fhup1: mov bx,0up2: mov ax,bxout dx,axmov dx,04a2hout dx,axmov dx,04a0hloop up1mov cx,04fhup4: mov bx,0ffhup3: mov ax,bxout dx,axmov dx,04a2hout dx,axmov dx,04a0hloop up4jmp startcode endsend startDAC3,产生三角波:assume cs:codecode segment publicorg 100hstart: mov dx,04a0hmov bx,0up: mov ax,bxout dx,ax ;锁存数据mov dx,04a2hout dx,ax ;输出使能inc bxmov dx,04a0hcmp bx,0ffhjne up ;产生三角波上升沿down: mov ax,bxout dx,ax ;锁存数据mov dx,04a2hout dx,ax ;输出使能dec bxmov dx,04a0hcmp bx,0jne down ;产生三角波下降沿jmp upcode endsend start九、实验代码所得波形:图1:实验所得锯齿波图形图2:实验所得方波图形图3:实验所得三角波图形十、实验分析与总结1、实验指导书中已给出一部分内容的完整代码,需要自己思考改动的地方不多,因此实验难度不大。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8292924809基于单片机的AD转换电路专业:班级:学号:组员:指导老师:年月日目录键入章标题(第 1 级) (1)键入章标题(第2 级) (2)键入章标题(第3 级) (3)键入章标题(第 1 级) (4)键入章标题(第2 级) (5)键入章标题(第3 级) (6)引言A/D转换是指将模拟信号转换为数字信号,这在信号处理、信号传输等领域具有重要的意义。
常用的A/D转换电路有专用A/D集成电路、单片机ADC模块,前者精度高、电路复杂,后者成本低、设计简单。
基于单片机的A/D转换电路在实际电路中获得了广泛的应用。
一般的A/D转换过程是通过采样、保持、量化和编码4个步骤完成的,这些步骤往往是合并进行的。
当A/D转换结束时,ADC输出一个转换结束信号数据。
CPU可由多种方法读取转换结果:a查询方式;b中断方式;c DMA方式。
通道8为A/D转换器,ADC0809是带有8为A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。
它是逐次逼近式A/D转换器,可以和单片机直接接口。
ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。
多路开关可选通8个模拟通道,允许8路模拟量分时输出,共用A/D转换器进行转换。
三台输出锁存器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
一个实际系统中需用传感器把各种物理参数测量出来,并转换为电信号,在经过A/D转换器,传送给计算机;微型计算机加工后,通过D/A转换器去控制各种参数量。
一、实验方案的选择与分析1.1复位电路方案单片机在开机时都需要复位,以便中央处理器CPU以及其他功能部件都处于一个确定的初始状态,并从这个状态开始工作。
51的RST引脚是复位信号的输入端。
复位电平是高电平有效持续时间要有24个时钟周期以上。
本系统中单片机时钟频率为6MHz则复位脉冲至少应为4us。
方案一:上电复位电路上电瞬间,RST端的的电位与Vcc相同,随着电容的逐步充电,充电电流减小,RST电位逐渐下降。
上电复位所需的最短时间是振荡器建立时间加上二个机器周期,在这段时间里,振荡建立时间不超过10ms。
如图2所示;方案二:外部复位电路按下开关时,电源通过电阻对外接电容进行充电,使RES端为高电平,复位按钮松开后,电容通过下拉电阻放电,逐渐使RET端恢复低电平。
如图3所示;方案三:上电外部复位电路典型的上电外部复位电路是既具有上电复位又具有外部复位电路,上电瞬间,C与Rx构成充电电路,RST引脚出现正脉冲,只要RST保持足够的高电平,就能使单片机复位。
如图4所示;方案分析与选择:在以上3种复位电路中,上电复位电路结构简单、所用元器件较少、成本较低,在小型电路中比较常用,并且能自动复位,操作简单,很符合本电路的要求;而外部复位电路和上电外部复位电路,虽然能完成本机要求,但所用原件较多,电路较为复杂,不符合人性化要求,且需手动处理。
因此,在本次试验中选择上电复位电路。
1.2振荡源方案在MCS-51内部有一个用于构成振荡器的高增益反相放大器。
引脚XTAL1(19)、XTAL2(18)分别是此放大器的输入端和输出端方案一:内部方式与作为反馈元件的片外晶体或陶瓷谐振器一起组成一个自激振荡器。
方案二:外部方式外部振荡器信号的接法与芯片类型有关。
CMOS工艺的MCU其XTAL1端接外部时钟信号,XTAL2端可悬空。
HMOS工艺的MCU则XTAL2端接外部时钟信号,XTAL1端须接地。
方案分析与选择:无论是内部振荡还是外部振荡都能满足本电路对振荡源的要求,内部振荡和外部振荡相比较而言,内部振荡的完成更容易和操作,并且用简单的器件就可以实现振荡要求,可以使电路外部更人性化。
所以本次试验选择内部振荡方式。
1.3显示与键盘方案对系统发出命令和输出显示测量结果,主要是由键盘和7段3位共阳极数码管组成。
(1)译码方法用单片机驱动7段3位共阳极数码管有很多方法,按显示方式分,有静态显示和动态(扫描)显示,按译码方式可分硬件译码和软件译码之分。
方案一:硬件译码硬件译码就是显示的段码完全由硬件完成,CPU只要送出标准的BCD码即可,硬件接线有一定标准。
方案二:软件译码软件译码是用软件来完成硬件的功能,接线灵活,显示段码完全由软件来处理,是目前常用的显示驱动方式。
方案的分析与选择:译码方式比较简单,软件与硬件的方式差别不大,但现在的主流方式是软件译码,而且软件译码接线比较灵活,处理简单,因此本电路选择的是软件译码。
(2)显示方式在该单片机系统中,使用7段共阳极数码管构成3位数字显示器,段选线控制显示的数字,位选线控制显示位的亮或暗。
方案一:静态显示静态显示,显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不用再管,直到下一次显示数据需要更新时再传送一次数据。
方案二:动态显示动态显示需要CPU时刻对显示器件进行数据刷新,显示数据会有闪烁感,占用的CPU时间多。
方案的分析与选择:这两种显示方式各有利弊;静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多;动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。
所以,本次实验采用的是动态显示。
二、系统的硬件设计2.1 ADC0809内部功能及引脚介绍ADC0809八位逐次逼近式A/D转换器是一种单片CMOS器件,包括8位模拟转换器、8通道转换开关和与微处理器兼容的控制逻辑。
8路转换开关能直接连通8个单端模拟信号中的任何一个。
其内部结构如图8所示。
ADC0809没有内部时钟,必须由外部提供,其范围为10~1280kHz。
典型时钟频率为640kHz。
引脚排列及各引脚的功能,引脚排列如图9所示各引脚的功能如下:IN0~IN7:8个通道的模拟量输入端。
可输入0~5V待转换的模拟电压。
D0~D7:8位转换结果输出端。
三态输出,D7是最高位,D0是最低位。
A、B、C:通道选择端。
当CBA=000时,IN0输入;当CBA=111时,IN7输入。
ALE:地址锁存信号输入端。
该信号在上升沿处把A、B、C的状态锁存到内部的多路开关的地址锁存器中,从而选通8路模拟信号中的某一路。
START:启动转换信号输入端。
从START端输入一个正脉冲,其下降沿启动ADC0809开始转换。
脉冲宽度应不小于100~200ns。
EOC:转换结束信号输出端。
启动A/D转换时它自动变为低电平。
OE:输出允许端。
CLK:时钟输入端。
ADC0809的典型时钟频率为640kHz,转换时间约为100μs。
REF(-)、REF(+):参考电压输入端。
ADC0809的参考电压为+5V。
VCC、GND:供电电源端。
ADC0809使用+5V单一电源供电。
当ALE为高电平时,通道地址输入到地址锁存器中,下降沿将地址锁存,并译码。
在START上升沿时,所有的内部寄存器清零,在下降沿时,开始进行A/D转换,此期间START应保持低电平。
在START 下降沿后10us左右,转换结束信号变为低电平,EOC为低电平时,表示正在转换,为高电平时,表示转换结束。
OE为低电平时,D0~D7为高阻状态,OE为高电平时,允许转换结果输出。
2.2 键盘和显示电路(1)键盘本实验键盘采用4X4矩阵键盘组成。
如下图所示:(2)显示显示部分为4个共阳极的七段数码管,4个七段共阳极数码管的a~dp字段的引脚分别由4个OC门同相驱动器驱动。
4个共阳极7段数码管如下图所示:三、系统软件的设计及流程图3.1 A/D转换本实验采用的是查询方式进行转换,查询方式的流程图如下图所示:3.2 标度变换该单片机系统中,被测量经过A/D转换,均统一为0~255二进制码,因此要把A/D转换的数码X变换成被测量的实际数值。
四、电路图及仿真效果图本次实验的电路图如下图所示:仿真效果图如下所示:结论:单片机具有体积小,功耗低,功能强,通用性好,性价比高易组装成机电仪一体化的各种智能控制设备和仪器,仪表。
面向在线应用,能针对各类控制任务的简繁灵活配置,因而能获得最佳的费效比。
易于实现规划设计,避免不必要的二次开发过程,减少系统的研发费用,产品升级周期短。
易于多机使用主从分布式的集散控制,提高控制系统的效率。
抗干扰能力强,适应温度范围广,能在各种恶劣环境下可靠地工作。
指令精简,实用,系统设计灵活易于推广运用。
五、心得与体会自拟。
附录1:参考资料。
(1)模拟电子技术基础高等教育出版社(2)电子测量技术电子工业出版社(3)单片微型计算机应用与开发航空航天大学出版社(4)MCS-51单片机实用子程序设计哈尔滨工业大学出版社附录2:实验源程序。
#include <reg51.h>#include <intrins.h>#define uint unsigned int#define uchar unsigned charsbit ST=P2^4;sbit OE=P2^5;sbit EOC=P2^6;sbit w_select1=P2^0;sbit w_select2=P2^1;sbit w_select3=P2^2;sbit w_select4=P2^3;uchar num_1=0,num_2=0,num_3=0;//uchar code table[10] = {0x03, 0x9f, 0x25, 0x0d, 0x99, 0x49,0x41, 0x1f, 0x01, 0x09};uchar code table[10] = {0xC0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90};//uchar code table[10] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};/*************************************************************** 名称 : Delay_1ms()* 功能 : 延时子程序,延时时间为 1ms * x* 输入 : x (延时一毫秒的个数)* 输出 : 无***************************************************************/void Delay_1ms(uint x){uint h,k;//uchar k;for(h = x; h >0; h--) for(k = 20; k>0; 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;//取小数点后第二位值}/********************************************************** ***** 名称: Display(uchar k)* 功能:将参数分成十位、个位分别显示* 输入: k (键盘数值)* 输出: P0口输出七段码,P2口输出位选码*********************************************************** ****/void Display(){P0 = table[num_1]&0x7f; //需显示小数点w_select3=1; Delay_1ms(1); //显示5ms个位w_select3=0; //消隐P0 = table[num_2];w_select2=1; Delay_1ms(1); //显示5ms小数点后第一位w_select2=0; //消隐P0 = table[num_3];w_select1=1; Delay_1ms(1); //显示5ms小数点后第二位}/********************************************************** ***** 名称 : Main()* 功能 : 主函数*********************************************************** ****/void main(void){uchar Key_Value = 16; //两次读出的键值uchar getdata;while(1){P2=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;}}附录3:电路实物图自拟………….。