前言
由于STM32单片机自带CAN控制器,所以STM32和MCP2515 CAN控制器联合使用的场景不多。正好一个特殊的需求使用了MCP2515和STM32,在这里说一下硬件链接需要注意的地方。
1.硬件
主控芯片STM32F103C8T6
CAN模块MCP2515(控制器)+TJA1050(收发器)
2.软件
程序直接由泥人的例程修改为STM32程序,本身提供的是STC51单片的程序
3.无法通信的问题
购买的是泥人的CAN模块手册说明是5V供电,而STM32工作电压是3.3V。这里存在一个电压不同,STM32手册说明兼容5V。
本想直接给CAN模块供3.3V电压,但是无法工作。查看芯片手册后发现MCP2515的工作电压是2.7V~5.5V而TJA1050工作电压是4.75~5.25,所以由于收发器的工作电压问题,CAN模块采用3.3V供电是肯定无法工作的。
4.解决
乖乖的接5V给mcp2515模块供电即可。