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

C6678:核间中断与网口发送raw_send函数冲突

我使用的是TMS320C6678,编译器是ccsv5.4,没有用SYS/BIOS,核间中断是TI提供的API函数,单独进行八核的核间通信通过了,加入到与上位机进行发送数据的大程序中,核0与核1进行通信:

KICK0 = KICK0_UNLOCK;
KICK1 = KICK1_UNLOCK;
IPC_Trigger();//核01给核1发送中断
KICK0 = KICK_LOCK;
KICK1 = KICK_LOCK;

核1处理完数据后回到核0,然后通过网口进行数据发送,但是到raw_send函数时就会出错。

send_data_image_header->payload = (unsigned short *)&seekerUPDHeader;
send_data_image_header->len = send_data_image_header->tot_len = sizeof(SEEKER_UDP_HEADER);
raw_send(pcb, send_data_image_header);

若不进行核间中断,网络发送并没有问题。

核间中断为什么会和网络发送数据冲突?还请各位大神不吝赐教

Shine:

请问核间中断后,核1处理完什么数据?有没有修改网口的参数?

我的世界不荒凉:

回复 Shine:

你好,核1并没有处理任何数据,等待到核0发来的中断后打印一行字(printf),然后就给核0中断,接着核0进行网口搬数。但是核0中的参数莫名的就变了。。。

赞(0)
未经允许不得转载:TI中文支持网 » C6678:核间中断与网口发送raw_send函数冲突
分享到: 更多 (0)