|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本文档主要介绍 IMX6 plus 开发板串口扩展过程。
. _. L; }1 J/ r9 u, }IMX6 一共支持 5 个 UART,底板上还可以再扩展出两个,分别是串口 4 和串口 5。# T" B. j1 ?: G; O5 O$ ]1 V/ t
硬件环境:iMX6 开发板:底板 v_2.3 。
+ K7 C3 e# p, M) z$ V6 o. k软件环境:Ubuntu14。
5 r( j( ~: m7 v3 Y& t修改管脚配置
- p% O( V: j! f$ P. l因为在底板上串口 4 和串口 5 对应的管脚被摄像头占用了,所以我要修改一下管脚配
7 q' @ o; ~& W% l# [置,首先我们进入到内核源码目录下,如下图所示:. h- R! m1 ]: b; [
3 B# s9 o: J% g
输入命令“vi arch/ARM/boot/dts/imx6qdl-sabrESD.dtsi”打开文件。在文件的第
: b. L0 F; @7 S1 e' Z( \6 J6 B1064 行左右添加如下代码:2 P J" z2 ?7 g5 p, T
pinctrl_uart4: uart4grp {; q+ R' ^9 B5 u L" F
fsl,pins = <9 K2 c9 ~1 t/ R1 l; \3 j$ h
MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1
* `, D! p4 D5 t4 A* P* nMX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b14 N2 W. |% j; `( A1 d Q- R
>; ]) Y3 K4 z( G! S6 H
};
, I3 [2 q z9 J' n& c- E/ S添加完成如下图所示:
. g' p# i( t7 H$ K7 W
. s$ p3 ` V: y+ v3 W8 d在文件的第 1077 行左右添加如下代码:; I9 N+ R' P+ J$ t
MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1 C; e1 a# u4 h9 l
MX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b1
! R8 }7 ?2 r9 m* E5 }添加完成如下图所示:
: W4 A# e) r8 ~4 q; N7 P' B. X c
8 l2 u2 C1 g# c3 U在文件的第 1279 行左右添加如下代码:; P5 H( L+ Q) D6 k; a c
&uart4 {
+ P; w! d/ S, H! Y; S5 t2 x5 A6 Ipinctrl-names = "default";: k' s* Z: w+ _3 U' ^9 }# {1 u
pinctrl-0 = <&pinctrl_uart4>;
& S! I; m' m$ P( W% m- n% s; f# bstatus = "okay";
: L9 I3 c9 U+ l- J" Q* T1 ?};" f9 h" K [5 D* W& l
添加完成如下图所示:2 L, E9 j3 Q; c. X
3 v+ `1 [4 Y; K( ?( h在文件 1005 左右注释掉摄像头部分管脚代码配置,如下图所示:5 l+ Z9 r# l+ e/ }' E% F
% d& z% e& I; Q保存,返回到源码路径下,输入命令“./build_qt_kernel.sh plus”编译内核源码,把$ _$ J I! W, I8 a1 ?
kernel_imx/arch/arm/boot 目 录 下 的 zImage , 把 kernel_imx/arch/arm/boot/dts ”
% W: |# E" j9 _, l4 e; Stopeet_10.1inch.dtb、topeet_7inch.dtb 和 topeet_9.7inch.dtb 烧写进开发板。
( _; i. ?2 D& T. j+ G在底板原理图上对应的为牛角座的第 16,18,19,20 管脚,如下图所示:
# h8 N# Z8 h6 h1 ?3 _. j
5 r* l7 {/ R$ u k第 19,20 脚为串口 5 的引脚,对应的设备节点的为 /dev/ttymxc4 。其中 19 脚为
0 x( f1 M8 F2 Z1 F7 V h: a5 |5 @% }TX,20 脚为 RX。& u1 s7 [/ {( @1 A- G$ X
把测试程序 uart_write_read 拷贝到开发板的根目录,同时把 19,20 管脚短接,输入命令
0 T ?/ V5 m. J5 B, T“ ./uart_write_read /dev/ttymxc4”,可以看到开发板已经收到数据。如下图所示:
! f* ^8 N9 T! C5 R
& ]5 ?5 J1 f5 n) r: f1 g第 16,18 脚为串口 4 的引脚,对应的设备节点的为 /dev/ttymxc3 。其中 16 脚为
8 O% b R+ k7 oTX,18 脚为 RX。把测试程序 uart_write_read 拷贝到开发板的根目录,同时把 19,20 管脚短
% l n% x2 G) J8 u1 N0 \接,输入命令“ ./uart_write_read /dev/ttymxc3”,可以看到开发板已经收到数据。如下
1 S: N7 E, \/ k+ Q图所示:+ f0 m0 P6 i$ o# |2 S% b
9 X$ D' c+ O4 g! A; _
/ g; a2 j0 D+ K: a4 l( j+ B( S' E
% e9 i; V0 r! X |
|