多语言展示
当前在线:133今日阅读:176今日分享:34

34.STM32的CAN通信实验

今天小编来做一下STM32F407的CAN通信实验。通过按上键切换CAN通信模式,通过按下键控制数据发送,并将切换的CAN模式,发送和接收的数据通过串口打印输出。
工具/原料
1

STM32F407

2

keil5

方法/步骤
1

下图是开发板上CAN通信的原理图,如下图:

2

下图是开发板的实物图,在进行can通信实验前需要把下图方框中的端子进行短接,如果要和其他can设备进行通信,需要连接到下图中红色箭头指示位置,如下图:

3

这个按键控制的实验是基于上个实验项目的基础上,首先复制上个【RS485通信实验】实验,然后命名为【CAN通信实验】,如下图:

4

打开项目,然后新建一个can.c的文件,并将这个文件存储到APP文件夹下的CAN文件夹下,如下图:

5

然后新建一个can.h的文件,并将这个文件存储到APP文件夹下的CAN文件夹下,如下图:

6

然后准备将can.c文件关联到项目的APP文件夹下,按照下图中红色箭头指示步骤点击【Add Existing Files to Group】,如下图:

7

找到can.c文件,将can.c文件和项目进行关联,如下图:

8

接下来按照下图将can.h头文件也包含到项目中,如下图:

9

然后准备将stm32f4xx_can.c文件关联到项目的StdPeriph_Driver文件,按照下图中红色箭头指示步骤点击【Add Existing Files to Group】,如下图:

10

找到stm32f4xx_can.c文件(该文件存放在Libraries文件夹下的STM32F4xx_StdPeriph_Driver下的src文件夹下),将stm32f4xx_can.c文件和项目进行关联,如下图:

11

下图是main.c文件的代码,如下图:

12

下图是can.c文件的代码,如下图:

13

下图是rtc.h文件的代码,如下图:

14

至此所有代码都结束,对所有代码进行编译,0错误,0警告,接下来就可以将代码下载到开发学习板中开始观察现象了,如下图:

注意事项
1

个人观点,仅供参考。

2

感谢阅读。

推荐信息