关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > TMS320F2812三种运行方式在SRM控制中的应用

TMS320F2812三种运行方式在SRM控制中的应用

作者:时间:2012-05-09来源:网络收藏

引言
开关磁阻电机(Switched Reluctance Motor,)的对实时性的要求很高,它需要不断地判断其转子瞬时位置、相电流等信息,进而换相,实现电机运转。而作为核心,不仅要实现上述SRM基本控制功能,而且要实现各种控制策略(包括电流斩波控制、电压PWM控制、角度位置控制),甚至是很复杂的SRM优化算法的。因此,SRM的控制需要一个性能优越的控制核心。
TI公司推出的是一款性能非常优越的数字信号处理器(DSP),最高工作时钟频率可达150MHz。其外设功能十分强大,存储资源也很丰富:芯片内部集成了18K SARAM(M0、M1各1K,L0、L1各4K,H0为8K),Flash为128K;且预留了5个扩展空间,方便用户进行功能扩展。这就为的多样化提供了条件,同时也是选其作为SRM控制核心的原因。

1 三种的实现
TMS320F2812代码的开发环境为CCS,其工程一般由头文件、源文件、库文件以及连接命令文件(CMD)四种文件组成。头文件采用位域结构体进行定义,方便用户操作相关寄存器;源文件保存用户开发时编写的软件代码;库文件为系统文件,无法修改;CMD文件则是用来分配存储空间的,它告诉链接器将编译器生成的段链接到哪。所以,要想实现代码的多样化,必须很好地了解CMD文件。
CMD文件包括MEMORY和SECTIONS。其中,MEMORY的作用是指示存储空间的起始位置和长度,而SECTIONS的作用是将各种初始化段和非初始化段分配到相应的存储空间。二者都是由编译器自己编译、生成及归类的。初始化段包括所有的代码、常量及初始化表格等;非初始化段由变量、堆栈等组成。用户也可以通过“#pragma DATA_SECTION”和“#pragma CODE_SECTION”指令,将自己定义的数据段或代码段分配到对应的数据空间或程序空间,完成映射。
1.1 RAM调试运行
RAM调试运行指的是将用户编写的代码下载(load)到片内RAM,并在RAM上直接运行的一种运行方式。这种方式实际上就是通常所说的在线仿真。TMS320F2812通过仿真器与主机相连,主机能够在线调试程序,例如启动、停止、单步运行、设置断点等。
RAM调试运行方式实现简单,其程序流程为:code_start-> wd_disable-> c_int00-> main()。 code_start和wd_disable的程序包含于DSP281x_CodeStartBranch.asm中,具体程序如下:
a.jpg


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