stm32F407(TJA1050)CAN通信成功--Apple

作者: applecai | 来源:发表于2021-11-22 21:40 被阅读0次

    一,前言

    最近我在公司玩单片机玩的不亦乐乎,好多开发板供我玩,总算MCU底层现在算告一段落。现在我又开始玩自己的开发板咯,之前stm32先移植了一个can,目的是测试买的TJA1050模块,以及自己买的canable设备。结果can不通,不过我用了公司开发板,验证了canable是正常的。TJA1050之前玩linux的时候也验证过是正常的。那么剩下的问题就是stm32我移植的can有问题。

    二,瞬间解决问题

    移植的can怎么会有问题呢?先猜测下复用引脚错误或者波特率选择的clock源不同导致波特率错误。果然看了code果然是这个原因。连示波器都不需要看了。
    由于F429的主频为180M,而F407的主频为168M导致的原因。Can的时钟为PCLK1。HCLK和PCLK2及PCLK其实都是系统时钟,只是经过了分频。PCLK1是4分频。PCLK是在APH总线上的。
    找到问题了,那么自己基于168M配置下波特率为500k即可。

    三,工具都用起来

    我双11还买了逻辑分析仪,因为家里示波器是10年前买的,很笨重。所以我这次配置完500k波特率,直接用逻辑分析仪查看下,完美的2us及能正确解析数据。上图。


    image.png

    那么完美的波形,这是回环模式测试的tx波形,那么我改成正常模式,且连接了TJA1050模块,结果一把则can通信正常。


    image.png
    我的连线如下,有图有真相
    image.png

    哈哈,干的漂亮!

    四,总结

    我家就是一个实验室呢!工欲善其事必先利其器,感觉逻辑分析仪比示波器好用多了。前几天还很快速的帮助我解决了spi的问题,而我的老示波器只有双路,不方便。这个逻辑分析仪我是爱不释手呢,需要把它利用起来,我要开动脑筋,继续想点小项目出来~


    image.png

    相关文章

      网友评论

        本文标题:stm32F407(TJA1050)CAN通信成功--Apple

        本文链接:https://www.haomeiwen.com/subject/hhqitrtx.html