FETT507-C核心板CPU為四核Cortex-A53,1.5GHz主頻;GPU為G31 MP2;核心板集成2GB DDR3 RAM,8GB eMMC ROM,可流暢運行Android、Ubuntu、Linux操作系統。性能高,相比CPU同為全志的FETA40i-C核心板,性能提升超過50%。
飛凌嵌入式FETT507-C核心板自推出以來,其新用戶與日俱增,但是對于剛剛接觸FETT507-C核心板的朋友來說,不熟悉內核內容,可能開發起來比較費時費力。如果想開發自己的底板,就需要修改引腳功能配置,以適配自己底板的接口功能。
今天,小編就先來修改下UART2引腳功能,來帶大家一同了解引腳修改全過程。
引腳功能復用思路:
1、確認新的功能需要哪些引腳,并確認這些引腳原來用做什么功能
2、去掉原來功能對這些引腳的使用(關掉功能或更換引腳)
3、添加新的功能并使用這些引腳
下面將以T507添加兩線串口UART2為例,我們來實際操作一遍。
01確認UART2需要的引腳打開T507硬件資料,找到FETT507-C核心板引腳功能復用表
路徑為:硬件資料\用戶手冊\FETT507-C核心板引腳功能復用表.xlsx
在表格中搜索UART2,可以找到三組可用引腳,分別在TWI4、I2S3和網口上使用
引腳名稱 |
FETT507-C默認功能 |
可復用功能 |
---|---|---|
PG15 |
PG-TWI4-SCK |
UART2_TX |
PG16 |
PG-TWI4-SDA |
UART2_RX |
PH5 |
H_I2S3_MCLK |
UART2_TX |
PH6 |
H_I2S3_BCLK |
UART2_RX |
PI5 |
RGMII_RXCTL/RMII_CRS_DV |
UART2_TX |
PI6 |
PHYRSTB |
UART2_RX |
打開源碼,先了解一下T507的設備樹文件:
OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi
功能配置設備樹2
OKT507-linux-sdk/kernel/linux- 4.9/arch/arm64/boot/dts/sunxi/sun50iw9p1.dtsi
功能配置設備樹1
OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/sun50iw9p1-clk.dtsi
時鐘設備樹
OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/sun50iw9p1-pinctrl.dtsi
引腳復用設備樹
?打開sun50iw9p1-pinctrl.dtsi,搜索TWI4可找到默認引腳配置。可以看到我們要使用的PG15、PG16已經被使用
找到TWI4功能配置,在sun50iw9p1.dtsi的807行,可以看到調用的引腳配置twi4_pins_a和twi4_pins_b
?
在OKT507-C-Common.dtsi的352行,此處可看到twi4掛載的是觸摸芯片,此處我們關掉TWI4,修改TWI4狀態為status= "disabled";
到此,我們關掉了TWI4對引腳PG15、PG16的使用,同時TWI4也不能使用,觸摸芯片也不能識別。 03添加串口并使用PG15、PG16引腳先打開sun50iw9p1-pinctrl.dtsi,搜索UART2,找到UART2的默認引腳,默認是PH5、PH6、PH7、PH8
我們進行修改,將引腳和配置改成PG15、PG16兩個引腳,修改后如圖
打開sun50iw9p1.dtsi,找到UART2的功能配置。
可以看到uart2_type是設置的4,即四線串口,改為2,作為二線串口。
然后我們打開UART2,修改UART2狀態為status= "okay";
到此我們配置了UART2的引腳,并打開了UART2的功能。
當然,開發板默認已經打開了UART0、UART1和UART5,所以驅動默認已經配置。只需要對源碼進行編譯打包就可以得到添加了UART2的鏡像。
文章到這里就告一段了,各位看官是否對FETT507-C核心板引腳功能修改有一個初步的了解了呢,希望借此可以為您的開發過程提供一些助力。
雖然不同平臺的源碼內容不同,但是修改思路是一樣的:需要的引腳是什么?引腳原來的功能是什么?要做的功能是什么?先了解目的,再對源碼結構有一個簡單的了解。這樣自己就能輕輕松松獨立修改。
-
cpu
+關注
關注
68文章
10824瀏覽量
211138 -
引腳
+關注
關注
16文章
1181瀏覽量
50274
發布評論請先 登錄
相關推薦
評論