EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本文档介绍如何使用 can 工具测试 can。 给用户提供了“can_libs.rar”以及“can_tools.zip”压缩包,分别是 can 工具需要的库 文件和 can 工具二进制文件。 注意开发板需要有 can 模块才能使用正常使用 can 测试工具。本文档适用于 iTOP 所有开 发板。 下面介绍一下测试工具的使用方法。 1 硬件连接 作者测试 can,使用的是两块迅为开发板。两块开发板 can 的连接为“can-A 连接 can- A,B 连接 B”,imx6 的板子是 can 的“+连接+,-连接-”。 2 测试工具和库文件的使用 本节介绍如何配置工具和库文件。 1.将压缩包“can_libs.rar”和“can_tools.zip”解压得到“can_tools”和 “can_libs”,拷贝解压出来的文件到 tf 卡或者 u 盘,如下图所示。 . H; A3 x# X7 H# Q4 ?7 B
2 t1 R* n$ w) q; H. _% r" a! C
w& K6 q' A/ Z9 ]/ c& g5 O
' P. O: N# ], Z, m R- t6 |2 g2.然后将 tf 卡或者 u 盘挂载到开发板上(参考使用手册 11.3.3 小节),如下图所示。
0 N# E+ j0 r1 f* y$ m. \# B2 Y+ \
: A& p9 ^. [+ S. A- c
& Q" J! v' t: c
, u" a7 n; ^ c
3.拷贝工具软件到/bin 目录下,使用命令“ cp -r can_tools/* /bin/”,如下图所示。 # v0 M3 I# k) d$ g9 p1 u9 V" O/ ~% Q
2 u; K1 V8 z4 l( o2 J+ b; l
# Y1 X" F# v4 a4 U/ m8 [+ E
4 |- p7 Q$ |, L, S/ L4.如下图所示,可以看到 5 个 can 工具。注意在文档中,我们没有使用全部的工具,不过 并不影响我们测试 can。
$ X6 g$ |: l/ S8 z, r% K& D
6 {& ?2 E8 z5 P {
+ O/ D" }& I& D G
5 `+ C$ e9 P6 B% Z2 o3 [
5.使用命令“cp -r can_libs/* /lib/”拷贝库文件到/lib 目录下,如下图所示。
7 A: W& g$ K+ e. \) T4 g, W' v: H
6 S' h" t' R$ q. o
- r+ P; K) o# ~- |# z % \( r0 r& F |7 v3 ~8 }
6.使用命令“cd /lib”进入到/lib 目录,使用“ln -s libsocketcan.so.2.2.1 libsocketcan.so”和“ln -s libsocketcan.so.2.2.1 libsocketcan.so.2”命令,生成链接文 件,如下图所示。
1 f6 n: Q# u, ]2 h. u ^
! c& m; A' }9 @+ ^, g% i
0 U/ F! S2 A3 a2 K M" d% v : K! j' ?3 c) R5 a% N3 x
3 测试工具的使用 本节介绍 can 的测试工具的使用。 如下图所示,使用 ifconfig 命令,可以看到 can0 节点没有出现。
, K3 X& i# T$ v
- W* ]" I) O! R' O! k C Q7 F! p
' ?/ B( m1 ~/ R: a( u2 `' F: p
2 u5 o. `8 z2 F1 q9 ]# G2.即使出现了 can0,也因为没有配置可能无法使用,使用关闭 can0 的命令“ifconfig can0 down”,如下图所示。
b) }1 `0 U% r& y
1 s6 ?" [1 K; T6 k2 g5 @; M9 Z3 Q; D8 B( ?; }4 _+ C- c' r
0 H9 ]0 f" C8 d1 S A* q2 Q/ s2 t) I
3.配置 can0 的参数,使用命令: canconfig can0 bitrate 50000 ctrlmode triple-sampling on 或者 canconfig can0 bitrate 250000 ctrlmode triple-sampling on bitrate 50000 表示传输速率为 50000,bitrate 250000 表示传输速率为 250000。can 测试的两个设备传输速率需要保持一致。作者这里配置为 bitrate 50000,如下图所示,然后 使用命令“ifconfig can0 up”启动 can0。 4 v, W7 ^( F7 T* ]7 m
0 x* i, Q3 L; A) |
' N6 S+ O: P2 z! o
8 g& S# B7 ?$ M
4.接着使用命令“ifconfig”命令,如下图所示,可以看到 can 设备已经启动。 " L3 f0 p3 d! N
" Y, @8 W) k: t$ f
+ C' G. W1 L1 s6 O, t
9 Z8 t2 B) ]2 i9 }: B! n# K* a; J& t
5.在两块开发板的串口控制台,分别使用接收数据命令和发送数据命令。 如下图所示,接收命令“candump can0”监听数据。 0 y. r* ]1 V8 W' @# { T
, G+ P9 [ ^0 S- B& E6 p
; [' c' B, u7 t; j, T! y( H' _
& \5 p* {7 D9 R$ B如下图所示,发送命令“cansend can0 -i 0x10 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88 ”发送数据。 4 f! A& E" j/ y: V: W
i8 ?& c/ f3 b) T7 o8 L3 ?2 q' H4 R1 o i* m1 r: z; H
R4 Z3 @) m A4 z; H如下图所示,发送端发送数据之后,接收端如下图所示,可以看到发送端的数据在接收端 已经收到,至此,can 测试已经完成。
8 p2 q( h! H5 p& N' r# P/ ]3 X
; h; O8 u* S; D% N( y- I
! p' W1 g9 i1 t& [) t9 l6 S5 w+ o+ c
- r: X/ g$ Y( S4 n
* V9 Q& W! Y0 ?. v# |/ c |