|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本文档主要介绍 IMX6 plus 开发板串口扩展过程。2 @" @) _( E: [. |' D; C( z1 R" N
IMX6 一共支持 5 个 UART,底板上还可以再扩展出两个,分别是串口 4 和串口 5。
$ v' ]3 G- Q5 K0 j( R硬件环境:iMX6 开发板:底板 v_2.3 。
% Z4 s& S! u, {8 x9 b7 d" u. Y软件环境:Ubuntu14。
2 t8 v8 p2 C( W* _. v1 V修改管脚配置: R5 l0 `9 e. {$ b- r
因为在底板上串口 4 和串口 5 对应的管脚被摄像头占用了,所以我要修改一下管脚配0 o: \3 @, o( S& j+ }9 `) e5 u" m
置,首先我们进入到内核源码目录下,如下图所示:
- w- b% O7 ?$ M3 d, i
- j3 m0 v* w4 Q
输入命令“vi arch/ARM/boot/dts/imx6qdl-sabrESD.dtsi”打开文件。在文件的第; \7 n2 s( G+ N P4 r% K8 ~0 `/ w
1064 行左右添加如下代码:
2 J i/ ~5 M1 C+ P) i+ z9 Y2 N& ^pinctrl_uart4: uart4grp {0 ~' r+ _4 w4 W# L) B- L
fsl,pins = <' R- o( Z9 L& P- k9 f! B' z
MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1% `! G0 y6 j7 n$ L0 G
MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1! Y: h" a- V) s t$ k
>;: m/ {8 Z: l4 p0 X, C# @6 s
};
) ]4 z6 P5 a. G6 \& U- W$ d- g添加完成如下图所示:
* }* ]5 @) z1 q& E* _; v
) M1 z6 j7 h( u8 W' x: `
在文件的第 1077 行左右添加如下代码:: X6 V* w( P! H* X, ^! m
MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1
8 @; e6 t2 o& m# i- iMX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b11 {- O: A. q2 N' z8 Z/ I2 m0 C! ?
添加完成如下图所示:7 j' O) ^" Z A3 I+ k
) y* Y6 g0 v, M' S) r0 h
在文件的第 1279 行左右添加如下代码:
1 \! H" C# C n: F0 M&uart4 {
# L" A& [5 [* }* Gpinctrl-names = "default";
4 e! x& t. y( e" M! ipinctrl-0 = <&pinctrl_uart4>;
; D0 z1 [, x# G Estatus = "okay";
5 p$ U( }: X! t3 m, U) h4 z( D};! l2 P* n0 L: g
添加完成如下图所示:6 F0 c! x1 m6 @, g. k
& s5 w% z, ?+ u" e2 P* l. s在文件 1005 左右注释掉摄像头部分管脚代码配置,如下图所示:* f. K8 n4 Q- y, _ ^; j
! \: b/ [2 K0 [+ E+ z4 E- N
保存,返回到源码路径下,输入命令“./build_qt_kernel.sh plus”编译内核源码,把
" ~8 o) v" \& f9 [( b, \" Tkernel_imx/arch/arm/boot 目 录 下 的 zImage , 把 kernel_imx/arch/arm/boot/dts ”
6 A, m, P; |& @8 X; _3 S: rtopeet_10.1inch.dtb、topeet_7inch.dtb 和 topeet_9.7inch.dtb 烧写进开发板。
& q L- H* d$ d1 p7 s0 E! }在底板原理图上对应的为牛角座的第 16,18,19,20 管脚,如下图所示:
3 w: L' _) E; k& E1 w! V+ N3 J: |8 i
( K/ G l2 ]8 |% o7 s第 19,20 脚为串口 5 的引脚,对应的设备节点的为 /dev/ttymxc4 。其中 19 脚为
/ o$ b- u: W& K* J/ \TX,20 脚为 RX。
- A ?$ |* v+ v把测试程序 uart_write_read 拷贝到开发板的根目录,同时把 19,20 管脚短接,输入命令
& Q* s5 a ~% [; o" W' f% a' z/ B“ ./uart_write_read /dev/ttymxc4”,可以看到开发板已经收到数据。如下图所示:
2 K$ C1 h p. e/ _( A ^
2 O0 x. S) k- X& `* ?
第 16,18 脚为串口 4 的引脚,对应的设备节点的为 /dev/ttymxc3 。其中 16 脚为, G4 ? P% R2 h& m8 y2 K1 \
TX,18 脚为 RX。把测试程序 uart_write_read 拷贝到开发板的根目录,同时把 19,20 管脚短
# r. t9 `% y6 A, M接,输入命令“ ./uart_write_read /dev/ttymxc3”,可以看到开发板已经收到数据。如下
- O. _9 u- L7 }9 r7 T; t图所示:+ V) m" h+ S3 X0 Z
\, V" ^8 W' C) M* H' C& \
* S: q+ O9 D, b- p
, l# ?6 R0 Y( a: ^3 e$ j
|
|