




免费预览已结束,剩余30页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机控制的函数信号发生器毕业设计论文(带 pcb 图) 函数发生器 摘要 函数发生器采用 atm89s52 单片机作为控制核心,外围采用模拟/数字转换电路 (dac0832) 、稳压电路(mc1403) 、运放电路(lm324) 、按键和 led显示灯电路等。 电路采用 at89s52单片机和一片 dac0832数模转换器组成数字式低频信号发生器。函 数信号发生器,它具有价格低、性能高和在低频范围内稳定性好、操作方便、体积小、 耗电少等特点。由于采用了 lm324运算放大器和 mc1403稳压器,使其电路更加具有 较高的稳定性能,性能比高。此电路清晰,出现故障容易查找错误,操作简单、方便。 通过按键控制可产生方波、锯齿波、三角波、正弦波等,同时用 led 显示灯指示 对应的波形。所产生的波形 vp-p 范围为 2.25 v,频率范围为 92.592593hz 217.3913hz,波 形准确并且平滑。本系统设计简单、性能优良,具有一定的实用性。 本设计主要应用 at89s52作为控制核心。硬件电路简单,软件功能完善,控制系 统可靠,性价比较高等特点,具有一定的使用和参考价值。 关键词:单片机;低频信号;发生器;运放器;稳压器 基于单片机控制的函数信号发生器毕业设计论文(带 pcb 图) 目 录 一、绪论 .1 1、信号发生器现状 .1 2、单片机在低频信号发生器中的应用 .1 二、系统设计 .2 1、系统方案的比较 .2 (1)选题论证 .2 (2)方案选择 .2 2、芯片选择模块 .3 三、硬件电路的设计 .3 1、基本原理: .3 2、资源分配: .3 3、最小系统设计 .4 (1)最小单片机系统 .4 (2)达盛平台介绍 .8 4、各部分电路原理 .14 (1)dac0832 芯片原理 .14 (2)lm324 工作原理 17 (3)mc1403 工作原理 .17 基于单片机控制的函数信号发生器毕业设计论文(带 pcb 图) 四、软件设计 .18 1、主程序流程图 .19 2、锯齿波程序流程图 .19 3、三角波程序流程图 .20 4、正弦波程序流程图 .21 5、方波程序流程图 .21 6、延时子程序流程图 .22 五、测试结论 .22 六、致谢词 .25 七、结束语 .25 八、参考文献 .25 九、附录 .26 1、元件清单 .26 2、 电路原理图 .27 3、pcb 图 .28 4、程序清单 . 28 0 一、绪论 1、信号发生器现状 波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应 用中必不可少的仪器设备之一。目前,市场上常见的波形发生器多为纯硬件的搭接而成, 且波形种类有限,多为锯齿、正弦、方波、三角等波形。 信号发生器作为一种常见的应用电子仪器设备,传统的可以完全由硬件电路搭接而 成,如采用 555 振荡电路发生正弦波、三角波和方波的电路便是可取的路径之一,不用 依靠单片机。但是这种电路存在波形质量差,控制难,可调范围小,电路复杂和体积大 等缺点。在科学研究和生产实践中,如工业过程控制,生物医学,地震模拟机械振动等 领域常常要用到低频信号源。而由硬件电路构成的低频信号其性能难以令人满意,而且 由于低频信号源所需的 rc 很大;大电阻,大电容在制作上有困难,参数的精度亦难以保 证;体积大,漏电,损耗显著更是其致命的弱点。一旦工作需求功能有增加,则电路复 杂程度会大大增加。 2、单片机在低频信号发生器中的应用 当今是科学技术及仪器设备高度智能化飞速发展的信息社会,电子技术的进步,给 人们带来了根本性的转变。现代电子领域中,单片机的应用正在不断的走向深入,这必 将导致传统控制与检测技术的日益革新。单片机构成的仪器具有高可靠性、高性能价格 比,在智能仪表系统和办公自动化等诸多领域得以极为广泛的应用,并走入家庭,从洗 衣机、微波炉到音响汽车,处处可见其应用。因此,单片机技术开发和应用水平已逐步 成为一个国家工业发展水平的标志之一。 一块单片机芯片就是一台计算机。由于单片机的这种特殊的结构形式,在某些应用 领域中,它承担了大中型计算机和通用微型计算机无法完成的一些工作。使其具有很多 显著的优点和特点,因此在各个领域中都得到了迅猛的发展。单片机的特点归纳起来有 以下几个方面。 (1)具有优异的性能价格比 单片机尽可能地把应用所需的存储器,各种功能的 i/o 接口集成在一块芯片内, 因而 其性能很高,而价格却相对较低廉 ,即性能价格比很高。 (2)集成度高、体积小、可靠性高 单片机把各种功能部件集成在一块芯片上,因而集成度高,均为大规模或超大规模 集成电路。又内部采用总线结构,减少了芯片之间的连线,这大大提高了单片机的可靠 1 性与抗干扰能力。同时,其体积小,对于强磁场环境易于采取屏蔽措施,适合于在恶劣 环境下工作。 (3)控制功能强 单片机体积虽小,但“五脏俱全” ,它非常适用于专门的控制用途。为了满足工业控 制要求,一般单片机的指令系统中有极丰富的转移指令,i/o 口的逻辑操作指令以及位操 作指令。其逻辑控制功能及运行速度均高于同一档次的微机。 (4)低电压、低功耗 单片机大量用于携带式产品和家用消费类产品,低电压和低功耗尤为重要。目前, 许多单片机已可在 2.2v 电压下运行, 有的已能在 1.2v 或 0.9v 下工作,功耗降至 a 级,一粒钮扣电池就可长期使用。 利用单片机采用程序设计方法来产生低频信号,其下限频率很低。具有线路相对简 单,结构紧凑,价格低廉,频率稳定度高,抗干扰能力强,用途广泛等优点,并且能够 对波形进行细微调整,改良波形,使其满足系统的要求。只要对电路稍加修改,调整程 序,即可完成功能升级。 这里介绍一种采用 at89s52单片机和一片 dac0832 数模转换器做成的数字式低频信 号发生器,它的特点是价格低、性能高,在低频范围稳定性好、操作方便、体积小、耗 电少等。 信号发生器与其它相比还具有如下优点:较分立元件信号发生器而言,具有频率 高,工作稳定,容易调试等特性; 较专用 dds 芯片的信号发生器而言,具有结构简单, 成本低等特性。 二、系统设计 1、系统方案的比较 (1)选题论证 制作低频信号发生器可以用一片 dac0832 来实现,它可以分为单极性和双极性。而 本项目选择了单片双极性。之所以选单片双极性是因为其精度高,滤波好,抗干扰效果 好。 (2)方案选择 方案一: at89s52 芯片中每一路模拟输出与 dac0832 芯片相连,构成多个 dac0832 同步输出电路,输出波形稳定,精度高,但是第二级 dac0832 输出,发生错误 并且电路连接复杂。 方案二: at89s52 芯片中只有一路模拟输出或几路模拟信号非同步输出,这种情况 下 2 对 dac0832 执行一次写操作,则把一个数据直接写入寄存器, dac0832 的输出模拟信号随之对应变化。输出波形稳定,精度高,滤波好,抗干扰效果 好,连接简单,性价比高。因此我们设计中采用方案二。 2、芯片选择模块 方案一:at89s52 单片机是一种高性能 8 位单片微型计算机。它把构成计算机的中央 处理器 cpu、存储器、寄存器、i/o 接口制作在一块集成电路芯片中,从而构成较为完整 的计算机。 方案二:c8051f005 单片机是完全集成的混合信号系统级芯片,具有与 at80s52 兼容 的微控制器的内核,与 mcs-51 指令集完全兼容。除了具有标准 at80s52 的数字外设部件 之外,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件。 方案选择:方案二中 c8051f005 芯片系统内部结构复杂,不易控制,芯片成本高, 对于本系统而言利用率低,at89s52 芯片简单易控制,成本低,性能稳定故采用方案一。 三、硬件电路的设计 1、基本原理: 系统框图如图 1所示。 a t 8 9 s 5 2 a / d 转换 基准电压 电源 波形指示 键盘 电流 / 电压转换 输出 图 1 低频信号发生器系统框图 低频信号发生器系统主要由 cpu、d/a 转换电路、基准电压电路、电流/ 电压转换电 路、按键和波形指示电路、电源等电路组成。 其工作原理为当分别按下四个按键中的任一个按键就会分别出现方波、锯齿波、三 角波、正弦波,并且有四个发光二极管分别作为不同的波形指示灯。 3 2、资源分配: 软、硬件设计是设计中不可缺少的,为了满足功能和指标的要求,资源分配如下 1晶振采用 6mhz; 2内存分配 p1 口的 p1.0-p1.3 分别与四个按键连接,分别控制锯齿波、三角波、正弦波和方波, p1.4-p1.7 与四个发光二极管相连,按键一对应发光二极管一,依次类推,发光二极管四对 应按键四,实现输出一个波形对应亮一个灯。 p0 口与 dac0832 的 di0-di7 数据输入端相连。 p2 口用来控制 dac0832 的输入寄存器选择信号 cs、输入寄存器写选通信号 wr1 及 dac 寄存器写选通信号 wr2 和数据传送信号 xfer。 3、最小系统设计 (1)最小单片机系统 at89s52 的引脚图如图 2 所示 图2 at89s52引脚图 管脚说明 低频信号发生器采用 at89s52 单片机作为控制核心,其内部组成包括:一个 8 位的 微处理器 cpu 及片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接;片内数 据存储器 ram 低 128 字节,存放读/写数据;高 128 字节被特殊功能寄存器占用;片内 程序存储器 4kb rom;四个 8 位并行 i/o(输入/ 输出)接口 p3 -p0,每个口可以用作输 入,也可以用作输出;两个定时/计数器,每个定时 /计数器都可以设置成计数方式,用以 对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算 机控制;五个中断源的中断控制系统;一个全双工 uart(通用异步接收发送器)的串行 i/o 口。 4 vcc:供电电压。 gnd:接地。 rst:复位输入。当振荡器复位器件时,要保持 rst 脚两个机器周期的高电平时间。 ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字 节。在 flash 编程期间,此引脚用于输入编程脉冲。在平时,ale 端以不变的频率周期 输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定 时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ale 脉冲。如想禁 止 ale 的输出可在 sfr8eh 地址上置 0。此时, ale 只有在执行 movx,movc 指令 是 ale 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ale 禁止, 置位无效。 /psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期 两次/psen 有效。但在访问外部数据存储器时,这两次有效的/psen 信号将不出现。 /ea/vpp:当/ea 保持低电平时,则在此期间外部程序存储器(0000h-ffffh) ,不 管是否有内部程序存储器。注意加密方式 1 时,/ea 将内部锁定为 reset;当/ea 端保 持高电平时,此间内部程序存储器。在 flash 编程期间,此引脚也用于施加 12v 编程电 源(vpp) 。 xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。 xtal2:来自反向振荡器的输出。 89s52 单片机外部有 32 个端口可供用户使用,其功能如下: 表 1 89s52 并行 i/o 接口 5 p0 口:p0 口为一个 8 位漏级开路双向 i/o 口,每脚可吸收 8ttl 门电流。当 p1 口的 管脚第一次写 1 时,被定义为高阻输入。p0 能够用于外部程序数据存储器,它可以被定 义为数据/地址的第八位。在 fiash 编程时,p0 口作为原码输入口,当 fiash 进行校验 时,p0 输出原码,此时 p0 外部必须被拉高。 p1 口:p1 口是一个内部提供上拉电阻的 8 位双向 i/o 口,p1 口缓冲器能接收输出 4ttl 门电流。p1 口管脚写入 1 后,被内部上拉为高,可用作输入,p1 口被外部下拉为 低电平时,将输出电流,这是由于内部上拉的缘故。在 flash 编程和校验时,p1 口作为 第八位地址接收。 p2 口:p2 口为一个内部上拉电阻的 8 位双向 i/o 口,p2 口缓冲器可接收,输出 4 个 ttl 门电流,当 p2 口被写“1” 时,其管脚被内部上拉电阻拉高,且作为输入。并因此 作为输入时,p2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。p2 口当 用于外部程序存储器或 16 位地址外部数据存储器进行存取时,p2 口输出地址的高八位。 在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2 口输出其特殊功能寄存器的内容。p2 口在 flash 编程和校验时接收高八位地址信号和控 制信号。 p3 口:p3 口管脚是 8 个带内部上拉电阻的双向 i/o 口,可接收输出 4 个 ttl 门电流。 当 p3 口写入 “1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为 低电平,p3 口将输出电流(ill)这是由于上拉的缘故。 p3 口也可作为 at89c51 的一些特殊功能口,如下表所示: 口管脚 备选功能 6 p3.0 rxd(串行输入口) p3.1 txd(串行输出口) p3.2 /int0(外部中断 0) p3.3 /int1(外部中断 1) p3.4 t0(记时器 0 外部输入) p3.5 t1(记时器 1 外部输入) p3.6 /wr(外部数据存储器写选通) p3.7 /rd(外部数据存储器读选通) p3 口同时为闪烁编程和编程校验接收一些控制信号。 at89s52 的晶振及其连接方法 cpu 工作时都必须有一个时钟脉冲。有两种方式可以向 89s52 提供时钟脉冲:一是 外部时钟方式,即使用外部电路向 89s52 提供始终脉冲,见图 3-(a);二是内部时钟方式, 即使用晶振由 89s52 内部电路产生时钟脉冲。一般常用第二种方法,其电路见图 3-(b)。 图 3 89s52 的时钟脉冲 图 3 中:j 一般为石英晶体,其频率由系统需要和器件决定,在频率稳定度要求不高 时也可以使用陶瓷滤波器。 c1、c2:使用石英晶体时,c1=c2=30(10)pf 使用陶瓷滤波器时,c1=c2=40(10)pf at89s52 的复位 使 cpu 开始工作的方法就是给 cpu 一个复位信号,cpu 收到复位信号后将内部特 殊功能寄存器设置为规定值,并将程序计数器设置为“0000h”。复位信号结束后,cpu 从 程序存储器“0000h”处开始执行程序。89s52 为高电平复位,一般有 3 种复位方法。 上电复位。接通电源时 手动复位。设置一个复位按钮,当操作者按下按钮时产生一个复位信号。 自动复位。设计一个复位电路,当系统满足某一条件时自动产生一个复位信号。 图 4 为最简单的上电复位和手动复位方法。 7 图 4 89s52 的复位电路 关于 cpu 的复位电路应当注意,在调试单片机程序时有两种工作方式。一是仿真器 方式,主要用于调试程序。此时程序的执行由仿真器控制,复位电路不起作用,系统时 钟也经常设置为仿真器产生,此时用户的晶振也不起作用。二是用户方式,即脱离仿真 器的实际工作方式,用户的时钟振荡电路和复位电路都必须正常工作。因此,如果系统 复位电路或晶振电路有故障,就会出现仿真器方式工作正常,而用户方式不工作的现象, 这是许多初学者常遇到的问题。 芯片擦除 整个 perom 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持 ale 管脚处于低电平 10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储 字节被重复编程以前,该操作必须被执行。 此外,at89s52 设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软 件可选的掉电模式。在闲置模式下,cpu 停止工作。但 ram,定时器,计数器,串口和 中断系统仍在工作。在掉电模式下,保存 ram 的内容并且冻结振荡器,禁止所用其他芯 片功能,直到下一个硬件复位为止。 (2)达盛平台介绍 本系统是在达盛的平台 eplay51cpu 上设计的,单片机 at89s52 与 dac0832 的是通 过 potr a,potr b,potrc 连接起来,三个接口的定义如下所示: 89s52 8 表 2 port a 接口定义 编号 定义 备注 1 +5v 2 +5v 数字电源,无论 cpu 板,还是接口板,所有的数字电源 都来自这里或由此变换而来。 3 dgnd 4 dgnd 数字地,在 cpu 板上,只在电源附近通过 0 欧的电阻与 电源地相连。 5 d0/io0 6 d1/io1 7 d2/io2 8 d3/io3 9 d4/io4 10 d5/io5 11 d6/io6 12 d7/io7 13 d8 14 d9 15 d10 16 d11 17 d12 18 d13 19 d14 20 d15 总线中的双向数据线,在 cpu 板上 要通过 16245 驱动后再与 cpu 芯片的数 据线相连,16245 要通过 rd 及由 cs0- cs7 译码生成总地址控制信号所控制。在 设计接口板时要保证其数据线在空闲时为 高阻状态,否则必须加接隔离电路。没有 用到的数据线可悬空。 21 a0/io8 22 a1/io9 23 a2/io10 24 a3/io11 25 a4 26 a5 27 a6 28 a7 29 a8 30 a9 31 a10 32 a11 33 a12 34 a13 35 a14 36 a15 总线中的地址线,cpu 板输出,在 cpu 板上要通过 16244 驱动后再与接口 引脚相连,接口板上不用时要悬空。 37 cs0/io12 38 cs1/io13 39 cs2/io14 40 cs3/io15 片选信号线,cpu 板输出,接口板输入, 低电平有效,设计 cpu 板时,不用的引 脚要悬空。而在设计接口板时,要通过 8 选 1 开关(跳线)来选择。 总线接口,输入、 输出皆为 5v ttl 电平, 芯片 电平与此不符时, 必须经过电平转 换。 9 编号 定义 备注 41 cs4 42 cs5 43 cs6 44 cs7 在分配地址空间时,每个片选信号的 最小地址范围应大于 256 个字节。 45 /w/r/io16 cpu 板输出,接口板输入,写信号低有 效 46 /r/d/io17 cpu 板输出,接口板输入,读信号低有 效 47 /w/a/i/t cpu 板输入,接口板输出,等待请求低 有效 48 rsrout cpu 板输出,接口板输入,复位高有效 49 /r/s/t/o/u/t cpu 板输出,接口板输入,复位低有效 5v ttl 电平 50 exint0 51 exint1 52 exint2 53 exint3 54 exint4 外部中断请求信号,5v ttl 电平,cpu 板输入,接口板 输出,低电平有效,在 cpu 板上,没有用到的中断线要优先 使用低编号的中断线填充,如果 cpu 是 3v 器件,必须通过 244/245 隔离。在接口板上,所有用到的中断信号线要用 5 选 1 的开关(跳线)选择。 55 t0out/c0in/cap0 56 t1out/c1in/cap1 定时器输出/计数器输入/捕捉脉冲输入,5v ttl 电平,在 cpu 板上只有一路时,第二路要用第一路填充,用户板上要 通过开关相连。 57 spi_nss0/bfsx0 spi 片选信号 58 spi_clk0/bclkx0 spi 时钟 59 spi_miso0/bdr0 主入从出 60 spi_mosi0/bdx0 主出从入 spi 总线, 5v ttl 电平, cpu 功 能引脚(主) ,在设计 cpu 板时,如果 有 spi 总线,应优先使用这一组,没有 用时要悬空。接口板只能做从。复用 mcbsp 信号线。 10 表 3 port b 接口定义 编号 定义 备注 1 +12v 2 +12v 模拟电源,所有的模拟电源都由此产生。 3 agnd 4 agnd 模拟地,在 cpu 板上的电源接口附近通过 0 欧电阻与电 源地相连 5 spi_nss1/bfsx1 spi 片选信号 6 spi_clk1/bclkx1 spi 时钟 7 spi_miso1/bdr1 主入从出 8 spi_mosi1/bdx1 主出从入 cpu 功能引脚(主) ,在 cpu 板 上,当只有一路时要悬空。在接口板 上,当 cpu 板上只有一路时也要悬空。 而且在系统中只允许与一路相连。复 用 mcbsp 信号线。 9 iic_scl iic 时钟 10 iic_sda iic 数据 cpu 功能引脚。 11 uart-rxd 12 uart-txd 简易串口,cpu 功能引脚。当 cpu 只有一路时,要悬空。cpu 板上要优先使用。 13 保留 14 保留 暂未定义 15 ale ale 信号 16 bfsr0 17 bclkr0 18 bfsr1 19 bclkr1 mcbsp 信号线 20 iis_lrck/bfsx0 iis 通道选择时钟 21 iis_sdi/bdr0 iis 数据输入 22 iis_sdo/bdx0 iis 数据输出 23 iis_sclk/bclkx0 iis 时钟 复用 mcbsp 信号线 24 iis_cdclk iis 编解码时钟 iis 接口,cpu 功能引 脚。不用时要悬空。 25 agio0 26 agio1 27 agio2 28 agio3 29 agio4 30 agio5 31 agio6 32 agio7 a 组 gio,cpu 功能引脚或 cpu 板的扩展 io。要优先 使用。在 cpu 板上当不足时要优先使用低编号信号线填充。 在设计接口板时,当 io 少于 4 个时,每个 io 都要通过 4 选 1 开关(跳线)来选择;但多于 4 个时要用 244 或 273 通过总 线扩展 io,以免与其它接口板冲突。 33 bgio0 34 bgio1 35 bgio2 36 bgio3 37 bgio4 38 bgio5 39 bgi o6 40 bgio7 b 组 gio,cpu 功能引脚或 cpu 板的扩展 io。在 cpu 板上当不足时要用 a 组相应信号线填充,顺序同 a 组。在接 口板上,同 a 组。 11 编号 定义 备注 41 pwma0 42 pwma1 43 pwma2 44 pwma3 cpu 的 pwm 功能输出,在 cpu 板上,优先布置低编号 的信号线,没有用到的信号线要用现有的信号线由低到高依 次填充,在接口板上,用户端的每一路都要通过 4 选 1 开关 (跳线)选择。 45 pwmb0 46 pwmb1 47 pwmb2 48 pwmb3 cpu 的 pwm 功能输出,在 cpu 板上,如果信号线不足, 要用 a 组以标号由低到高填充。在接口板上的设计同 a 组。 在设计 cpu 板时,如果 cpu 的 pwm 是分组的,且某 一组的 pwm 数目大于 4 个时,应将 a、b 两组统一布置此组 信号。 49 egio0 50 egio1 51 egio2 52 egio3 53 egio4 54 egio5 55 egio6 56 egio7 57 egio8 58 egio9 接口板 io,由接口板扩展产生,cpu 板上不能占用,必 须悬空。接口板可使用。 59 agnd 模拟地,用以屏蔽输入模拟信号 60 aina0 61 aina1 62 aina2 63 aina3 模拟信号,在 cpu 上为输入,设计时要优先 布置低编号的信号线,空闲信号线要用现有的信 号线由低到高依次填充。在用户板上,做输出时 要通过 4 选 1 开关(跳线)选择,作输入时可直 接连接。 64 ainb0 65 ainb1 66 ainb2 67 ain7b3 模拟信号,在 cpu 上为输入,空闲时要用 a 组信号线顺序填充,在接口板上要做输出时要 通过 4 选 1 开关(跳线)选择,作输入时可直接 连接。 在 pcb 布线时, 所有的模 拟输入集 中独立布 线,由 agnd 覆 铜。 68 agnd 模拟地,用以屏蔽输入模拟信号 69 -12v 70 -12v 模拟电路的负电源。 12 表 4 port c 接口定义 表 5 编号 定义 备注 1 vrefout cpu 板参考电压输出 2 vrefin cpu 板参考电压输入 不用时要悬空。 3 aout0 cpu 模拟信号输出 0 4 aout1 cpu 模拟信号输出 1 在 cpu 板上只有一路时,优先使用 aout0,aout1 要悬空。 5 eaout0 接口板模拟信号输出 0 6 eaout1 接口板模拟信号输出 1 由接口板扩展产生,cpu 板上不能占 用,必须悬空。接口板可使用。 7 xpon 触摸屏 x 轴 p 8 ypon 触摸屏 y 轴 p 9 xmon 触摸屏 x 轴 m 10 ymon 触摸屏 y 轴 m 在 cpu 板上,不用时要悬空。使用时 要注意:此信号线直接由触摸屏输出, 判断是否需要增加相关驱动电路。在 接口板上。可直接与触摸屏(4 线)相 连。 11 r00/cap2 12 r01/cap3 13 r02/cap4 14 r03/cap5 液晶模拟电压输入 0 液晶模拟电压输入 1 液晶模拟电压输入 2 液晶模拟电压输出 3 cpu 的捕捉 输入,接口板输出。 15 com0/vm 液晶位输出公共端 0 16 com1/vframe 液晶位输出公共端 1 17 com2/vline 液晶位输出公共端 2 18 com3/vclk 液晶位输出公共端 3 复用点阵屏的 控制信号。 19 seg0/vd0/vr0 液晶段输出 0 20 seg1/vd1/vr1 液晶段输出 1 21 seg2/vd2/vr2 液晶段输出 2 22 seg3/vd3/vr3 液晶段输出 3 23 seg4/vd4/vr4 液晶段输出 4 24 seg5/vd5/vg0 液晶段输出 5 25 seg6/vd6/vg1 液晶段输出 6 26 seg7/vd7/vg2 液晶段输出 7 27 seg8/vg3 液晶段输出 8 28 seg9/vg4 液晶段输出 9 29 seg10/vg5 液晶段输出 10 30 seg11/vb0 液晶段输出 11 31 seg12/vb1 液晶段输出 12 32 seg13/vb2 液晶段输出 13 33 seg14/vb3 液晶段输出 14 34 seg15/vb4 液晶段输出 15 复用点阵屏的 数据信号线。当 cpu 具有 tft 和 stn 两种 lcd 控 制器时,优先使用 tft 类型的 lcd 接口。 35 seg16/sdclk 36 seg17/sdcmd 37 seg18/sd0 38 seg19/sd1 液晶段输出 16 液晶段输出 17 液晶段输出 18 液晶段输出 19 复用为 sd 卡的接 口。 cpu 上自带 段式液晶控制器 的接口,不用时 要选悬空。 39 seg20/sd2 液晶段输出 20 40 seg21/sd3 液晶段输出 21 13 jtag 接口定义 注:jtag 接口的电源( vcc)要参考 cpu 芯片的技术手册和 jtag 电缆线的要求。 4、各部分电路原理 (1)dac0832 芯片原理 管脚功能介绍(如图 5 所示) 图 5 dac0832 管脚图 (1) di7di 0:8 位的数据输入端, di7为最高位。 (2) iout1:模拟电流输出端 1,当 dac 寄存器中数据全为 1 时,输出电流最大,当 dac 寄存器中数据全为 0 时,输出电流为 0。 (3) iout2:模拟电流输出端 2, iout2 与 iout1 的和为一个常数,即 iout1i out2常数。 编号 arm 定义 dsp 定义 cygnal 定义 1 vcc tms vcc 2 gnd ntrst gnd 3 ntrst tdi gnd 4 gnd gnd tck 5 tdi vcc tms 6 gnd 空 tdo 7 tms tdo tdi 8 gnd gnd 空 9 tck tck gnd 10 gnd gnd 空 11 tdo tck 12 nreset gnd 13 vcc emu0 14 gnd emu1 14 (4) rfb:反馈电阻引出端,dac0832 内部已经有反馈电阻,所以 rfb 端可以直接接到外 部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输入端 之间。 (5) vref:参考电压输入端,此端可接一个正电压,也可接一个负电压,它决定 0 至 255 的数字量转化出来的模拟量电压值的幅度,v ref 范围为(+10 -10)v 。v ref 端与 d/a 内部 t 形电阻网络相连。 (6) vcc:芯片供电电压,范围为(+5 15)v。 (7) agnd:模拟量地,即模拟电路接地端。 (8) dgnd:数字量地。 当 wr2 和 xfer 同时有效时,8 位 dac 寄存器端为高电平“1”,此时 dac 寄存器 的输出端 q 跟随输入端 d 也就是输入寄存器 q 端的电平变化;反之,当端为低电平“0” 时,第一级 8 位输入寄存器 q 端的状态则锁存到第二级 8 位 dac 寄存器中,以便第三级 8 位 dac 转换器进行 d/a 转换。 一般情况下为了简化接口电路,可以把和直接接地,使第二级 8 位 dac 寄存器的输 入端到输出端直通,只有第一级 8 位输入寄存器置成可选通、可锁存的单缓冲输入方式。 特殊情况下可采用双缓冲输入方式,即把两个寄存器都分别接成受控方式 制作低频信号发生器有许多方案:主要有单缓冲方式,双缓冲方式和直通方式。 单缓冲方式具有适用于只有一路模拟信号输出或几路模拟信号非同步输出的情形的 优点,但是电路线路连接比较简单。而双缓冲方式适用于在需要同时输出几路模拟信号 的场合,每一路模拟量输出需一片 dac0832 芯片,构成多个 dac0832 同步输出电路, 程序简单化,但是电路线路连接比较复杂。根据以上分析,我们的课题选择了单缓冲方 式使用方便,程序简单,易操作。 工作原理 dac0832 主要由 8 位输入寄存器、 8 位 dac 寄存器、 8 位 d/a 转换器以及输入控制 电路四部分组成。8 位输入寄存器用于存放主机送来的数字量,使输入数字量得到缓冲 和锁存,由加以控制;8 位 dac 寄存器用于存放待转换的数字量,由加以控制;8 位 d/a 转换器输出与数字量成正比的模拟电流;由与门、非与门组成的输入控制电路来控制 2 个寄存器的选通或锁存状态。原理框图如图 6 所示。 (msb)7id 6id5id 4id3id 2id1id 0id(lsb) ile cs1rw 2rw xfer 当 le=1时 ,输 出 数据 随 输 入 变 化 。le2 ferv 1tuoi 2tuoi rfb agnd dgnd ccv d q d q d q d q 8位 输 入 寄 存 器 8? dac ? ? ? 8? dac 转 换 器 ? 3-3 dac0832? ? ? ? ? ? ? 当 le=0时 ,输 出 数据 被 锁 存 。 le1 15 图 6 dac0832 的原理框图 dac0832 与反相比例放大器相连,实现电流到电压的转换,因此输出模拟信号的极 性与参考电压的极性相反,数字量与模拟量的转换关系为 vout1=-vref(数字码 /256) 若 d/a 转换器输出为双极性,如图 4 所示。 iout1 iout2 vfb dac0832 u1 5 6 7 b 10 9 8 c r2=r r1=2r r3=2r r vout2 vref=(字字字-128)/128 +5v vout1 i1 i2 图 7 d/a 转换器双极性输出电路 图 7 中,运算放大器 a2的作用是把运算放大器 a1的单向输出电压转换成双向输出电 压。其原理是将 a2的输入端 通过电阻 r1与参考电压 vref 相连,v ref 经 r1向 a2提供 一个偏流 i1,其电流方向与 i2相反,因此运算放大器 a2的输入电流为 i1、i 2之代数和。 则 d/a 转换器的总输出电压为: vout2= -(r3/r2) vout1+(r3/r1) vref 设 r1=r3=2r r2=r,则 vout2= -(2vout1+vref) dac0832 主要是用于波形的数据的传送,是本题目电路中的主要芯片。 dac0832 电路原理图(如图 8 所示) 16 s1 s2 s3 s4 r11kr21kr31kr41kr51kr61kr71kr81kvc p10 p11 p12 p13 p14 p15 p16 p17 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414 1515 1616 1717 1818 1919 2020 2121 2222 2323 2424 2525 2626 2727 2828 2929 3030 31 3132 3233 33 34 3435 35 36 3637 37 38 3839 39 40 4041 41 42 4243 43 44 4445 45 46 4647 47 48 4849 49 50 5051 51 52 5253 53 54 5455 55 56 5657 57 58 5859 59 60 60u1 porta 11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414 1515 1616 1717 1818 1919 2020 2121 2222 2323 2424 2525 2626 2727 2828 2929 3030 3131 3232 3333 3434 3535 36 3637 37 38 3839 39 40 4041 41 42 4243 43 44 4445 45 46 4647 47 48 4849 49 50 5051 51 52 5253 53 54 5455 55 56 5657 57 58 5859 59 60 6061 61 62 6263 63 64 6465 65 66 6667 67 68 6869 69 70 70u2 portb vc d0d1 d2d3 d4d5 d6d7 a8a9 a10 cs0cs1 cs2cs3 cs4cs5 cs6cs7 wr p10p11 p12p13 p14p15 p16p17 +12v -12v agnd agnd agnd cs1 wr12 agnd3 d134 d125 d16 d107 vfer8 rfb9 gnd10 iout1 11iout2 12d17 13 d16 14d15 15 d14 16xfer 17 wr2 18ile 19 vc 20u3 dac0832 vc agnd d0d1 d2d3 d4d5 d6d7 cs2 cs2 wr wr rw1k c20.2u + 123 4 11 - u4a lm324 c1 0.47u vc r910k +56 7 -u4b lm324 r10 20k r11 20k agnd agnd +12v -12v liled vc ri680r uo 12 34 567 8u5 1403 l1 l2 l3 l4 ci1 0.1u ci2 0.1u ci3 0.1u vc ci4 22u ci510u ci610u +12v -12v agnd agnd agnd agnd (2)lm324 工作原理 (管脚功能如图 9 所示) 图 9 lm324 管脚图 lm324 时四运放集成电路 ,它采用 14 脚双烈直插塑料封袋,外形如图 1 所示。他 的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。每一 组运算放大器可用图中所示的符号来表示,它有 5 个引出脚,其中“+”、 “-”为两个信号输 入端, “v+”、 “v-”为正、负电源端, “out”为输出端。两个信号输入端中, “-”为反相输入端, 表示运放输出端 out 的信号与该输入端的为相反; “+”为同相输入端,表示运放输出端 out 的信号与输入端的相位相同。lm324 的引脚排列见图 9。 由于 lm324 四运放电路具有电源电压范围宽,静态功耗小,可但电源使用,价格低 廉等优点,因此被广泛应用在各种电路中。 在此项目中用了 lm324 的三组运放,分别置于第一级输出,第一、二级之间,第二 级输出。 17 (3)mc1403 工作原理 (管脚功能如图 10 所示) 图 10 mc1403 管脚图 mc1403 是低压基准芯片。一般用作 8 到 12bit 的 d/a 芯片的基准电压等一些需要基 本精准的基准电压的场合。 输出电压:2.5v+/-25mv 输入电压范围:4.5vto40v 输出电流:10ma 因为输出是固定的,所以电路很简单。就是 vin 接电源输入,gnd 接地,vout 加一 个 0.1uf 到 1uf 的电容就可以了。vout 一般用于 8 到 12bit 的 d/a 芯片的基准电压。 在此项目里 mc1403 起到了稳压的作用,它基准了 dac0832 的 8 脚需要的 2.5v。使其 dac0832 能够正常工作。 四、软件设计 达盛平台有 dsp、arm 、单片机等,经过分析和我们所学知识,我们选用单片机平 台。因为单片机技术比较成熟,开发过程可利用的资源和工具丰富,最大的优点是价格 便宜,成本低。调试软件采用 keil51.keiluvison 是众多单片机应用开发软件中优秀软件之 一,界面友好,易写易操作。在调试程序中,软件仿真功能也很强,软件调通,再通过 编程器下载到 at89s52 中,然后插到系统中即可独立完成所有的控制。 软件设计上,根据功能分了几个模块编程。模块主要有:主程序模块、锯齿波模块、 三角波模块、正弦波模块、方波模块、延时子程序模块等。 显示波形模块是利用 dac0832 的 8 位特点,把波形的数据以 8 位数据的形势送进 cpu 中,只要一按键就能显示波形。 18 1、主程序流程图 开始 k e y 1 键按下了 吗 ? k e y 3 键按下了 吗 ? k e y 2 键按下了 吗 ? k e y 4 键按下了 吗 ? 输出锯齿波 输出三角波 输出正弦波 输出方波 y y y y n n n n 本软件设计过程中主要实现利用按键来控制不同波形的输出,当按键 1 按下时,函 数发生器就输出锯齿波;当按键 2 按下时,函数发生器就输出三角波;当按键 3 按下时, 函数发生器就输出正弦波;当按键 4 按下时,函数发生器就输出方波。通过按键可以以 任意循环方式输出不同波形。 2、锯齿波程序流程图 开始 # 0 0 h a ( a ) 0 8 3 2 输出 ( a ) = f 0 h ? a + 1 a 置 d a c 0 8 3 2 口地址 4 0 0 0 h n y 锯齿波产生首先将 dac0832 口地址至为 4000h,然后将 00h 送入寄存器 a 中, dac0832 输出 a 中的内容,当 a 中的内容等于 f0h 返回开始,当 a 中的内容不为 0fh 时,a 中的内容累加,从而输出波形。 3、三角波程序流程图 19 三 角波产生 首先 将 dac0832 口地址至为 4000h,通过 a 中数值的加一递升,当 a 中的内容为 0 时,与 0ffh 相比,相等时 a 中的内容减一递减,从而循环产生三角波。 4、正弦波程序流程图 开始 置 0 8 3 2 口地址 0 0 0 h 查表格取数送 0 8 3 2 + 1 取表格初值 r 1 0 0 h 正弦波波形设计通过查表指令得出。 开 始置 dac0832口 地 址 40h ( a) ?0832输 出a+1?a=0? a-1?输 入 一 个 数 字 量 fh?a( a) ?0832输 出输 入 一 个 数 字 量 0h?a a=0?yn ny 20 5、方波程序流程图 方波产生首先将 dac0832 口地址至为 4000h,当 a 中的内 容为 0 时,输出对应模拟量, 然后延时,当 a 中的 内容为 0ffh 时,同样输出 对应模拟量,再延时, 从而得到方波。 6、延时子程序流 程图开 始r6赋 初 值 r7赋 初 值r7减 1是 否 为 0?r6减 1 是 否 为 0?返 回 yyn n 开 始置 0832口 地 址 0h 输 出 对 应 模 拟 量0h?a延 时 h?a 输 出 对 应 模 拟 量延 时 21 延时程序如下: dely: mov r7,#07h dly0: mov r6,#00h nop dly1: djnz r6,dly1 djnz r7,dly0 ret 方波的上限和下限的延时时间为:3ms s=1+(1+1+2256+2)7=3612s 五、测试结论 (1)硬件板如图 11 所示 图 11 硬件板图 (2)产生各种波形电压输出范围及频率如下: 锯齿波:vp-p min=2.2v t=4.6ms f=217.3913hz vp-p max=4.6v 22 三角波:vp-p min=2.4v t=6.2ms f=161.28032hz vp-p max=5v 正弦波:vp-p min=2.8v t=9.2ms f=108.69565hz vp-p max=3.4v 方波: vp-p min=2.8v t=10.8ms f=92.592593hz vp-p max=3.4v 通过按键控制可产生方波、锯齿波、三角波、正弦波等,同时用 led 显示灯指示对 应的波形。所产生的波形 vp-p 范围为 2.25 v,频率范围为 92.592593hz 217.3913hz,波形准 确并且平滑。本系统设计简单、性能优良,具有一定的实用性。 (3)设计电路板及示波器测试的波形 采用型号为固纬 gos620(20mhz)的示波器,测试结果如图所示。 正弦波: 锯齿波: 三角波: 23 方波: 六、致谢词 毕业设计的完成和论文的完成要感谢很多人。 首先要感谢学校给我提提供了做这个系统的机会,感谢学校的各位领导和老师一直 以来对我的教导和帮助。 感谢指导老师,给我进行了很多的辅导,不仅在技术上给了我很大帮助,也在系统 需求和设计方面给予了我很大帮助。老师的谆谆教导,使我受益匪浅。 感谢学校其他老师和同学给予的帮助和支持。 经过近半年的锻炼和学习,我们学到了许多书本上没有的知识,从
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南省大关县2025年上半年事业单位公开遴选试题含答案分析
- 河北省巨鹿县2025年上半年公开招聘村务工作者试题含答案分析
- 2025版汽车泵租赁及售后服务合同
- 2025版体育赛事场地设施维护保养合同
- 2025版三亚海绵城市非开挖顶管排水合同
- 2025版滩涂地现代农业种植土地承包合同
- 2025年房地产项目公司股权转让与土地开发权转让协议
- 2025版汽车金融租赁业务合作协议
- 河北省泊头市2025年上半年公开招聘村务工作者试题含答案分析
- 海南省东方市2025年上半年事业单位公开遴选试题含答案分析
- 读书笔记 -《提高利润的78个方法》
- GB/T 4623-2006环形混凝土电杆
- 甲状腺危象教学课件
- GB/T 14273-1993旋转轴唇形密封圈性能试验方法
- GB/T 12247-2015蒸汽疏水阀分类
- 期权风险管理课件
- 《护理伦理学》教学大纲(本科)
- 开学第一课铸牢中华民族共同体意识课件
- 安全标准化班组汇报课件
- 板带轧机刚度对热轧板形的影响
- 老年人睡眠障碍护理
评论
0/150
提交评论