|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、硬件操作平台介绍. O) {- \( i6 z3 O
; W- a& [6 {1 H# Z+ [
FETT507-C核心板集成全志T507四核车规级处理器设计开发,Cortex-A53架构,主频1.5GHz,集成G31 GPU,内存2GB DDR3L,存储8GB eMMC。整板工业级运行温宽,支持绝大部分当前流行的视频及图片格式解码,具有稳定可靠的工业级产品性能、低功耗以及丰富的用户接口等优势,搭载Linux、Android、Ubuntu*操作系统,适用于车载电子、电力、医疗、工业控制、物联网、智能终端等领域。9 p/ G' F6 N1 C1 J- Q9 Q$ i
5 K: q7 Y3 b9 T1 H$ O; j' O* I* m. f+ J* f# r' _1 I
! F3 j% c: T8 R3 E$ T + [* [0 a) e7 H/ b
: C! s3 f$ v: {, a
& X: H1 g9 N" v3 N* U2 \$ N& v& b% Q( x& E# G1 o
6 T$ ]: t# ~4 B1 a7 P
. d1 y7 k4 J w# c% M' O/ t7 N本文不再对硬件参数进行叙述,在参考本文进行软件开发前请阅读飞凌嵌入式提供的全志T507用户手册 ,路径为“用户资料\手册\硬件手册”,以了解产品命名规则和您所使用产品的硬件配置信息,这样有助于您对本产品的使用。
3 L$ u( F! W# {( T. z7 c1 c1 v; S% N/ P0 B! @1 m0 L9 p
本文介绍了全志T507屏幕切换控制的两种方式。8 g! ?) h2 s" K0 l5 C5 M$ U
5 j: V+ G3 t7 V( o; ~+ _7 ?
7 E/ e* Z. ~# Z4 c8 K/ n- {' X/ b O% x, @3 A& z) m: o- ]
二、屏幕切换: B8 I+ g3 J n$ v! e7 }
: d2 @' ?, N7 Y
OKT507-C开发板支持MIPI DSI、HDMI、TV等多种屏幕接口,同时可以进行两个屏幕的同显和异显,可灵活指定HDMI接口支持4K输出。目前屏幕切换控制方式有两种:内核设备树指定;uboot菜单动态控制。
7 r1 w# v9 K; j: R7 K7 d! G) s" D; y6 w, Q' |: k
目前OKT507-C支持HDMI、LVDS 1280x800、LCD7 1024x600、LCD7 800x480电容屏、LCD7 800x480电阻屏。6 f7 Q/ {* C# ?
+ I- e6 M. h6 ]! f# q1、 内核设备树指定
2 P9 W" C* A0 N$ g: g* y2 d& \ L: G+ a, U0 N. ]8 l- H7 i% B$ B3 D! v7 ]
该方式不需要连接串口终端,系统镜像默认为所期望的配置选择,适合量产。但需要手工修改设备树,重新生成一次系统镜像。该方式优先级高于uboot屏幕选单。
3 {/ A5 R* X7 F! P; ~: j9 \6 X) n
设备树路径为:linux-4.9/arch/ARM64/boot/dts/sunxi/OKT507-C-Common.dtsi$ _* s0 D, J, f7 a* W. Z: w& v4 v
- K8 t+ {% b7 J+ Z$ A% I$ K; J4 H内核源码中,打开设备dts文件,找到如下节点:3 |; j& D5 c, ~' d, p
9 g2 f8 j: O1 J! g$ l. V6 x0 D2 J: J
+ q* k8 T7 I, I( B( M9 J- h- w1 h" ?; q* g
! W0 e5 H. g& N# v( k
: U' N* a# p. @; C/ I4 Y9 e W- \/ ^' W* {' v! \
. E5 I8 s6 P4 t
该status节点默认disabled状态,需要改为okay使能节点。
( v7 _$ f* B. |0 S- _& g0 w9 ^+ ]8 r/ | Y5 t0 q; y" d
用户根据需求更改设置参数,保存后,需要重新编译生成镜像。
) R4 ?0 E/ p! j& K3 ?/ P0 W; V; J4 v2 K. _- }# n7 P" F- n0 F
参数说明:& @# H4 W* d* l3 [$ [
9 l- G0 \# d! T5 p+ J, \. q! ^; |2 @disp_lcd_type:描述lcd接口类型;
, v* W. v# F) q& q# q
' }7 M9 s. {) b, d1 wdisp_lcd_type
0 Q- r2 H& T5 _
) P+ ]- E1 M( O, _0 }6 _ | lcd接口类型3 i1 w' j6 A7 j2 K' A& ^
4 h6 i! S/ l, K
| lcd7_800_480_cap
2 i& O( }' m4 x8 f5 X' c$ H! e5 @ _$ m5 P5 X+ U4 [/ A+ |; h
| 7寸800x480电容屏2 a+ l/ O8 f$ W8 o
% R% v) b a \% p1 L
| lcd7_800_480_res
8 L1 Q8 G1 m3 k+ H$ `4 L r8 x1 I' Z9 L/ U& E' q" v7 v
| 7寸800x480电阻屏
2 l0 \" z1 ~9 b- L' y1 B- M# Q' F$ H* g" S
| rgb24* ]9 ~1 q- W% \ u' J
8 D0 @$ O% n. D3 w$ Y+ h" X+ n
| 7寸1024x600电容屏% e4 C: W- E' A
5 _3 r/ W4 D7 t* q0 ~' m | | lvds
! y B# v/ j3 Y4 u" x8 V. c) S" B$ W/ c6 g( U- |
| 10.1寸1280x800电容屏/ \6 u9 o! Q0 c$ h# D" D
Q5 m/ p# _. ?$ q
|
! g5 ^0 C( x2 n( t1 glcd_resolution:描述lcd屏分辨率;( ]+ t: y; n8 @& m* \+ O6 F
! I$ c" P0 r6 ?. i8 P9 E% H6 Ktv_resolution: 描述tv屏分辨率;2 t% Y- u3 z: K9 H
: e" g q% D. l( ydisp_dvi_hdmi_type:描述hdmi接口还是dvi接口;, p" B: A& ~/ ~ ~( r+ q! E
# w F! ^/ Q/ l2 q" x& Mhdmi_resolution: 描述hdmi或dvi接口屏分辨率;8 A6 ~. c+ d/ a; m0 F" v! H* S
) O7 v$ z9 G" a5 V& A
uboot_disp_mode:描述显示类型0代表单显LCD,1代表单显hdmi,3代表异显,5代表同显9 b% {1 z/ Y8 b/ P! x! P
, q6 |9 f; i8 b8 j! S) `" O( |举例:+ R- r' \& Z& X
( I* D/ B/ |* A, x5 k
将T507配置成同显模式,主屏为电容屏1024x600,副屏为dvi接口屏1920x1080P60。 ^5 p9 h! k7 H- k; C$ h. I
3 d& W2 [) F( ?7 f5 P9 x) i" }6 r8 y b+ N% t
7 B2 \( J' u8 s/ O
3 U. H; A* R d) g( @
* `" O3 C, S4 C
2 k, u& S" R! h+ w+ d# |# g. z- ]* L; y5 e- h& G
注意:
! g. {0 r- K. ]: z! Q# V& ]
1 ?6 e9 o- t* r, t9 _1. lcd_resolution和tv_resolution只能存在一个,默认使用lcd_resolution。 _! e- d8 b0 I! i6 r y9 Z
. o* o3 q9 |+ f& @1 s, Q, Z f2.对于MIPI屏幕种类多,可能现有时序和控制字不能满足要求,需要自行更改dsi节点下的lcd0。但任何和显示相关的节点status属性,均按照默认处理,程序会自动控制。% O9 e4 E, x U3 T9 ]
# F+ n+ ?6 E) S3 }
2、uboot菜单动态控制: j1 m& A9 Y6 W K6 R
% e( v$ r0 |# W7 X
该方式在T507现有已支持屏幕的基础上不需要重新编译和烧写,即可切换屏幕。2 w8 G0 @# X j
* {. G0 ]! i8 d/ L; ^3 o5 D, L1、屏幕控制一级菜单
: k$ J, \" I! q& T
& m$ w; o( i* C0 \* ~% w3 ?在uboot自启动过程中串口终端按下空格键,即可弹出控制选项:
* v, ?$ p& u! k* ^
) `5 n+ r" w0 C- ]. l" h! j; G
* U, C1 b" G: ~6 a
![]()
- R# ?* N2 |* v0 I% J
7 I- B9 r% f. m1 e1 @7 e9 U! Q" ]
- t! U) a, Q: Q. _( y
; n3 ^+ ]8 Q* N4 G# k& \输入”0”:0 b& z5 a. ^; H: t/ r8 J! T
1 Y9 Y& N! e7 ]3 B* a4 J. V输入”1”:开发板重启;0 e3 U; b- s, e+ P1 i5 g
8 N: H# J. _6 L$ ~) N1 S3 A# ^, j输入”2”:进入屏幕控制子菜单。
( r& g6 H9 o; @/ O- g
1 g2 p+ F0 y4 { H' [) l7 M$ y2、屏幕控制二级菜单$ d, D6 i' ?# W
0 j6 i4 I# O- a6 d3 `
屏幕控制子菜单,如下图:
1 x z0 I& ~! m4 {* n3 V& B8 v$ E, K2 n4 c c: o
5 Y* P; l& a% r" d+ F3 y8 ? l6 y. {; u8 C
![]()
1 q" Z3 O" c8 o* n" ~7 d: `( z
! O$ s/ V( Y! I0 j9 V1 e0 p/ p1 s9 o) i) s- N% X6 x, z4 h% S
4 d) L( O' G) D- U* B+ f
输入”0”:退出,返回上级菜单;0 E6 ?( I- m: J+ h' n
. _ e: G# V) T; B, b
输入”1”:进入LCD屏显示参数配置;
" R5 N2 A3 c' ?
$ h1 z+ I% W1 N- `; k+ q输入”2”:进入HDMI屏显示参数配置;
7 A* [( w8 V1 h) O7 [- [* x+ N' B- @1 h4 Q- L: Q" n- [; H
输入”3”:进入TV显示参数配置;" m7 x7 C/ V" Y9 C
" ?9 ?3 D2 [: F4 d) S2 @! T- F输入”4”:进入显示模式配置子菜单
0 s' F/ I5 X9 k, v. Z1 O8 D" P# j: @6 X* ?6 M
3、屏幕控制三级菜单5 R, j# ~1 R3 N: W: b
; u+ r4 r n' @显示模式配置子菜单:* o+ k2 A" v, c+ r) X" R2 @
: J9 D+ j7 k$ o: z2 ]: X7 {' R
屏幕参数选择前,首先由屏幕控制二级菜单终端输入”2”,进入显示模式选择菜单,如下图:2 B9 v9 @9 `9 P2 g, X
/ g2 R# @( Y r: J' B
5 a0 k0 |( j9 X5 K& z1 s* F$ s% ~
$ U# P4 v3 c: Q i: T' h7 P
D8 ~) M: A' c2 n' f K
" S1 R& W( l- h6 w- Z M" b, c S3 I/ B" n5 z( x% y
终端输入数字1到7对应显示模式类型:
' o$ @( C& E4 R( w$ e9 ^9 j M* R6 m. F4 f2 }' K
输入”0”代表单显,返回上级菜单;
7 Q1 S8 r' l4 g
7 `8 ?0 y( p4 t输入”1”代表单显,LCD屏显示;3 g6 G7 _. \) g1 e" p% ?3 ]
/ W7 W, [+ O3 f7 z
输入”2”代表单显,HDMI屏显示;
% C7 O9 q4 R* q, i% v$ F o1 G5 p* M6 ] M
输入”3”代表单显,TVOUT屏显示;
! z1 r" {; `+ L* q( r2 V) Z: ^5 E( q; |/ w o2 P/ x
输入”4”代表异显,主屏为LCD/TVOUT,副屏为HDMI;
8 T4 B. _' Z9 H& p; d. `4 }& x
输入”5”代表同显,主屏为LCD/TVOUT,副屏为HDMI;
- U" }$ S7 i' s# k P- z: b J- {7 K* \! [5 A8 x
输入”6”代表异显,主屏为LCD,副屏为TVOUT;
7 n5 w" ` K4 ~9 m4 |) C8 k2 `& S; I' b- K' K( K1 ]2 c
输入”7”代表同显,主屏为LCD,副屏为TVOUT。
/ r7 r8 s3 d. v$ l3 [5 n% W7 F1 c: [) _1 M' d1 |
LCD屏显示参数配置:
9 c1 R" H! Z9 |( l! ?7 V8 g* R6 a8 g: X
由屏幕控制二级菜单终端输入”1”,可进入LCD屏显示参数菜单进行选择LCD屏分辨率:5 s/ T+ I/ U% E- I N R
6 ?' R1 G2 R( f6 {' i: {8 w( e2 A% t) }
8 J8 y, W0 D) r8 O![]()
/ H; V; Z; A/ ]# C+ x3 n( t4 n5 W" o* F& \3 {
7 ~8 M& ]. c/ }7 H
2 b# }4 `3 [, I% N- U7 q3 k; LHDMI或者DVI分辨率参数配置:& u8 `; I/ D# d/ N4 C h4 S
% E' [: ]' X! q% y由屏幕控制二级菜单终端输入”2”,可进HDMI或者DVI显示参数菜单进行分辨率选择:
9 E$ m5 I6 X) U7 ?) j& k+ i, b7 y& X. G
1 C* {6 Q# S c* t( e4 Y
' A, F+ i* Z& d, ]
& z w k- |: f 5 T9 t- e- a+ T1 w/ x
/ v( |, X5 V' ]. V# F8 U' U0 m
) f+ i6 W$ r4 o+ G
X6 @7 D8 h6 O( M. I( Z输入”0”代表单显,返回上级菜单;9 v2 c" Z- ]* v6 _$ n* Q! h
$ k) i; T, h: r* w: `0 l
输入”1”代表屏幕分辨率是1280x720帧数50;
7 l& H# S+ E" Q
$ O |: O- {+ ]9 Q D! i" S输入”2”代表屏幕分辨率是1280x720帧数60;, b7 D4 A) k. t* T
* Y3 w H. h9 b输入”3”代表屏幕分辨率是1920x1080帧数50;
; ~) S; D* O& Z3 W! y; N, n3 H L& X! ^3 E
输入”4”代表屏幕分辨率是1920x1080帧数60;5 `! ^+ ^7 h4 W# ^
% j) K2 P. i. l输入”5”代表屏幕分辨率是3840x2160帧数50;
3 B6 L1 F7 }1 n1 B+ P: _3 g! V
6 ^. Y; m2 Z7 T; h) f- Q- w2 _输入”6”代表屏幕分辨率是3840x2160帧数60;3 q) X, ^" u+ X, i
: K' [) p. ~: g8 r" c! L. o% {9 m输入”7”代表屏幕分辨率4096x2160帧数50;+ h, U" ?, E2 }0 o
% @) [2 b# ^* N8 {
输入”8”代表屏幕分辨率4096x2160帧数60;4 c& \# T2 @; f7 X
/ N- I& m6 Z6 z输入”d”代表使用DVI接口;
- B2 [' w$ v! M5 \- E: A1 _1 ?" W
' h: r2 | ~! U# p4 n' t输入”h”代表使用HDMI接口。$ ^/ r3 a5 E/ d# l% e
/ F8 s- w7 T F+ y1 v2 [. ?0 g. z- S6 T; J
TV分辨率参数配置:
: a) ~; l+ k, ~/ S! @7 c: g- ?; m7 @/ ?# q3 {) |7 H
由屏幕控制二级菜单终端输入”3”,可进TV显示参数菜单进行分辨率选择,当前只支持720x576分辨率:5 F Z' J# b/ I0 O5 }! M
3 C* O; |0 N8 l w7 R
; k7 D9 ^/ j. P1 O5 {5 m J8 W4 \# T4 Y
![]()
2 t' S# P( O" A2 A2 a8 b2 W! U
( h( d) x4 F( c2 U3 R4 |! h$ ^, z( _. a
+ @5 [/ P- k. X, Y) k3 s" O
Q, z$ |" [/ Q, ]
% H; z% r0 [+ T5 U注意:3 }. a" X& V) u/ P( g _
$ Z3 n7 D! f" Z$ D. ]2 d
1. 选择完成后,按复位键重新启动,重新启动后生效;
% A" }' k- r' I s
) _3 f0 O; O. b# k6 ^( v2. 当前版本将TVOUT配置成主屏时,请将logo文件bootlogo.bmp分辨率修改成720x576,更改logo方法请参考T507”logo更换方式”,不在赘述。, _2 K# x2 H* y1 i6 P& t! Y
; Q; M( ]+ p! A. u* |% Q0 @7 U6 d. ^1 Z# K3 j& w0 [
+ F' X$ O3 y' W. e; f j5 U4 ?( j- ~1 H3 @
, m$ e( b0 I; F9 a9 B4 ^# j x l4 s f0 ?* @; t
|
|