最小系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DSP原理及应用课程设计
---- TMS320LF2407A最小系统的设计
1.设计任务
设计的最小系统主要包括TMS320LF2407A、RAM、电源芯片等。要求从原理图设计开始,独立完成PCB的绘制,并编写验证程序(例如,用XF脚输出一个
方波)。
2 总体方案
基于DSP 的系统设计过程中,最小系统的设计是整个系统设计的第一步,系
统设计总是从最小系统开始,逐步向系统应用范围扩展,最终以DSP 为核心的大系统的设计。因此最小系统设计DSP 设计的关键。DSP 最小系统的设计包括DSP 电源和地线的设计,JTAG 仿真口的设计、复位和时钟电路的设计、上拉和下拉引脚的设计等。
3 硬件的设计
3.1芯片介绍
3.1.1 TMS320LF2407A
1.该模块上的资源有32千字FLASH
2.2千字SARAM ,544字DARAM ,外扩64千字的程序ROM ,64千字的数据RAM
TMS320LF2407
锁相环电路、指示灯、 滤波电路
时钟复位电路
TPS7333Q 电源模块
RAM 存储模块
JTAG 仿真电路
3.两个事件管理器EVA和EVB
4.可扩展外部存储器总共192K字空间:64K程序存储器,64K字数据存储器空间,64K字I/O寻址空间
5.看门狗定时模块
6.19位A/D转换器
7.控制局域网络CAN模块
8.串行通信接口SCI模块
9.16位串行外设SPI接口模块
10.基于锁相环的时钟发生器
11.高达40个可单独编程或复用的通用输入/输出引脚GPIO
12.5个外部中断
13.电源管理包括3种低功耗模式,能独立地将外设器件转入低功耗工作模式
3.1.2 RAM
1.64K,16位静态RAM
2.高速转换时间:8、10、12、15ns
3.CMOS低功耗管理
4.TTL可共存界面
5.3.3V供电
6.完全静态管理:无时钟或刷新要求
7.三种输出状态
8.高位、低位数据控制
3.1.3 TPS7333Q
TPS7333Q是一款电压转换芯片,它的输出电压为3。3V,其特点如下:
1.TPS7333Q克服了常规LDO稳压器的弊端,它具有非常低的静态电流,即使对于变化较大的负载,静态电流可以保持稳定
2.具有关断特性
3.具有输入和输出电容的选择
3.2 原理图的设计
DSP最小系统的设计包括DSP电源设计,JTAG仿真口的设计、复位和时钟电路的设计、上拉和下拉引脚的设计等
3.2.1 电源电路设计
电源电路的选择是系统设计的一个重要的部分,设计好坏对系统的影响最大。首先需要注意的是,为了减少电源噪声和互相干扰,数字电路和模拟电路一般要独立供电,数字地和模拟地也要分开,并最终通过一个磁珠在一点连在一起,用TPS7333Q进行3.3V电压的转换对最小系统供电
3.2.2 复位电路设计
TMS320LF2407A内部带有复位电路,因此可以直接RS复位引脚外面接一个上拉电阻即可,这对于简化外围电路,减少电路板尺寸很有用处,但是为了调试方便经常采用手动复位电路
3.2.3 锁相环电路设计
TMS320LF2407A具有内部锁相环电路,可以从一个较低的外部始终通过锁相环倍频电路实现内部倍频
TMS320LF2407A的PLL模块使用外用滤波器电路回路来抑制信号抖动和电磁干扰,使信号抖动和干扰最小
3.2.4 JTAG电路
JTAG是JOINT TEST ACTION GPOUP的简称,JTAG接口用于连接DSP系统板和仿真器,实现仿真器DSP访问,JTAG的接口必须和仿真器的接口一致,否则将无法连接上仿真器。其连接图如下:
3.2.5 其它电路
指示灯电路
3.2.6 最小系统原理图
4 软件设计
测试最小系统是否成功有以下四个步骤:
1.上电后,检测3.3V电压时候正常,如果正常,进入下一步;否则,检查电源部分电路
2.上电后,直接测量CLKOUT引脚,查看是否有时钟信号输出,以及时钟信号的频率时候和设置一样。若CLKOUT信号正确,进入下一步;否则检查时钟和复位信号
3.连接好仿真器,查看是否能打开仿真软件CCS。如果可以打开CCS,进入下一步;否则检查JTAG接口电路和上拉电阻
4.通过DSP下载程序DSP中运行,查看运行结果
4.1 程序流程图
4.2测试程序(存储数据)
#include "2407c.h"
/*************************************************************/
/********************全局变量定义与初始化*********************/
/*************************************************************/
/*******************函数、子程序声明与定义********************/ void sys_ini() //系统初始化子程序 {
/*关总中断*/
开 始
系 统 初 始 化
将 波 形 样 点 值 写 入 内 存
读取内存值显示
结 束
是 否 属 实
N
Y