本人调试STM32F072的can模块,发现按照官方例程在运行到CAN_Init(CAN, &CAN_InitStructure); 时,软件可以通过对CAN_MCR寄存器的INRQ位清’0’,来请求从初始化模式进入正常模式,然后要等待硬件对CAN_MSR寄存器的INAK位置’1’的确认 ,就是 while (((CANx->MSR & CAN_MSR_INAK) == (uint16_t)CAN_MSR_INAK) && (wait_ack != INAK_TIMEOUT))
{
wait_ack++;
}
但是为什么我这里一直不成功啊?你有没有经验?
我仔细看了这个帖子https://bbs.21ic.com/icview-407287-1-1.html,也是不行,各位高手有没有用过的??
|