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