打印
[复制链接]
1859|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 zzy2345678 于 2022-12-26 08:52 编辑

  在配置CAN工作模式时,一直在while中运行,退不出来,就是  OPMOD没有更新,请问这是为什么?
      C1CONTbits.REQOP = requestMode;
       while (C1CONUbits.OPMOD != requestMode)
        {
            //This condition is avoiding the system error case endless loop
            if (1 == C1INTHbits.SERRIF)
            {
                status = CAN_OP_MODE_SYS_ERROR_OCCURED;
                break;
            }
        }

图片1.png (396.39 KB )

图片1.png

使用特权

评论回复
沙发
ynwa| | 2022-12-26 16:55 | 只看该作者
语句没什么问题,你是在硬件调试吗?你试试看设置其他各种模式,能不能读到状态。

使用特权

评论回复
板凳
zzy2345678|  楼主 | 2022-12-27 08:58 | 只看该作者
ynwa 发表于 2022-12-26 16:55
语句没什么问题,你是在硬件调试吗?你试试看设置其他各种模式,能不能读到状态。 ...

是的,我用ICD4调试就是死在这里,没有配置成功,  实际工作也是死在这里. 不知道MCU硬件为什么不动作?

使用特权

评论回复
地板
lcczg| | 2022-12-27 10:18 | 只看该作者
1.C1FIFOBA 配置是0x2600 吗?
2.CAN TX, RX脚的PPS配置对吗?
最好把代码提供下,好让大家看问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

11

帖子

0

粉丝