DSP软件系统结构与设计.pptVIP

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
*ST0=0xFF; OR ST0=0XFF; OR *ST0=0XFF 这些定义可以写在C源程序中,但DSP的状态寄存 器与控制寄存器很多,因此我们可以专门把这些定 义作成一个文件(头文件),这样,只需在C源程 序中包含该头文件就能直接访问DSP的状态与控制 寄存器。 二、添加头文件 在C中: #include “c5402.h” Main() { St0=0xff; …… } 附:主要参考资料 《TMS320C54X DSP应用程序设计与开发》,刘益成编,北京航天航空大学出版社,2002.5; TMS320C54x Optimizing C/C++ Compiler Users Guide TMS320C54x C Source Debugger User’s Guide §3.3.5 C项目的编程与调试实例 例 练习1: ? = = 5 1 i aixi y #include math.h struct add{float x1,x2,x3,x4,x5,y;}add1; double a[5]; double y,x; void main() { add1.x1=3; add1.x2=3; add1.x3=2; add1.x4=2; add1.x5=2; a[0]=1; a[1]=2; a[2]=3; a[3]=4; a[4]=5; add1.y=add1.x1*a[0]+add1.x2*a[1]+add1.x3*a[2]+add1.x4*a[3]+add1.x5*a[4]; y=add1.y; x=exp(2); while(1); } 调试注意事项 检查项目文件添加是否完整 Build option中的link选项要选择-c 根据需要检查map文件存储器安排是否正确 装载的是.out文件 例 请将使用C语言编程实现:ARP=2,CPL=0,SXM=1,MP/MC=1,OVLY=1. 1、用c语言操作DSP片内控制寄存器,应对片内控制寄存器先定义,并将定义作为头文件5402.H: #define ST0 *(volatile unsigned int*)0x0006 #define ST1 *(volatile unsigned int*) 0x0007 #define PMST *(volatile unsigned int*) 0x001D 2、C程序中编程操作: #include “5402.h” main() {ST0=ST00X5FFF│0X4000; ST1=ST10XBFFF │0X0100; PMST=PMST │0X0060; } 练习2:请在练习1的程序中添加DSP的初始化程序,要求初始化程序中使得:PMST=0X00E0; ST0=0; ST1=0X0960; SWWSR=0X7FFF; 练习3:请编写程序将DSP内部DARAM 2000h到2020h单元内容复制到3000h到3020h单元中。 同理,中断也是如此。 因此我们把中断矢量的设置形成一个文件vectors.asm,如: .ref _c_int00, _NMI_INT, _SOFT_INT .sect .vectors RS B _c_int00 NOP NOP NMI B _NMI_INT NOP NOP SINT2 B _SOFT_INT NOP NOP SINT3 B _SOFT_INT NOP NOP …… §3.3.2 C主体源程序的编写 C语言中常用的关键字 C与汇编混和编程 及注意事项 #include c5402res.h #include init_5402.c ioport unsigned port3002; ioport unsigned port3003; ioport unsigned port8005; ioport unsigned port8007; extern void init_5402( ); void main() { unsigned int a; init_5402(); while(1) { a=port3003; port3002=a; port8005=a; port8007=a; } asm( nop ); } void interrupt NMI_INT() {return; } void interrupt SOFT_INT() {return; } 给出包含的头文件 I/O端口定义 系统主程序 CPU的初始化 I/O端口输入输出控制程序 中断服务子程序 DSP的C语言中常用关键字 const 用const对任何变量或数组进行限定,保证它们的值不被改变.如: const int

文档评论(0)

celkhn5460 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档