ImageVerifierCode 换一换
你正在下载:

DSP技术.ppt

[预览]
格式:PPT , 页数:55 ,大小:1.35MB ,
资源ID:2162816      下载积分:20 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-2162816.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(DSP技术.ppt)为本站会员(dreamzhangning)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

DSP技术.ppt

1、7-1 CCS安装和使用简介7-2 TMS320C281X C语言简介7-3 典型F281X C工程文件的结构介绍7-4 在内部Flash中运行应用程序,5 DSP编程方法,5-1 CCS安装和使用简介,5 DSP编程方法,CCS安装仿真器安装驱动程序配置使用简介,CCS安装,CCS安装,(1)启动Code Composer Studio ,这里,CCS安装,(2)“Welcome”后击Next。出现警告时:,这里,(3)Yes:,CCS安装,(4)Select All, Next。,这里,CCS安装,(5)默认路径为c:ti,也可以更改。,这里,CCS安装,(6)开始安装。,这里,CCS安装

2、,(7)有情提示。,CCS安装,(8)安装完成。,CCS安装,(9)安装补丁升级到V2.21:C2000-2.20.00-FULL-to-C2000-2.21.00-FULL。,仿真器安装,仿真器安装,实验室配备仿真器为合众达SEED-XDSUSB2.0 首先连接好仿真器,将JTAG插入实验板(1)运行D:utilitiesc2000SEED-XDSUSB2.0 Win2000,XPUSBdriverDisk1SETUP.EXE默认CCS的安装路径,仿真器安装,(2)检查设备管理器中是否如图中所示,仿真器安装,(3)运行应用程序usb20emurst.exe,证实仿真器与目标系统连接正常。,请

3、将测试程序拷贝到计算机上运行。utilitiesc2000SEED-XDSUSB2.0 Win2000,XPUSBdriverusb20emurst.exe,驱动程序配置,驱动程序配置,(1)运行Setup CCS 2 (C2000)。 (2)首先关闭 Import Configuration 窗口,File-Clear 清除原有设备驱动程序。,驱动程序配置,(3)根据DSP的型号选择相应的TI驱动程序。实验板为SEED-DEC2812,故选择F2812 XDS510 Emulator。点击Import a Configuration File,选择好后单击Import ,再Close。,驱动

4、程序配置,(4)右击更改Properties。,驱动程序配置,(5)如下修改:,驱动程序配置,(6)修改Configuration File:,这里,驱动程序配置,(7)确保I/O Port为0x240。,这里,驱动程序配置,(8)完成。 (9)保存、退出,启动CCS。,这里,使用简介,仿真模式调试一例,创建工程,1. 打开CCS,点击ProjiectNew,创建一个新工程wave,创建源文件,2. 点击FileNewSource File ,创建一个新文件wave.c,保存到工程文件夹,添加工程文件,3. 将 tutorialsim28xxhello1 文件夹下的hello.cmd、vect

5、ors.asm 拷贝到工程文件夹,改名 hello.cmd wave.cmd 4. 添加wave.c、wave.cmd、vectors.asm到工程中,添加工程文件,5. 将库文件 tic2000cgtoolslibrts2800.lib 添加到工程中,出现在这里,设置编译参数,6. 点击ProjiectBuild Options,设置编译参数:填写堆、栈大小,其它可用缺省参数,堆、栈 大小,编译,7. 编译工程、排查错误,编译、运行,8. 点击FileLoad Program,将debugwave.out加载到(仿真)目标板 9. 点击DebugGo Main 10.设置运行断点,全速运行,

6、调试观察变量,11.打开观察窗,在Watch1中增加变量s,观察其数值 12.打开存储器窗,设置属性,观察结果,调试图形观察,13.点击ViewGraphTime/Frequency,设置图形显示,调试图形观察,14.最后,全速运行,在stdout窗看到“Hello!”,15.点击FileWorkspaceSave Workspace,保存调试环境,便于以后FileWorkspaceLoad Workspace即可迅速恢复当前设置,5-2 TMS320C281X C语言简介,5 DSP编程方法,C语言基础知识F281X C语言编程要点,C语言基础知识 (略),F281X C语言编程要点,位段结

7、构,struct bytedataunsigned a:2; /* 位段a占2位 */unsigned :6; /* 无名位段占6位,不能访问 */unsigned :0; /* 无名位段占0位,从下一边界开始 */unsigned b:10; /* 位段b占10位 */int i; /* 成员i,从下一边界开始*/ data;,关键字,interrupt,说明函数是中断函数 interrupt void int_handler(void) typedef,对已存在的类型增加一个类型名,简化书写 typedef interrupt void (*PINT)(void); 增加函数类型指针 st

8、ruct PIE_VECT_TABLE PINT PIE1_RESERVED;PINT PIE1_RESERVED; ,无参数调用 无参数返回 系统自动按中断函数编译,关键字,const,其修饰变量的值不改变,因而通常加载到已初始化段 const float SinTable = 0.0, 0.015, volatile,其修饰变量的值易改变 int *pXX; volatile int *pXX; while(pXX!=0xFF); while(pXX!=0xFF);,MOV AR1, pXX L1: MOV AL, AR1 L2: CMP AL, #0xFFSB L2, NE,MOV AR

