2.2 主程序
DsP部分的软件采用C语言设计,包括丰程序、HPI中断服务子程序及定时中断服务子程序。主程序完成系统的初始化,包括DSP工作模式的设置、堆栈的设置、初始化McBSPO、初始化MAX3111E、设置定时中断等。框图如图5所示。

2.3捷联姿态计算
HPI中断部分完成数据接收的同时,完成数据的计算处理,ADuC834的数据已存放在设定的几个数据单元,对读出数据采用四元数算法进行捷联姿态计算。算法部分功能模块如图6所示。
2.4串行数据发送
通过配置McBSPO及MAX311lE,实现在定时中断部分完成计算出的角度、位置,速度等数据的发送。设定了每10ms发送一次数据,采用查询方式完成数据的发送。
在系统引导时完成McBSPO及MAX3111E的初始化,McBSP0始初化程序如下:
通过查询SPCR2的XRDY位与XEMPTY位可知是否可向McBSP写数据,查询程序如下:
通过发送数据写配置寄存器完成MAX3111E的初始化,程序如下:
void init_max3111e(){
unsigned int flagl=0xO;;
mcbsp ready();
*DXRl0=0xc801;
//写配置寄存器,允许发送缓冲区空中断,fosc=3.6864 MHz
//波特率为115 200 b/s,8位数据位,1位停止位
mcbsp_ready();
};
在发送数据时,为保证MAX311E不丢失数据,需用中断方式或查询方式,在MAX3111E的缓冲区空时再发送数据,查询方式发送数据程序如下:
void sendl(unsigned char data){
unsigned char flag=0x0,datahi,datalow;
while(flag!=0x4801){//第14位为1,表示发送缓冲区为空
mcbsp_ready()
3 程序的编译与自举
通过JTAG接口,由仿真器可方便的对平台进行调试,同时完成应用程序的写入。可在CCS集成开发环境中建立相应的工程,导入.cmd文件、vector.asm文件、库文件、源程序等。在编译选项中加入一v548,编译后生成相应的.out文件。整个程序小于32 KB,使用C54xx通用Flash烧写工具C54xx Flash Tool 2.01[2],生成相应的16位hex文件及Flash烧写的flashburn.Out文件。在CCS中导入flashburn.out,设置CPU寄存器DROM位为0,然后运行,即完成了对SST39VF200B中程序的烧写。
结 语
基于TMS320C5410实现的压电捷联惯导系统平台,电路体积小,系统稳定性高。经测试,整体性能满足误差校正、姿态角及速度、加速度的计算要求,并提供了捷联惯导系统实现各种算法的基础平台。