高级会员

- 积分
- 744
- 金钱
- 744
- 注册时间
- 2012-4-27
- 在线时间
- 193 小时
|
1金钱
[color=rgb(0, 0, 0) !important]STM32F103R8T6 PA11发送,PA12接收,CAN通信死机,用的是战舰STM32F103ZE的例程,问题集中在
u8 CAN1_Send_Msg(u8* msg,u8 len)
{
u8 i=0;
u32 TxMailbox;
u8 message[8];
TxHeader.StdId=0X12; //标准标识符
TxHeader.ExtId=0x12; //扩展标识符(29位)
TxHeader.IDE=CAN_ID_STD; //使用标准帧
TxHeader.RTR=CAN_RTR_DATA; //数据帧
TxHeader.DLC=len;
for(i=0;i<len;i++)
{
message=msg;
}
if(HAL_CAN_AddTxMessage(&CAN1_Handler, &TxHeader, message, &TxMailbox) != HAL_OK)//发送
{
return 1;
}
while(HAL_CAN_GetTxMailboxesFreeLevel(&CAN1_Handler) != 3) {}
return 0;
}
屏蔽掉while(HAL_CAN_GetTxMailboxesFreeLevel(&CAN1_Handler) != 3) {},芯片没有死机,但是CAN脚没有信号输出,有大神遇到过这个问题吗?
|
|