基于dsp控制的正弦波和三角波发生器的设计毕业论文内容摘要:
12 引脚 名称 描述 引脚 名称 描述 1 AGND 模拟地 11 OUTB 通道 2 输出 2 OUTA 通道 1 输出 12 RFTB 通道 2 反馈电压 3 RFBA 通道 1 反馈电压 13 REFB 通道 2 参考电压 4 REFA 通道 1 参考电压 14 VDD 驱动电压 5 DGND 数字地 15 WR 读写选通 6 A/B 通道 1, 2 选通 16 CS 片选 7 DB7 数据位 7 17 DB0 数据位 0 8 DB6 数据位 6 18 DB1 数据位 1 9 DB5 数据位 5 19 DB2 数据位 2 10 DB4 数据位 4 20 DB3 数据位 3 4. 简单应用及时序介绍 TLC7528 的两路转换通道分别映射在 5416I/O 空间的地址 0x1000 和0x1001。 向该地址写入的数据会直接送到 TLC7528 进行转换。 TLC7528 启动转换时序如图所示: 宁夏理工学院毕业 论文 13 图 TLC7528 启动转换时序 5. TLC7528 的工作原理 TLC7528 包括两个相同的 8 位乘法 D/A 转换器 DACA 和 DACB。 每一个DAC 由反相 R2R 梯形网络、模拟开关以及数据锁存器组成。 二进制加权电流在 DAC 输出与 AGND 之间切换,于是在每一个梯形网络分支中保持恒定电流,与开关状态无关。 大多数仅需要加上外部运算放大器和电压基准。 TLC7528 通过数据总线、 CS、 WR 以及 DACA 与 DACB 等控制信号与微处理器接口。 当 CS 与 WR 均为低电平时 TLC7528 模拟输出对 DB0~ DB7 数据总线输入端的活动做出响应。 在此方式下,输入锁存器是透明的,输入数据直接影响模拟输出。 当 CS 与 WR 信号变为高电平时, DB0~ DB7 输入端上的数据被锁存,直到 CS 与 WR 信号再次变为低电平时为止。 CS 为高电平时,不管WR 的信号为何种状态,数据输入被禁止。 当用 5V电源电压工作时,此器件的数字输入提供 TTL 兼容,此器件可以宁夏理工学院毕业 论文 14 用在 5V~ 15V 范围内任何电源电压工作,但是,电源电压工作在 5V以上时,输入逻辑电平与 TTL 不兼容。 电源电路和晶振电路 一个完整的 DSP 系统通常是由 DSP 芯片和其他相应的外围芯 片组成的,下面介绍本次设计中用到的电源电路、复位电路和晶振电路。 TMS320VC5402 DSP 芯片采用低电压设计,并且采用双电源供电,即内核电源 CVDD和 I/O 电源 DVDD。 I/O 电源采用 电源供电,而内核电源采用 供电,降低内核电源的目的是为了降低功耗。 由于 TMS320VC5402 DSP芯片采用双电源供电,使用时需要考虑它们的加电次序。 在理想情况下, DSP芯片上的两个电源应该同时加电,但在有些场合很难做到。 若不能做到同时加电,应先对 DVDD 加电,然后再对 CVDD 加电,同 时要求 DVDD电压不超过 CVDD电压 2V。 这个加电次序主要依赖于芯片内部静电保护电路。 内部保护电路如图 : D VD DC VD D图宁夏理工学院毕业 论文 15 内部静电保护电路图 从图中可以看出, DVDD 电压不超过 CVDD 电压 2V,即用 4 个二极管降压,而 CVDD 电压不超过 DVDD 电压 V,即一个二极管降压,否则有可能损坏芯片。 下图 的电源电路: 图 产生 的电源电路 这个是产生 电压的电路图,考虑大部分数字系统使用的电源是 5V,图中 VCC 采用 5V 电压。 通过电压调节器产生 电压。 下图 电压的电路: 宁夏理工学院毕业 论文 16 图 产生 的电源电路 这个是产生 电压的电路图,和产生 电压的电路相同,考虑大部分数字系统使用的电源是 5V,所以图中 VCC 采用 5V 电压。 通过电压调节器产生 电压。 振荡器是用来将直流电源能量转换为一定波形的交变振荡信号能量的转换电路。 利用石英晶体的压电效应可以做成晶体谐振器。 石英晶振的固有频率十分稳定,它的温度系数(温度变化 1176。 C 所引起的固有频率相对变化量)在 106以 下。 另外,石英晶振的振动具有多谐性,即除了基频振动以外,还可利用其泛音振动。 前者称基频晶体,后者称泛音晶体。 在工作频率较高的晶体振荡器中,多采用泛音晶体振荡电路。 在泛音晶振电路中,为了保证振荡器能准确地振荡在所需要的奇次泛音上,不但必须有效的抑制掉基频和低次泛音上的寄生振荡,而且必须正确的调节电路的环路增益,使其在工作泛音频率上略大于 1,满足起振条件。 而在更高的泛音频率上都小于 1,不满足起振条件。 本次设计所用的晶振电路如图所示: 图 晶振电路图 宁夏理工学院毕业 论文 17 四章 软件系统设计 在应用系统中,系统软件是建 立在具体的硬件基础上的,根据系统功能要求可靠的实现系统的各种功能。 好的软件设计能够充分发挥微控制器的运算和逻辑控制功能,从而提高仪器的精度和使用的方便性。 在 DSP的开发应用系统中,汇编语言虽然仍然为主要编程语言,但 C语言也已经逐渐被引入, 并且 用 C语言开发的程序有可读性好,移植性较高,编程简单,可缩短开发周期等等优点。 所以,在这个设计中,我们产生波形所用到的软件程序都用 C语言来编写应用程序。 由于调试程序需要使用 CCS系统,而连接 PC机和 DSP芯片需要ICETEK— ,所以下面对它们分别 做以介绍。 ICETEK— 本次设计使用的是 ICETEK— 作为连接 PC 机与 DSP 芯片的工具, ICETEK— 5100 是使用并口和 PC 机相连接的,在使用该系统之前要正确配置并行端口和开发系统相应的设置,一般的,台式机并行端口有三种工作模式: SPP、 EPP、 ECP, ICETEK— 5100 可以在 SPP 和 EPP 两种模式下工作,所以要把计算机的并行端口配置为 SPP 或 EPP 模式。 我们把并行端口配置为 EPP模 式。 ICETEK— 5100 有如 下 优 点: 兼 容 TI 全 系列 DSP 产品 ,包 括TMS320C2020, C5000, C6000, VC33 等;完全通用,只需改变软件就可以实现所有 DSP 器件开发; 接口,仿真速度快,调试方便;支持 CCS 集成调试环境; 接口,支持热插拔;仿真不占用任何 DSP 资源;支持多 DSP同时调试仿真;可在多种操作系统如 WIN98/WIN2020/WXP 下使用。 由于以上宁夏理工学院毕业 论文 18 这些优点,所以选择该器件作为连接 PC 机与 DSP 的工具。 三角波的设计方案 三角波的产生方法如流程图所示,初始化操作包括关闭所有中断,以免对输出波形产生影响,同时允许 D/A输出,然后输出三角波的上升沿,即输出三角波形的值逐渐增大的那一部分,如果三角波的上升沿的值达到最大,接着输出三角波的下降沿部分,直到三角波的下降沿的值达到最小,程序循环就能产生三角波。 整个程序经过 D/A转换器的转换,可以以模拟波形输出,便于观察。 这个程序的输出是双通道的输出,即有两个通道同时输出波形,这两个通道的波形的频率、相位和幅度可以不同,我们可以用示波器上的双通道输入模式来同时观察两个波形的不同。 程序所输出的波形可以按照要求改变频率、相位和幅度,以满足不同的需要。 下面是产生三角波的流程图: 初 始 化三 角 波 的 上 升 沿 输 出 大 到 D / A三 角 波 的 下 降 沿 输 出 大 到 D / A开 始 图 三角波的流程图 宁夏理工学院毕业 论文 19 产生三角波的程序如下: ioport unsigned int port100,port1001,port1002。 define DAC0 port1000 define DAC1 port1001 define LDAC port1002 main() { unsigned int uDA0,uDA1,I。 for(i=0。 i=256。 i++) { uDA0=0。 uDA1=0。 for(i=0。 i=256。 i++) { DAC0=uDA0。 DAC1=uDA。 LDAC=0x1f。 uDA0=I。 uDA1=I。 } uDA0=256。 宁夏理工学院毕业 论文 20 uDA1=256。 for(i=0。 i=256。 i++) { DAC0=uDA0。 DAC1=uDA1。 LDAC=0x1f。 uDA0=256I。 uDA1=256I。 } } } 程序改用 matlab仿真波形如下图: 图 三角波的 波形图 宁夏理工学院毕业 论文 21 正弦波的设 计方案 正弦波的产生方法有两种,一种使通过查表的方法产生,这种方法主要用于对精度要求不高的场合,把计算过的正弦量存放在一个表格中,通过对表格的调用产生波形信号,所以,如果精度要求过高,表就会很大,相应的存储器容量也就要求很大;另外一种方法是泰勒级数展开法,这是一种比查表更为有用的方法,与查表法相比,这种方法需要的存储单元很少,而且精度高。 但是,这种方法 需要的计算量就比较大,相应的速度就受到限制。 这里我们用查表的方法来设计正弦信号发生器。 程序开始首先进行初始化的操作, 初始化操作包括关闭所有中断,以免对输出波 形产生影响,同时允许 D/A输出,初始化后设置读正弦波的指针,使这两个指针的初始值都为 0,即读数时从正弦值表的第一个数开始读,然后输出到 D/A转换器,接着指针加 1,读下一个数,然后再输出。 程序就是这样循环运行,直到正弦波的所有值都被读出来为止,这样一个正弦波的所有值都被输出到 D/A转换器,经过 D/A转换器转换,形成模拟波形,这样我们就能够在示波器上观察产生的波形是否符合我们的要求。 这个程序的输出是双通道的输出,即有两个通道同时输出波形,这两个通道的波形的频率、相位和幅度可以不同,我们可以用示波器上的双通道输入 模式来同时观察两个波形的不同。 当然,这个程序产生的正弦波的波形的频率、相位和幅度可以通过改变程序来改变,使用相当的灵活,可以满足不同的要求。 下面是产生正弦波的流程图: 宁夏理工学院毕业 论文 22 开 始初 始 化设 置 读 正 弦 波 的 值 的 指 针U D A O = 0 和 U D A 1 = 0读 取 正 弦 波 的 值 存于 寄 存 器寄 存 器 中 的 值 输 出到 D / A读 取 正 弦 波 的 值 的指 针 加 1 图 正弦波流程图 产生正弦波的程序如下 : ioport unsigned int port10。基于dsp控制的正弦波和三角波发生器的设计毕业论文
相关推荐
数模转换芯片采用的是 TLV 5608,实现滤波后的信号从数字信号恢复为所需要的模拟信号。 JTGA 口供 DSP 芯片下载程序调试。 TMS320C5402 的体系结构 TMS320VC5402 处理器在本系列中处于先进水平。 它具有运算速度快,内部存储空间大,外部接口性能好等优点。 所以我选择了技术上比较先进,价格又较便宜的 C5402 作为硬件开发对象。 下面结合 C5402 的实际情况
(E7) 当 n=N时,该滤波器的输出为 DFT在频率 Wk=2π k/N处的值,亦即 ( E8) 如同将( E5)与式( E6)相比较就可验证一样。 冲激响应为 hk(n)的滤波器,他的系数函数可表示为 1()11k kNHz Wz ( E9) 该滤波器在单位圆上的频率 Wk=2π k/N处有一个极点。 因此,通过将输入的数据组输入到 N个单极点并行滤波器(谐振器)组就 可计算整个
1个串行EEPROM 和主机处理器的连通。 德州仪器的 eXpress 软件开发工具可为 TMS320C67x DSP 系列提供支持,这些工具包括一个高度优化的 C/C++编译器,代码组合 Studio 集成开发环境( IDE)的 JTAG 为基础的仿真和实时调试,和 DSP/BIOS 内核。 TMS320C67x 处理器主要由三部分组成:即 CPU内核、外设和存储器。 CPU中
窗体,打开摄像头,获取视频句柄等相关数据,完成视频信息的初步采集。 关闭设备 断开系统与摄像头的链接,释放视频窗口和内存空间。 保存为 BMP 文件 实时拍摄,抓取瞬间图像 ,并 保存为 BMP文件。 开始录像 将视频捕获的图像信息保存为 avi 文件,录像过程完成音频文件( *.wav)的同步录制。 该模块分为短时录制和长时录制,短时录制的录制时间完全由用户控制。 长时录制时
通 过 DDRAM 显 示在屏幕中。 ● 地址计数器 AC 地 址计数器 是用 来贮 存 DDRAM/CGRAM 之一的地址 ,它可由 设 定指令 缓 存器 来改 变 ,之后只要 读 取或是 写 入 DDRAM/CGRAM 的值 时 ,地 址计数器 的值就 会 自 动 加一, 当 RS 为 “ 0” 时 而 R/W 为 “ 1” 时 , 地址计数器 的值 会被读 取到 DB6—— DB0中。
晶振输入 3 X2 晶振输出 4 GND 地 5 RST 控制移位寄存器 /复位 6 I/O 数据输入 /输出 7 SCLK 串行时钟 8 VCC2 主电源输入 DS1302 读写和控制说明 DS1302 的数据读写方式有两种,一种是单字节操作方式,一种是多字节操作方式。 每次仅写入或读出一个字节数据称为单字节操作,每次对时钟 /日历的 8字节或 31 字节 RAM 进行全体写入或读出的操作