DSP实验报告指示灯_第1页
DSP实验报告指示灯_第2页
DSP实验报告指示灯_第3页
DSP实验报告指示灯_第4页
DSP实验报告指示灯_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验实验 1 4 编写一个汇编和 编写一个汇编和 C 混合的混合的 DSP 程序程序 试验步骤 3 编译源文件 下载可执行程序 1 单击菜单 Project Rebuild All 执行结果如右图 2 执行 File Load Program 在随后打开的对话框中选择刚 刚建立的 UseCMD out 文件 完成后 系统自动打开源程序文件 UseCMD c 4 打开观察窗口 打开 view 菜单下的 watch windows 工具 在 watch1 中的 name 上分别输入 x y z 三个变量 如图 5 察程序运行结果 在 x 1 这一行上设置断点 方法是先把光标移动到这 一行上 右键选择 toggle breakpoint 1 执行程序 按 F5 键 1 次 可观察到 watch 窗口中 x 和 y 的值无变化 如图 2 单步运行 2 次 按 F8 键 在变量窗口中观察到变量 x y 被赋值 如图 3 再单步运行 1 次 按 F8 键 在变量窗口中观察到变 量 z 中保存的就是 x 加上 y 的值 如图 6 成内存映像文件 1 单击菜单 Project Options 启动 Build Options 工程设置对话框 2 单击 Linker 属性页 在 Map Filename 项中输入需要 生成的 map 文件名 比如可以输入 UseCMD map 3 单击 确定 完成设置 4 选择菜单 Project Rebuild All 重新编译工 程 生成新设置的 map 文件 7 对照观察 map 文件和 cmd 文件的内容 1 选择菜单 File Open 将找到 C ICETEK F2812 EDULab DSP281x examples Lab02 UseCMD 目录 将文件 类型改为 Memory Map Files 选择刚刚生成的 UseCMD map 文 件 打开 2 展开工程管理窗中的 UseCMD pjt 双击其中的 UseCMD cmd 文件 3 程序的入口地址 cmd 文件的 SECTION 中指定 text 段放 到程序区 PAGE 0 的 PRAMH0 中 在 MEMORY 中指定 PRAMH0 从 内存地址 3f8002h 开始 长度为 1000h 再看 map 文件中 ENTRY POINT SYMBOL 中说明了 c int00 标号的地址为 003f8002h 两 者相符 如下图所示 4 内存的占用情况 通过观察 map 文件中的 MEMORY CONFIGURATION 段可以了解内存的使用情况 可以看到 text 段 放到程序区 PAGE 0 的 PRAMH0 中 并且从其首地址开始 改变内存分配 修改 cmd 文件中的 PRAMH0 origin 0 x3f8002 length 0 x 改为 PRAMH0 origin 0 x3f8502 length 0 x00500 意思是把 PRAMH0 的首地址入口改为 0 x3f8002 所占的字节长 度为 500h 重新编译工程 观察 map 文件中有何变化 结果如下图所示 从 map 文件的描述结果可以看出 c int00 标号的地址修改 为 003f8502h 可以看到 PPAMH0 的首地址变为了 0 x3f8002 长度 也修改成了 500 两者还是相符的 8 题目 如果对第一个实验按上述方法对 cmd 文件进行修改 重新观察其 map 文件的变化 过程与结果如下 修改前查看 map 文件的描述 按上述方法修改 cmd 文件后 结果如下 可以看到修改后的 c int00 标号的地址由原来的 3f8018h 变为了为 3f8518h 在 MEMORY 中指定 PRAMH0 由原来的内存地址 3f8002h 开始到修改后的 3f8502h 开始 长度为 变为了 500 text 段也在程序区 PAGE 0 的 PRAMH0 中 但不是从它的首地址开 始 但也由原来的 3f8018h 变为了为 3f8518h 同样增加了 500 说明了修改 cmd 文件可以安排程序和数据在 DSP 内存资源中的分 配和位置 通过观察 map 文件可以观察到修改后的程序和数据所占 用的实际尺寸和地址 试验结果 实验分析 一 通过实验可以发现 修改 cmd 文件可以安排程序和数据在 DSP 内存资源中的分配和位置 map 文件中描述了程序和数据所占 用的实际尺寸和地址 C 语言编制的程序 在经过编译器编译后 需要连接若干C 标准程序辅助运行 以下是运行流程 1 程序入口为 c int00 执行标准C 库中的程序 负责初始化C 环 境 申请堆栈 初始化有初始值的变量等 2 程序最终转到用户编制的主函数运行 3 程序在主函数中的无限循环中持续运行 二 使用混合程序编程 在可以完全实现原来算法的同时 可以优 化关键的算法模块 实验实验 5 3 快速傅立叶变换 快速傅立叶变换 FFT 算法算法 试验结果 64 点点 输入输入 滤波滤波 输出输出 256 点点 输入输入 滤波滤波 输出输出 实验分析 开始滤波运算时 AR2 指向第一个系数 AR0 则指向当前 输入信号 x n 完成一次滤波运算后 AR2 将再次指向第一个系数 而 AR0 则指向最老的 x n L 1 在下一循

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论