DSP第四章节
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四、该应用的软件设计
1、系统初始化程序设计
DSP系统的硬件设计之后,软件设计就成为系统设计的关键,一个DSP系统在很大程度上取决于软件设计是否合理与可靠。在DSP进行数字滤波运算前必须进行一些初始化程序。在本系统中初始化程序主要包括:DSP芯片的初始化、矢量表初始和两个串行端口的初始化。
DSP芯片的初始化是设定DSP芯片工作状态的重要步骤,只有正确进行DSP芯片的初始化,才能保证芯片的正确运行。
中断矢量表是每个DSP系统必须用到的,对中断矢量表进行初始化是DSP初始化的一个重要的组成部分,正确设置中断矢量包括:
1)根据DSP芯片对各中断矢量的设置位置编写一个子程序。
2)设置PMST控制寄存器。该寄存器的高9位是IPTR,用于设置矢量表的起始地址。
3)连接时将矢量表重定位到IPTR指定的地址。
2、数字滤波程序设计流程
DSP实现数字滤波器流程图
本设计的程序工程中包含4个文件:filter,init.asm,vectors.asm,filter.cmd。四个文件实现不同的功能。filter.c文件为C语言编写的源文件,在本设计中主要功能是将各个子程序结合起来,便于阅读。init.asm文件为汇编语言编写的源文件,是本设计中的主要文件,
包含了各个初始化程序的具体操作和实现数字滤波的具体代码。vectors.asm文件为中断矢量表初始化子程序文件,中断矢量表是每个DSP系统必须用到的,对中断矢量表进行初始化是DSP初始化的一个重要的部分。filter.cmd为链接器命令文件。
3、软硬件联调与结论
进行软硬件联调是系统设计的最后一步,是检测系统的稳定性及可行性的重要方法。本系统的联调过程和实际结果如下:①在电脑中设置本系统软件开发环境的相关配置,连接DSP 仿真器与目标测试系统的JTAG接口,给系统上电。运行DSP开发平台,如果不能正常连接则需要检查JTAG电路的连接、整个硬件系统的工作状态、软件平台的配置。②编译修改程序代码,直到编译完全通过,本系统前期所设计的程序全部通过编译。③下载程序到目标系统,通过设置断点和单步运行,检查DSP相关寄存器的值是否配置为所需要的值。④运行完整的程序,给系统送入输入信号,用示波器观察输出信号的参数和特性是接近理想值。通过实际不断调试与改进,本系统能达到预期的数字滤波效果。