一 主板接口
二 主板尺寸
三 主板功能
四 接口詳細說明
五 鏡像文件燒寫
01 安裝驅(qū)動并連接硬件
解壓開發(fā)工具目錄下的 DriverAssitant_USB 驅(qū)動程序.7z,右擊以管理員權(quán)限運行 DriverInstall.exe,安裝驅(qū)動程序。
注意 win10 或 win11 系統(tǒng)需要關(guān)閉操作系統(tǒng)的驅(qū)動簽名驗證功能才能正常安裝驅(qū)動,win11 不能永久關(guān)閉這個功能,建議安裝一個 win7 的虛擬機,在虛擬機內(nèi)進行驅(qū)動安裝和固件燒寫。
將主板與 PC 機用 TYPE-C 線(注意有些數(shù)據(jù)線僅支持充電,無法傳輸數(shù)據(jù))連接好,如果出現(xiàn)無法識別的情況可以通過重新連接、更換 PC 機 USB 接口、更換 USB 線、更換 PC 機等方式重試。
解壓開發(fā)工具目錄下的 RKDevTool.7z,右擊以管理員權(quán)限運行 RKDevTool.exe
02 進入燒寫模式
主板處于 Loader 或 Maskrom 模式時可以對系統(tǒng)進行格式化和燒寫系統(tǒng)鏡像文件操作。
進入 Loader 模式
方法一
將主板斷電,首先用 TYPE-C 線將主板與 PC 機連接好,按下主板上的燒寫鍵, 并保持按下狀態(tài),然后再上電開機,主板會進入 Loader 操作模式,注意這種方式適用于主 板上的 BootLoader 可正常工作的情況。
方法二
將主板接通電源,進入系統(tǒng),用 TYPE-C 線將主板與 PC 機連接好如下圖,RKDevTool 軟件會 識別到一個 ADB 設(shè)備,單擊切換按鈕,主板會重啟進入 Loader 模式
方法三
在調(diào)試串口控制臺或其他控制終端輸入 reboot loader,主板會重啟進入 Loader 模式
03 進入 Maskrom 模式 (無法進入 Loader 模式時使用)
一般僅在 uboot 損壞,無法進入 Loader 模式時使用。首先準備好一個金屬鑷子,將主板斷電 用鑷子短接右圖中的核心板上兩個沉金通孔 然后再上電開機,進入 Masktom 模式后取消短接,松開鑷子 繼續(xù)進行檫除 flash、升級固件等操作
?
04 系統(tǒng)燒寫流程
首先將主板進入 Loader 或 Maskrom 模式,打開 RKDevTool 軟件,點擊固件按鈕選擇需要燒寫的鏡像文件,然后點擊升級按鈕,右側(cè)窗口會顯示燒寫進度,燒寫完成后,主板會自動重啟開機。
六 安卓應(yīng)用開發(fā)
1、 GPIO 編程參考
通過 sysfs 方式控制 GPIO,GPIO 的操作接口包括 direction 和 value 等,direction 控制 GPIO 輸入和輸入模式,而 value 可控制 GPIO 輸出或獲得 GPIO 輸入。
例如控制調(diào)試燈 GPIO 操作如下(串口終端命令行方式):
調(diào)試燈 GPIO 設(shè)置為輸出
echo out > /sys/class/gpio/gpio23/direction調(diào)試燈 GPIO 輸出高電平
echo 1 > /sys/class/gpio/gpio23/value調(diào)試燈 GPIO 輸出高低平
echo 0 > /sys/class/gpio/gpio23/value調(diào)試燈 GPIO 設(shè)置為輸入
echo in > /sys/class/gpio/gpio23/direction讀取調(diào)試燈 GPIO 輸出輸入電平
cat /sys/class/gpio/gpio23/value當(dāng) GPIO 處于輸出和輸入模式時都可以讀取,當(dāng)設(shè)置為輸入模式時讀取的是 GPIO 實際電平,當(dāng)設(shè)置為輸出模式時讀取的是設(shè)置的值(如果設(shè)置為高電平輸出,外部將引腳電平拉低后,讀取的值依然是 1)。
應(yīng)用程序控制請參考源碼下的 demo 程序源碼
2、 串口 UART 編程參考
RS232 串口、RS485、TTL 串口接口對應(yīng)的設(shè)備名詳見上文接口描述。
安卓系統(tǒng)串口編程請參考 demo 程序源碼或以下鏈接:
https://github.com/Acccord/AndroidSerialPort
https://github.com/Geek8ug/Android-SerialPort
3、 WatchDog 看門狗編程參考
進入內(nèi)核后默認會啟動看門狗,內(nèi)核崩潰等情況出現(xiàn),會在 15 秒內(nèi)自動復(fù)位主板。上層應(yīng)用程序打開看門狗后,內(nèi)核將看門狗控制權(quán)交由上層應(yīng)用程序控制,上層應(yīng)用程序的喂狗間隔建議不大于 3 秒。
看門狗的使用流程為打開看門狗循環(huán)喂狗停止喂狗關(guān)閉看門狗
喂狗之前必須先打開看門狗,關(guān)閉看門狗之前需停止喂狗操作。
打開看門狗后如果 15 秒內(nèi)沒有喂狗或關(guān)閉看門狗,系統(tǒng)會自動復(fù)位。
命令行測試:
打開看門狗:
echo 1 >/sys/class/gzpeite/user/watch_dog喂狗:
echo 2 >/sys/class/gzpeite/user/watch_dog關(guān)閉看門狗:
echo 0 >/sys/class/gzpeite/user/watch_dog
應(yīng)用程序控制請參考源碼下的 demo 程序源碼
4、 獲取 root 權(quán)限
系統(tǒng)默認已開啟 root 權(quán)限,上層應(yīng)用 app 可直接獲取 root 權(quán)限并進行相關(guān)操作,可以參考源碼目錄下的 demo 程序
5、 系統(tǒng)簽名
系統(tǒng)簽名文件位于源代碼目錄下,使用對應(yīng)的文件對 APK 進行簽名即可。
6、 動態(tài)隱藏/顯示系統(tǒng)狀態(tài)欄和導(dǎo)航欄
隱藏狀態(tài)欄和導(dǎo)航欄在應(yīng)用 app 里面向系統(tǒng)發(fā)送廣播
gzpeite.intent.systemui.hidenavigation和gzpeite.intent.systemui.hidestatusbar |
顯示狀態(tài)欄和導(dǎo)航欄在應(yīng)用 app 里面向系統(tǒng)發(fā)送廣播
gzpeite.intent.systemui.shownavigation和gzpeite.intent.systemui.showstatusbar |
測試命令如下:
am broadcast -a "gzpeite.intent.systemui.hidenavigation" ambroadcast-a"gzpeite.intent.systemui.hidestatusbar" am broadcast -a "gzpeite.intent.systemui.shownavigation am broadcast -a "gzpeite.intent.systemui.showstatusbar"
請參考源碼下的 demo 程序源碼
7、 靜默安裝/卸載應(yīng)用
安裝 APK 時,向系統(tǒng)發(fā)送 gzpeite.intent.action.install_apk廣播 卸載 APK 時,向系統(tǒng)發(fā)送 gzpeite.intent.action.uninstall_apk廣播 |
測試命令如下:
am broadcast -a "gzpeite.intent.action.install_apk" --es apk_path "/mnt/media_rw/0000-4823/GPSTest.apk" ambroadcast-a"gzpeite.intent.action.uninstall_apk"--espkg_name"com.android.gpstest"8、 重啟、關(guān)機操作
重啟:向系統(tǒng)發(fā)送 gzpeite.intent.action.reboot 廣播 關(guān)機向系統(tǒng)發(fā)送 gzpeite.intent.action.shutdown 廣播 |
測試命令如下:
重啟(有確認提示):am broadcast -a "gzpeite.intent.action.reboot" --ez confirm true 重啟(無確認提示):am broadcast -a "gzpeite.intent.action.reboot" --ez confirm false 關(guān)機(有確認提示):am broadcast -a "gzpeite.intent.action.shutdown" --ez confirm true 關(guān)機(無確認提示):am broadcast -a "gzpeite.intent.action.shutdown" --ez confirm false應(yīng)用程序控制請參考源碼下的 demo 程序源碼
9、 獲取 MAC 地址
原生 Android12 系統(tǒng)默認禁止應(yīng)用獲取 MAC 地址,為了兼容更早期的應(yīng)用程序,我司已對系統(tǒng)代碼進行優(yōu)化允許應(yīng)用 app 獲取 WIFI 及以太網(wǎng)的 MAC 地址,詳見源代碼目錄下的 demo 程序源碼。
七 動態(tài)修改開機 logo 和動畫
將logo.bmp、logo_kernel.bmp、bootanimation.zip,復(fù)制到系統(tǒng) /mnt/logo 目錄下即可
adb push logo.bmp /mnt/logo/ adbpushlogo_kernel.bmp/mnt/logo/ adbpushbootanimation.zip/mnt/logo/
兩個 logo 文件必須為 bmp 文件格式,一個是在 uboot 階段加載顯示,一個是在內(nèi)核階段加載顯示,文件名不可修改,文件內(nèi)容可以完全一樣。
開機動畫 bootanimation.zip 僅支持安卓系統(tǒng),制作方式可以通過搜索引擎查詢相關(guān)教程。
-
主板
+關(guān)注
關(guān)注
53文章
1934瀏覽量
71456 -
驅(qū)動程序
+關(guān)注
關(guān)注
19文章
849瀏覽量
48234 -
Win10
+關(guān)注
關(guān)注
2文章
710瀏覽量
40171
原文標題:佩特科技|PET_RK3568_P02 安卓通用主板
文章出處:【微信號:gzpeite,微信公眾號:廣州佩特電子科技有限公司】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論