STM32 CAN 在总线断开的时候怎么检测发送成功,现在两个节点互发数据 我把数据线断开怎么还是发送成功呢?
if(CAN_GetFlagStatus(CAN1,CAN_FLAG_BOF)==SET)
LCD_ShowString(60+80,190,200,16,16,"Failed"); //提示发送失败
else LCD_ShowString(60+80,190,200,16,16,"OK "); //提示发送成功
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
CAN_InitStructure.CAN_TTCM=DISABLE; //非时间触发通信模式
CAN_InitStructure.CAN_ABOM=DISABLE; //软件自动离线管理
CAN_InitStructure.CAN_AWUM=DISABLE; //睡眠模式通过软件唤醒(清除CAN->MCR的SLEEP位)
CAN_InitStructure.CAN_NART=ENABLE; //禁止报文自动传送
CAN_InitStructure.CAN_RFLM=DISABLE; //报文不锁定,新的覆盖旧的
CAN_InitStructure.CAN_TXFP=DISABLE; //优先级由报文标识符决定
调试一下,看看寄存器的状态
发送错误计数器的值超过255时,此节才会处于离线状态。可以短接H L
一周热门 更多>