- 积分
- 296
贡献1418
飞刀565 FD
注册时间2015-12-21
在线时间50 小时

扫一扫,手机访问本帖 
|
全志A40i或者T3的CPU中无CAN控制器,而在实际使用过程中,会用到CAN,通常会采用SPI转CAN的方式。 % l' }0 F: [2 n- k6 V- Q& _
- L2 |6 [9 Z' x# p+ \7 s! K; J
在OKA40i-C底板上,有一路SPI,但由于电压与mcp2515的电压不匹配,所以会采用串口2的这组复用为SPI外接mcp2515模块。
& J3 L: `% h% I( z5 s 根据CPU手册第三章描述,可以将PI17-19复用为SPI1,采用PH08作为中断。
$ u9 W& ^& f2 d
8 b8 t* P% j4 e5 K. Y; \& l4 X5 YA40i/T3采用sys_config.fex或者dts 配置引脚复用功能,下面我们采用dts 进行配置。 2 H; ^/ U9 h- [' v; p |1 r
8 K' C) d& B0 \/ ], f01-打开SPI1 修改sys_config.fex,将uart2的配置去掉,打开SPI1的配置。 . Y" H( V' |. u; P
- i4 H5 u& y" z% G; S4 g * h/ N( m5 ]% i
同时将PH08注释掉: $ G' O. ~5 T6 l: q" \0 d
6 w3 Y) I [ S/ Q, v
同时修改设备树: ( J4 ?; X' g) f# F3 b. N! M* o
: U* t' s* |, i/ P0 @+ v 5 c4 i8 Q) q. H5 A' _
) W1 M2 S e2 {/ M: O' h; n+ G
02-修改defconfig 采用通过其他平台验证,且适配设备树的驱动mcp251x.c,
% O3 X: z& l% ~2 E7 F' } 修改defconfig 配置文件: & k1 e9 o$ Z9 h4 ?5 e. L+ g& j
Networking support ---> CAN bus subsystem support --->CAN Device Drivers --->Microchip MCP251x SPI CAN controllers选中。
, C3 T& x1 E/ C" f' d, H5 } 同时选中SPI配置,默认已支持,此处不再说明。
1 }: F& A* b# Z# E/ Q' z, Z% ^6 @2 ]0 F" z. \6 ]; j. L' W
03-配置iproute 文件系统: + C0 r" p, P9 } t# g2 j$ c$ N3 ~
buildroot-201611/configs/sun8iw11p1_hf_defconfig / V; u( C/ d1 t0 T C
需要配置上BR2_PACKAGE_IPROUTE2=y. 0 d! M/ ^$ K4 q3 P9 N1 W
重新编译,并打包镜像,烧录。
2 _0 c: M9 `7 i7 N, S' Q" O5 }" x! B. Y7 |" x& r
04-测试can0节点 启动之后,ifconfig 查看出现can0节点。使用以下命令进行测试:
) {7 x/ a9 i" j9 yifconfig can0 down
; [6 K$ V/ U; t l# Z+ Z) p) b: {" a ip link set can0 up type can bitrate 125000 triple-sampling on . m% f1 C9 ?2 O5 X
ifconfig can0 up * ?& w# c% l* n* I
cansend can0 123#12345678 ( Y% ^0 B3 J- H! i
candump can0 3 l0 N2 V+ W' J6 q! R
如果有必要请联系飞凌技术服务人员,提供patch文件。
! L J2 g- K1 s6 _6 C) k, d% `6 v* H$ _2 o% R7 [; E
注意事项 在设备树中,用作中断时,因A40i/T3只能使用PH组的引脚复用为中断,在设备树中设置中断时的如下:
) e/ C5 i7 `; q& {interrupt-parent = <&pio>;
: y& V) c/ \$ C- ?: D: W1 { interrupts = <8 0>;
' ~ F# Y+ g! V, b% P另外,需要注意驱动中的中断触发方式。
- o$ N6 v; O5 A4 i f2 n _( J% I9 o
# W) L+ O* x; r( O1 ^) N* D相关产品:
9 x' D& \* R: u4 I
( n7 t" ]- x$ k; x5 g- ^- i- n7 z) `: A: H2 R: m3 t8 K
|
|