工具/软件:Code Composer Studio
大家好,我对 tms570ls0432 launchpad 非常陌生。 我尝试使用 compare0实现 RTI 中断,下面是我的代码。 但是当我想使用 RTI 为每10、5、2mSec 生成0、1、2中断时。 我无法生成该代码,实际上我无法为其编写代码,因为 RTI 模块 helcogen 只生成一个 void rtiNotification (UINT32 notification)。 如果我想为中断编写自己的代码,如何执行它。 请帮助。
#include "sys_common.h" 
/*用户代码开始(1)*/ 
#include "rti.h" 
#include "het.h" 
#include "Gio.h" 
/*用户代码结束*/ 
/**@fn void main (void) 
*  @应用程序主函数简介 
*  @请注意、默认情况下、此函数为空。 
* 
*  此函数在启动后调用。 
*  用户可以使用此函数来实现应用程序。 
* 
/*用户代码开始(2)*/ 
UINT16 ISR=0; 
/*用户代码结束*/ 
int main (空) 
{ 
/*用户代码开始(3)*/ 
   /*初始化 RTI 驱动程序*/ 
   rtiInit(); 
   gioInit(); 
   /*将高端计时器 GIO 端口 hetPort 引脚方向设置为所有输出*/ 
   gioSetDirection (hetPORT1、0xFFFFFFFF); 
   /*启用 RTI 比较0中断通知*/ 
   rtiEnableNotification (rtiNOTIFICATION_COMPARE1); 
   /*启用 IRQ -清除 CPS 寄存器中的 I 标志*/ 
   /*注意:这通常由操作系统或 SVC 调度程序来完成*/ 
   _enable_IRQ (); 
   /*启动 RTI 计数器块0 */ 
   rtiStartCounter (rtiCOUNTER_BLOCK0); 
   /*永久运行*/ 
   while (1); 
/*用户代码结束*/ 
  //返回0; 
} 
/*用户代码开始(4)*/ 
/*注-您需要从 notification.c 中删除 rtiNotification 以避免重新定义*/ 
void rtiNotification (uint32通知) 
{ 
/* 在用户代码开始和用户代码结束之间输入用户代码。 * 
  
   ISR++; 
   gioToggleBit (gioPORTA、4); 
} 
/*用户代码结束*/