您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 单片机技术及应用(基于Proteus的汇编和C语言版)项目10
D/A转换控制及应用项目10D/A转换控制及应用知识与能力目标熟悉D/A转换及其转换器的基本知识;1理解并掌握D/A转换器的控制方法;2学会单片机与DAC0832的接口电路分析与设计;34初步学会D/A转换应用程序的分析与设计;1熟练使用Proteus进行单片机应用程序开发与调试。5项目10D/A转换控制及应用任务10.1D/A转换认知与分析10.1.1D/A转换的初步认知10.2.2硬件系统与控制流程分析10.1.2DAC0832及其接口电路分析10.2.1控制要求与功能展示10.2.3汇编语言程序分析与设计10.2.4C语言程序分析与设计10.2.5基于Proteus的调试与仿真2任务10.2简易波形发生器控制10.1.1D/A转换的初步认知DAC(数/模转换器)是将数字量转换成相应的模拟量,每一个数字量都是二进制代码按位组合,每一位数字代码都对应着一定大小的模拟量。为了将数字量转换成模拟量,应将其每一位转换成相应的模拟量,然后求和即得到与数字量成正比的模拟量。10.1.1D/A转换的初步认知1、D-A转换器的类型10.1.1D/A转换的初步认知(1)分辨率:其定义是当输入数字量发生单位数码变化(即1LSB)时,所对应的输出模拟量的变化量。(2)线性度:通常用非线性误差的大小表示D-A转换的线性度。(3)转换精度:转换精度以最大静态误差的形式给出。2、D-A转换器的主要性能指标10.1.1D/A转换的初步认知2、D-A转换器的主要性能指标(4)建立时间:指当D-A转换器的输入数据发生变化后,输出模拟量达到稳定数值(即进入规定的精度范围内)所需的时间。(5)温度系数:在满刻度输出的条件下,温度每升高一度,输出变化的百分数。10.1.2DAC0832及其接口电路分析1、DAC0832主要性能指标(3)电流输出型的芯片,通过外接一个运算放大器,可以很方便地提供电压输出(1)8位并行D-A转换;(2)片内二级数据锁存,提供数据输入双缓冲、单缓冲、直通三种工作方式;(5)uP兼容,可以很方便地与MCS-51连接;(6)建立时间1微妙。(4)DIP20封装,单电源(+5V~15V,典型值为5V);10.1.2DAC0832及其接口电路分析2、DAC0832芯片内部原理结构DAC0832由输入寄存器和DAC寄存器构成两级数据输入锁存10.1.2DAC0832及其接口电路分析3、DAC0832引脚功能DAC0832外部引脚图10.1.2DAC0832及其接口电路分析DAC0832是电流输出,为了取得电压输出,需在电流输出端连接运算放大器,Rfb即为运算放大器的反馈电阻端,运算放大器的接法如图所示。10.1.2DAC0832及其接口电路分析4、DAC0832接口电路与工作方式在DAC0832内部有2个可控寄存器,输入信号要经过这两个寄存器才能进入D-A转换器进行D-A转换。控制这两个寄存器的控制信号有5个:输入寄存器由LE、、控制;DAC寄存器由、控制。根据单片机与DAC0832芯片接口电路的不同,对这两个可控寄存器的控制方式不同,DAC0832的工作方式可分为三种。CS1WR2WRXFER10.1.2DAC0832及其接口电路分析(1)直通工作方式直通工作方式是将这两个寄存器的5个控制信号预先均设置为有效,两个寄存器都开通,处于数据接收状态,只要数字信号送到数据输入端DI0~DI7,就立即进入D-A转换器进行转换。10.1.2DAC0832及其接口电路分析(2)单缓冲工作方式所谓单缓冲方式,就是使DAC0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控的锁存方式,或者使两个输入寄存器同时处于受控的方式。在实际应用中,如果只有一路模拟量输出或虽有几路模拟量但并不要求同步输出的情况,就可采用单缓冲方式。10.1.2DAC0832及其接口电路分析(2)单缓冲工作方式单缓冲工作方式时的接口电路10.1.2DAC0832及其接口电路分析(3)双缓冲工作方式所谓双缓冲方式就是把DAC0832的2个锁存器都连接成受控锁存方式,同时为了实现寄存器的可控,应当给每个寄存器分配一个地址,以便能按地址进行操作。在多路D-A转换情况下,若要求模拟信号同步输出,则必须采用双缓冲工作方式。10.1.2DAC0832及其接口电路分析(3)双缓冲工作方式双缓冲工作方式时的接口电路任务10.2简易波形发生器控制10.2.1控制要求与功能展示实物运行视频10.2.1控制要求与功能展示简易波形发生器控制电路原理图任务10.2单通道电压采集控制10.2.2硬件系统与控制流程分析1、任务硬件系统分析如电路原理图所示,该电路实际上是单片机采用单缓冲的工作方式驱动DAC0832数模转换芯片,实现数模转换输出。由于DAC0832是模拟电流输出,为了取得电压输出,在电流输出端连接有运算放大器uA741,将电流信号转换为电压信号。同时两个控制按键K1和K2分别连接于单片机的外部中断引脚P3.2与P3.3上,通过按键外部中断来实现波形变化的控制。10.2.2硬件系统与控制流程分析2、任务控制流程分析图10-8简易波形发生器控制流程图10.2.3汇编语言程序分析与设计汇编程序程序初始部分外部中断1子程序INT_1程序初始化子程序INIT汇编程序主程序MAIN延时子程序DELAY外部中断0子程序INT_0DELAY_AX500字符数据表10.2.4C语言程序分析与设计C程序3、汇编程序设计C语言程序外部中断1服务子函数int1()外部中断0服务子函数int0()主函数main()延时子函数DelayUS(B)程序初始部分(含数据定义)延时子函数DelayUS(A)1、创建Proteus仿真电路图(1)列出元器件表;(2)绘制仿真电路图10.2.5基于Proteus的调试与仿真2、OSCILLOSCOPE(示波器)的使用10.2.5基于Proteus的调试与仿真虚拟示波器界面2、OSCILLOSCOPE(示波器)的使用10.2.5基于Proteus的调试与仿真虚拟示波器与真实示波器的使用方法类似。◆依照电路的属性设置扫描速度,用户可看到所测量的信号波形。◆如果被测信号有直流分量,则在相应的信号输入通道选择AC(交流)工作方式。◆调整增益,以便在示波器中可以显示适当大小的波形。◆调节垂直位移滑轮,以便在示波器中可以显示适当位置的波形。◆波动相应的通道定位选择按钮,再调节水平定位和垂直定位,以便观测波形。◆如果在大的直流电压波形中含有小的交流信号,需要在连接的测试点和示波器之间加一个电容器。10.2.5基于Proteus的调试与仿真安装插件vdmagdi.e(注意:应把插件安装在Keil3的安装目录下)将Keil安装目录\C51\BIN中的VDM51.dll文件复制到Proteus软件的安装目录Proteus\MODELS目录下修改Keil安装目录下的Tools.ini文件,在C51字段中加入TDRV11=BIN\VDM51.DLL(“PROTEUS6EMULATOR”)并保存。(1)(2)(3)2、Proteus与Keil联调10.2.5基于Proteus的调试与仿真打开“简易波形发生器控制.DSN”文件,在Proteus的“Debug”菜单中选中“UseRemoteDebugMonitor(远程监控)”。右键选中STC89C51单片机,在弹出的对话框“ProgramFile”项中,导入在Keil中生成的HEX文件。Keil打开“简易波形发生器控制.UV2”,打开窗口“OptionforTarget‘工程名’”。在Debug选项中右栏上部的下拉菜单选中ProteusVSMSimulator。点击进入Settings窗口,设置IP为127.0.0.1,端口号为8000。在Keil中点击,使用单步执行来调试程序,同时在Proteus中查看直观的仿真结果。(4)(5)(6)3、Proteus与Keil联调10.2.5基于Proteus的调试与仿真程序初始化运行时状态界面3、Proteus与Keil联调10.2.5基于Proteus的调试与仿真程序开始输出波形界面开始出现波形3、Proteus与Keil联调10.2.5基于Proteus的调试与仿真按键中断切换波形状态A=0xFF3、Proteus与Keil联调10.2.5基于Proteus的调试与仿真波形切换后开始输出界面切换为锯齿波10.2.5基于Proteus的调试与仿真4、Proteus仿真运行10.2.5基于Proteus的调试与仿真仿真运行视频技能训练1:波形发生器控制熟悉D-A转换及其转换器的基本知识;1掌握单片机与DAC0832的接口电路分析与设计;2掌握单片机与DAC0832的接口电路分析与设计;3熟练使用Proteus进行单片机应用程序开发与调试。4仿真运行视频技能训练1:波形发生器控制
本文标题:单片机技术及应用(基于Proteus的汇编和C语言版)项目10
链接地址:https://www.777doc.com/doc-768643 .html