TI中文支持网
TI专业的中文技术问题搜集分享网站

OMAPL138B-EP: 串口无法接收数据

你好

我的 arm 和 dsp 核都跑的是裸机。用arm核的 uart1 和 upp 来接收外部数据,通过ipclite送至dsp核进行运算(算法中包括FFT),计算完的结果又通过ipclite送至arm核,经uart1发送给上位机。如果dsp核中不进行运算(算法中包括FFT),程序运行正常,如果进行进行运算(即下面的main2()),就会出现卡死在main2()下面的Notify_sendEvent函数处;

main2();

Notify_sendEvent(IPC_ARM_HOST,IPC_HOST_INTLINE, EVENTID2, (UInt32)dsp_obj_info_buffer, TRUE);

有帖子称,FFT运算时,会禁用所有中断,我尝试在main2()之后,再使能一次中断,如下所示:

main2();

IntDSPINTCInit();

IntGlobalEnable();                                 /* Enable C674x global interrupt */

Notify_sendEvent(IPC_ARM_HOST,IPC_HOST_INTLINE, EVENTID2, (UInt32)dsp_obj_info_buffer, TRUE);

程序会卡死在IntDSPINTCInit()函数。

我如果只使用dsp核 uart1和upp 直接来接收数据 ,然后进行运算。发现只要不向uart1发数据,upp 一直可以正常中断(接收数据),并正常运行main2();但是一向uart1发送数据整个程序就会死掉,不知道是什么原因?有没有什么办法可以解决?

Shine:

可以用仿真器跟踪一下FFT程序,看执行完后总中断是否被关掉了?如果被关掉了,在执行完fft后,重新使能总中断。不需要再重新初始化中断IntDSPINTCInit();

,

x x5:

你好 

,

x x5:

你好 

,

Shine:

请问您还有什么问题?

赞(0)
未经允许不得转载:TI中文支持网 » OMAPL138B-EP: 串口无法接收数据
分享到: 更多 (0)