MSR寄存器的INAK位不会自动清0

2019-07-20 03:13发布

请问原子哥和高手:用的是探索者的板子来移植程序,当CAN寄存器MCR中 位0 INRQ 在手动清0后(将CAN硬件从初始化切换到正常模式),这时,CAN的MSR寄存器中的位0 INAK也应该会自动硬件清0,来指示退出初始化进入正常模式。对吧?

但是,该位不会自动清0,怎么回事?是时钟设置不对导致CAN无法正常工作,还是????串口收发其他功能都正常。

因为后面的程序需要根据该位来做个判断,这样后面程序没办法写了。

    while (((CCI_bxCANx_REG->MSR & MSR_INAK) == ((bWaitState_p) ? (0) : (MSR_INAK))))   //CCI_bxCANx_REG->MSR,该值一直为0x00000009
    {
     XXXXXXX
     XXXXXX
    }


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。