欢迎来到天天文库
浏览记录
ID:16355616
大小:25.00 KB
页数:5页
时间:2018-08-09
《探析基于c语言的dsp程序设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、探析基于C语言的DSP程序设计 【摘要】基于DSP程序设计在计算机程序设计中占有重要地位,使用C语言程序设计的DSP程序更好的发展,并避免问题传统的汇编语言移植性问题。本文从C语言的基本结构出发,探讨了C程序中CMD文件以及在程序中的具体应用及C编程的其他问题,为程序入门设计者提供借鉴。 【关键词】C语言程序设计DSP程序移植性 【中图分类号】TP311.1【文献标识码】A【文章编号】2095-3089(2013)12-0242-01 传统的汇编语言依赖于计算机硬件,程序的可读性和可移植性较差,其适用性面临着很大的挑战,目前急需要进行相应的改变。一般的高级语言具
2、有很好的可移植性,其可以很好的利用函数库进行编辑,这就给了DSP程序编辑机会,发展机遇C语言的DSP程序编辑成为了DSP的发展方向。C/C++语言,作为一种高级语言,能够访问物理地址和位置操作,可以直接操作硬件,适合DSP开发语言。 一、C语言的结构 C语言是需要按照其特定的结构进行编辑,才能够完美运行的。最基本的C语言包括:其一,C语言的入口,即main()函数的C语言源文件(.C);其二,链接命令文件,该文件包含一个DSP和目标板存储空间和定义的代码和数据段,其主要职能是决定如何存储空间分配等问题;其三,运行文件库,这里提供了C语言编辑的环境、标准库函数等。DS
3、P的C语言编程基础上的一般过程是:中断模块的第一个指令设置为“B_c_int00”,rts2xx控制。自由_c_int00必须做为C运行时环境的入口点,在上面c_int00()函数来完成初始化堆栈指针和全局变量的初始化操作,然后调用main()函数,将控制的功能,从而为应用程序执行。 二、C程序中部分CMD文件以及在程序中的具体应用 C语言程序编程环境与汇编语言编辑类似,编辑器对编译后的程序也会进行哎能够与的初始化操作,产生相应的初始化和未初始化段,在TMS320C2xx的C/C++编译器会产生以下几种初始化段和为初始化段:首先,初始化部分一般包括数据表或可执行代码
4、,编辑生成的初始化部分汇编语言是相似的,只是名称不同,主要有:文本段。,cinit段落、常量、开关部分,这几个初始化部分内容:可执行代码分别和常量,初始化和固定数量的表,字符串常量和明显的初始化定义的全局和静态变量和初始化,switch语句列表。其次,未初始化的部分,其主要用途是空间保留为目的,保证程序的运行,也类似于汇编语言,只是名字改变,主要有:BSS,。Ebss部分、堆栈,sysmem段落、Esysmem节,这几未初始化的全局变量和静态变量分别为:保留存储空间,远到修改全局和静态变量的存储空间,保留通过堆栈可以传递参数到函数或局部变量分配空间,让空间动态内存分配,
5、离开空间远修改动态内存分配(函数调用malloc(),()或者callocrealloc())。下面是利用C语言中断服务程序的实例: .ref_e_into,_sehedulerTimer_ISR,wd―disable,―nothing .seet“veetors,, rset:Bwd_disable;OOhreset intl:B―nothing;OZhINTI intZ:B―nothing;O4hINTZ int3:B―sehedulerTimer―ISR;O6hINT3 int4:B―nothing;OshINT4 ints:B―nothing;O
6、AhINTS int6:B―nothing;OChINT6 中断服务程序MW―e24xx―csl?C: interruptvoidnothing(void) { 三、C编程的其他问题 (一)关键字 DSP的C语言编辑器同样支持关键字、主包下面的四个关键词:其一,const关键字,它的主要功能是限制不能改变变量和数组。其二,volatile关键字,主要是起到修饰的效果,使用的关键变量,被访问的时候,不涉及原因变量存储更改,同时使用关键字可以使变量更快的阅读。其三,crgister关键字,这中关键字是一种调用高级语言的关键字,其可以使用高级语言直接进行DSP控
7、制寄存器的访问,但是前提条件是此关键字修饰的对象需要符合寄存器的命名规则,不然会产生错误。crgister修饰不可以使用在函数的内容,仅仅对整型、指针变量进行crgister修饰,结构性的不能使用,否则程序报错。其四,中断关键字,是一种中断程序中,为一个特定的函数使用修改,使得程序中断,程序在运行时,这个函数的调用,自动返回中断,可以有效地保护寄存器。但是使用中断修改函数的入口就是必须使用空类型,同时,返回值也需要空类型,这样才可以正确的操作。 (二)C运行支持库 C运行库是支持C语言运行的基础,其中主要是库函数,通过使用库函数来完成
此文档下载收益归作者所有