多语言展示
当前在线:120今日阅读:61今日分享:18

如何检测开发板的CAN总线实际波特率

当使用开发板学习CAN总线时,可能会遇到开发板与其他CAN总线设备无法正常通信的问题,即使用的程序是开发板带的DEMO,也无法正常通信。这个时候首先要考虑接线是否正确,CAN-H接CAN-H,CAN-L接CAN-L。第二步看终端电阻是否有两个,需要保证总线上有两个终端电阻(最远的两端一边一个)。最后检查开发板的实际波特率,检查时可以先看开发板的程序,但是这里请注意,开发板自带的例子程序和波特率计算公式可能存在错误,实际波特率还需要使用专用的设备进行测试。我们这里使用广成科技的USBCAN-II Pro分析仪搭配ECANTools软件的自动识别波特率功能对其波特率实际值进行识别。
工具/原料
1

广成USBCAN-II Pro分析仪

2

ECANTools软件

3

电脑

4

ARM开发板

5

STM32F1开发板

方法/步骤
1

一、接线并确保终端电阻已正确添加首先把CAN分析仪和一个ARM开发板的CAN接口正常连接,如图所示,接线时我们接入的是CAN1通道,之后的操作中,我们也将选择CAN1通道。

2

分析仪和开发板连接时,总线上需要有两个终端电阻,我们的USBCAN-II Pro分析仪的内部集成了120欧姆电阻。所以在开发板端再添加一个电阻就可以了。这样我们基本排除了接线或终端电阻导致的通讯错误。

3

二、检测开发板的波特率我们想把开发板的波特率设置成100k,设置好之后就可以开始检测了。检测前请确定USBCAN分析仪已接入电脑,且设备管理器中驱动显示安装正常。如果您成功安装驱动,设备管理器中的分析仪将会显示“GC-Tech USBCAN Device”的字样。确认驱动安装正常后,进入我们随货附带的ECANTools软件,打开后选择100k波特率进入界面。

4

选择100k波特率点击确定,进入收发界面后,可以点击屏幕中央的发送数据按钮。如图3。

5

可以看到,屏幕中显示发送失败,这证明STM32开发板目前不是100k的波特率。

6

三、检测开发板的波特率如果想知道开发板的波特率,可以用我们设备的自动识别波特率功能。1、连接好设备后,打开ECANTools软件,选择自动识别波特率,如图4。

7

2、然后选择增强模式识别,选择全范围识别,如图5波特率输入50kbps到150kbps,点击开始识别。

8

3、自动识别波特率可识别到波特率设置有偏差,如图6。

9

在这里因为是一对一测试,我们需要使用增强模式来识别波特率。全范围波特率识别设置为50k-150k。从识别的结果上我们可以看到,识别到的是102k到109k,不是我们需要的100k波特率,这证明开发板的波特率在设置方面有些误差。

10

四、STM32F1开发板的波特率计算STM32F1系列的开发板的波特率的计算可以用一个软件来完成,如下图所示

11

1、输入APB1时钟:36MHz2、输入需要的波特率:100kbps3、点击计算按钮4、选择正确的采样点:100k的波特率应选择87.5%的采样点。采样率的推荐值是:当大于800K 时选择75%, 当大于500K时选择80%,当小于等于500K时需要选择87.5%。5、点击生成代码。

推荐信息