- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言dsp开发与应用举例(精_哈工大课件)
2003.2.16 DSP原理及应用 DSP中的C语言 1.数据类型及相互之间的转换 2.C语言关键字 1.数据类型及相互之间的转换 2.C语言关键字 const const关键字有助于更好地控制对特定数据对象存储空间的分配。可以用const关 键字定义任何变量或数组,来保证变量或数组的值不被改变。 如果定义一个对象为const,则const段会为此对象分配特定的存储空间。 volatile Volatile关键字用来定义一些变量,保证该变量不会被优化器优化。优化器会自动分析数据流来避免一切可能存取内存的操作。如果在写C代码的时候确实需要用到内存存取的代码,则必须用volatile关键字来区别这些存取操作。 对存储器映射寄存器都使用volatile关键字来定义。 ioport Ioport 关键字读写DSP的I/O端口空间。 ioport关键字的用法如下: Ioport type porthex_num ioport是指定这是个端口变量的关键字; type是指端口的数据类型,必须是char,short,int或unsigned; porthex_num指的是 I/O 端口号,hex_num变量是一个十六进制数据。必须注意的是,所有的端口变量在函数级说明端口变矗是无效的,必须在支存级予以说明:同时在函数原型中不能使用ioport关键字。 下面的代码定义 I/O端口为unsigned port10h,将数据a写 port 10h,然后从port10h读人数据存到b中: interrupt interrupt关键字用来定义一个中断服务函数,中断服务函数必须保存中断控制寄存器和返回序列。当C语言程序被中断时,中断服务程序将保存所有用到的寄存器。当用interrupt关键字定义一个函数的时候,C编译器会生成寄存器来保存中断控制寄存器和中断返回序列。 interrupt关键字定义函数既没有参数也没有返回值。 注意: 在编译后的代码中,c_int00是C语言程序开始的标志。这是专门为系统复位中断设定的保留字。系统复位中断将初始化整个系统并调用main()函数。 DSP的C语言运行环境 1.C程序设计流程 2.DSP的c语言运行环境 C编译器 C编译器的编译时通过运行cl500.exe程序完成的,编译器运行指令: Cl500 filenames objectfiles Filenames:一个或多个C语言源文件的名称。 Objectfiles:编译器所创建目标文件的文件名 2.DSP的c语言运行环境 (1)存储器模式 (2)C语言与汇编语言的混合编程方法 DSP的C编译器将存储器分成两个线性的段,分别是程序存储器和数据存储器。程 序存储器包含可执行的代码。数据存储器包含外部变量、静态变量和系统堆栈。 由C程序生成的代码段和数据段将连续地存放在存储器中。 C编译器生成的段 C编译器对C程序进行编译后生成可以重定位的代码和数据段,这些段可以用不同的方式分配到存储器以符合不同系统配置的需要。这些段可以分为两种类型,一种是已初始化段,另一种是未初始化段。 已初始化段主要包括数据表和可执行代码。C编译器共创建5个已初始化段: ●.cinit段:包含初始化变量和常数。 ●.const段:包含由C限定词const定义的字符串常量和数据。 ●.switch段;包含switch表 ●.text段:包含所有的可执行代码。 未初始化段用于保留存储器空间(通常是RAM),程序利用这些空间在运行时创建 和存储变量。C编译器共创建了3个未初始化段。 面向DSP的C语言可以直接嵌人C54xx的汇编指令或者伪指令。直接嵌入汇编指令一方面可以在C程序中实现C语言无法实现或者很难实现的一些硬件控制功能,例如修改中断控制寄存器、中断使能寄存器、读取状态寄存器和中断标志寄存器等;另一方面也可以在C程序中的关键部分用汇编语句代替C语句,以便能优化程序,从而提高整个程序的运行效益。直接嵌人汇编指令在结构上好像调用一个特殊命名为asm的且带有一个字符串常量参数的函数,其基本格式如下: ARMDSP实验箱 DSP采用TI公司的TMS320VC5410,该芯片可以稳定工作在160MHz主频;内部具有128KB片内RAM和32KB片内ROM;该芯片内部包含有一个16位定时器,6个DMA控制器,3个McBSP串行口和1个增强型HPI控制器。对于本实验系统上的DSP模块,板上提供了512KB的Flash ROM,用于存放代码。 ARMDSP实验箱结构图 DSP芯片应用举例 1、DSP芯片的C语言开发 2、实验平台介绍 3、实验内容 1、DSP芯片
您可能关注的文档
最近下载
- (苏教版)数学五年级上册寒假“天天练”作业设计,含30份题组,附参考答案.pdf
- 《(电影、美剧超级大包)(英语中字)(BD-MKV HD-MKV 1200G)115 先收着。。。转自deefun》.doc
- 2023年黑龙江省烟草专卖局(公司)真题.docx VIP
- 招标采购代理规范zbtb-t a01-2016.pdf
- 小儿肺脏超声基础课件.ppt
- 华南理工大学《管理统计学》课件-第2章统计数据的描述.pptx
- 2023年黑龙江省烟草专卖局系统考试真题.docx VIP
- 《好妈妈胜过好老师》.doc
- 家长会参考讲义——围棋与孩子的素质教育幻灯片课件.ppt
- 华南理工大学《管理统计学》课件-第6章方差分析与试验设计.pptx
文档评论(0)