9、1, pXX L1: MOV AL, AR1 L2: CMP AL, #0xFFSB L1, NE,关键字,asm,C语言中嵌入汇编语言程序 asm(” NOP ”); ” ”中必须是合法的汇编语言cregister,说修饰变量如果与F281x寄存器同名,编译器认为是硬件寄存器 extern cregister volatile unsigned int IER; extern cregister volatile unsigned int IFR; IER, IFR 直接作为中断使能、中断标志寄存器使用,存储器模型,DSP处理器有两种类型的存储器模型: 程序存储器、数据存储器 程序存储器装载

10、可执行代码 数据存储器装载外部变量、静态变量、堆栈、中间结果 程序代码或数据以段的形式装载于存储器中 C语言程序经C编译器编译后,生成多个可重定位的段,分为 已初始化段、未初始化段 已初始化段: .text段,包括可执行代码、字符串和常量 .cinit段、.pinit段,包括初始化变量和常量表 .const段,包括字符串常量和以const关键字定义的常量 .econst段,字符串常量、far const常量,初始化后放进远存储器 .switch段,为.const语句建立的表格,存储器模型,未初始化段: .bss段,保留全局和静态变量空间。程序开始运行时,引导程序将数据从.cinit段拷贝到.b

11、ss段.ebss段,保留全局和静态变量空间。变量声明是远(far)或者大型存储器模型使用。程序开始运行时,引导程序将数据从.cinit段拷贝到.ebss段.stack段,为C的系统堆栈分配存储空间,用于变量的传递。.sysmem段,为动态存储器函数malloc、calloc、realloc分配存储器空间。若C程序未用到此类函数,则C编译器不产生该段。,链接命令文件,链接命令文件(.cmd文件)定义了存储器结构和段存放方式.text、.cinit、.switch段链接到系统的ROM或者RAM中但必须放在程序段( page0 ).const段链接到系统的ROM或者RAM中但必须放在数据段( pag

12、el ).bss、.stack、.sysmem段链接到系统的RAM必须放在数据段( pagel ),F2812链接命令文件举例,MEMORY PAGE 0 : PROG : origin = 0x3f8000, length = 0x001fffRESET : origin = 0x0, length = 0x3fPAGE 1: DATA : origin = 0x008000, length = 0x001fff SECTIONS .reset : load = RESET, PAGE = 0 /* 复位段 */ .text : load = PROG, PAGE = 0 /* 可执行代码段

13、 */.cinit : load = PROG, PAGE = 0 /* 初始化变量和常数段 */.vectors : load = PROG, PAGE = 0 /* 中断向量表段 */.stack : load = DATA, PAGE = 1 /* C堆栈段 */.data : load = DATA, PAGE = 1 /* C堆栈段 */.ebss : load = DATA, PAGE = 1 /* 汇编数据段 */.bss : load = DATA, PAGE = 1 /* 全局和静态变量空间段 */.econst : load = DATA, PAGE = 1 /* 扩展常量

14、段 */.const : load = DATA, PAGE = 1 /* 常量、全局和静态变量段 */.cio : load = DATA, PAGE = 1 /* CIO段 */ ,C语言中定义存储段举例,在DSP28_GlobalVariableDefs.c中的存储段定义: #pragma DATA_SECTION(AdcRegs,“AdcRegsFile“); volatile struct ADC_REGS AdcRegs; #pragma DATA_SECTION(CpuTimer0Regs,“CpuTimer0RegsFile“); volatile struct CPUTIME

15、R_REGS CpuTimer0Regs;在.cmd文件中则定义段所在的存储空间 MEMORY PAGE 0 : PRAMH0 : origin = 0x3f8000, length = 0x002000PAGE 1 : CPU_TIMER0 : origin = 0x000C00, length = 0x000008ADC : origin = 0x007100, length = 0x000020 SECTIONS CpuTimer0RegsFile : CPU_TIMER0, PAGE = 1 AdcRegsFile : ADC, PAGE = 1 ,5-3 典型F281X C 工程文件

16、的结构介绍,5 DSP编程方法,CCS文件类型F2812设备文件,CCS文件类型,CCS文件类型,project.pjt CCS使用的工程文件 program.c. C程序源文件 program.asm 汇编程序源文件 filename.h C程序头文件(含DSP/BIOS API模块头文件) filename.lib 库文件 project.cmd 链接命令文件 program.obj 由源文件编译或汇编而得的目标文件 program.out (经完整编译、汇编以及链接的)可执行文件 project.wks 存储环境设置信息的工作区文件 program.cdb 配置数据库文件。采用DSP/BIOS API的应用程序需要此类文件,其它应用程序则可选,F2812设备文件,F2812设备文件,请自我学习设备文件内容,7-4 在F2182内部Flash 存储器中运行应用程序,7-4 在内部Flash 中运行应用程序,5 DSP编程方法,自学教材,自学参考 阅读例程,逐句解释,Flash运行,请继续下一章的学习,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报