嵌入式爱好者

查看: 9256|回复: 2

[帮助] 飞凌嵌入式分享丨全志 A40i / T3对CAN的支持

[复制链接]

46

主题

53

帖子

295

积分

扫一扫,手机访问本帖
发表于 2021-12-10 17:13:44 | 显示全部楼层 |阅读模式
全志A40i或者T3CPU中无CAN控制器,而在实际使用过程中,会用到CAN,通常会采用SPI转CAN的方式。
* g0 S! ?, e- K# B, `9 d: |' @3 z9 L$ I( p# E3 ^
        在OKA40i-C底板上,有一路SPI,但由于电压与mcp2515的电压不匹配,所以会采用串口2的这组复用为SPI外接mcp2515模块。 / X- _+ e8 E  \  r$ [
        根据CPU手册第三章描述,可以将PI17-19复用为SPI1,采用PH08作为中断。 / r3 u# [9 b: A  X
; s- n! x# F& \1 {
A40i/T3采用sys_config.fex或者dts 配置引脚复用功能,下面我们采用dts 进行配置。 1 @" @8 }" n. z. Q0 g

+ b. h- N) E1 x, j- H01-打开SPI1 修改sys_config.fex,将uart2的配置去掉,打开SPI1的配置。 . p) l% C0 v  N4 s
" A; u( @. C& v6 K
# T4 S" |: l" J% T3 [
        同时将PH08注释掉: ; |. y. ?3 D5 P
) P" j: `: {1 z  n# y
        同时修改设备树:
8 j! ]9 w& O' j& V+ Q! e6 y
. D6 Z' i9 w1 ~! Y4 \
# V- [- b1 C& R7 A% q) i
- U4 c! W. R* f& v$ u- T* z02-修改defconfig 采用通过其他平台验证,且适配设备树的驱动mcp251x.c, : l4 |( j& |  w' `- G; q
        修改defconfig 配置文件: % B, I( p5 y6 I' b" K
Networking support ---> CAN bus subsystem support --->CAN Device Drivers --->Microchip MCP251x SPI CAN controllers选中。 & y- ?! K- g! X2 o. f, w
        同时选中SPI配置,默认已支持,此处不再说明。 ! D  n: y7 H, a6 @

+ i6 z" s9 U, C% a- `$ `03-配置iproute 文件系统:
+ g3 k% e3 d, Wbuildroot-201611/configs/sun8iw11p1_hf_defconfig
8 V. C, {, r# C- k+ F' w需要配置上BR2_PACKAGE_IPROUTE2=y. 3 X& j. b. C: e  R
重新编译,并打包镜像,烧录。
/ ^: B  i0 l: x7 a6 g" g9 N4 F+ X3 f8 U" B$ t. I% {- j: N$ z
04-测试can0节点         启动之后,ifconfig 查看出现can0节点。使用以下命令进行测试:
" ~" |3 j4 g1 c6 C; P1 ]% @8 \ifconfig can0 down
1 @" @8 G( r  o& F$ y( N. p        ip link set can0 up type can bitrate 125000 triple-sampling on
. `3 z# U0 L2 k/ u( ]- B        ifconfig can0 up 1 c, A+ e* W& j9 g
        cansend can0 123#12345678
2 v. _  }2 w5 l" e& K        candump can0 $ t7 a$ d0 Q" l% d; f
如果有必要请联系飞凌技术服务人员,提供patch文件。 . N) ^0 s& B' e: E+ ^( ~/ I$ b* Z
) ]$ w& V" n2 W  {9 C
        注意事项         在设备树中,用作中断时,因A40i/T3只能使用PH组的引脚复用为中断,在设备树中设置中断时的如下: ( d4 F9 Z# B8 a4 d! n' P( m; v4 r) `
interrupt-parent = <&pio>; ) X" x) o! X) x3 J/ q6 P- e
        interrupts = <8 0>;
9 s: w3 b+ B6 O% }- |3 c6 C另外,需要注意驱动中的中断触发方式。
# [2 a6 F$ q# {7 N+ M
0 ?, f' h- X  m( b: F7 `
, @1 ?- m! b7 v1 S% Q" `/ F' N* r相关产品:                                                   
7 U4 b3 R; I* \. o- A# u7 H0 O4 W) |+ @9 _

- l0 o% ^) d# h8 u; s
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-11-15 10:20

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表