一 主板接口
二 主板尺寸
三 主板功能
四 接口详细说明
五 镜像文件烧写
01 安装驱动并连接硬件
解压开发工具目录下的 DriverAssitant_USB 驱动程序.7z,右击以管理员权限运行 DriverInstall.exe,安装驱动程序。
注意 win10 或 win11 系统需要关闭操作系统的驱动签名验证功能才能正常安装驱动,win11 不能永久关闭这个功能,建议安装一个 win7 的虚拟机,在虚拟机内进行驱动安装和固件烧写。
将主板与 PC 机用 TYPE-C 线(注意有些数据线仅支持充电,无法传输数据)连接好,如果出现无法识别的情况可以通过重新连接、更换 PC 机 USB 接口、更换 USB 线、更换 PC 机等方式重试。
解压开发工具目录下的 RKDevTool.7z,右击以管理员权限运行 RKDevTool.exe
02 进入烧写模式
主板处于 Loader 或 Maskrom 模式时可以对系统进行格式化和烧写系统镜像文件操作。
进入 Loader 模式
方法一
将主板断电,首先用 TYPE-C 线将主板与 PC 机连接好,按下主板上的烧写键, 并保持按下状态,然后再上电开机,主板会进入 Loader 操作模式,注意这种方式适用于主 板上的 BootLoader 可正常工作的情况。
方法二
将主板接通电源,进入系统,用 TYPE-C 线将主板与 PC 机连接好如下图,RKDevTool 软件会 识别到一个 ADB 设备,单击切换按钮,主板会重启进入 Loader 模式
方法三
在调试串口控制台或其他控制终端输入 reboot loader,主板会重启进入 Loader 模式
03 进入 Maskrom 模式 (无法进入 Loader 模式时使用)
一般仅在 uboot 损坏,无法进入 Loader 模式时使用。首先准备好一个金属镊子,将主板断电 用镊子短接右图中的核心板上两个沉金通孔 然后再上电开机,进入 Masktom 模式后取消短接,松开镊子 继续进行檫除 flash、升级固件等操作
04 系统烧写流程
首先将主板进入 Loader 或 Maskrom 模式,打开 RKDevTool 软件,点击固件按钮选择需要烧写的镜像文件,然后点击升级按钮,右侧窗口会显示烧写进度,烧写完成后,主板会自动重启开机。
六 安卓应用开发
1、 GPIO 编程参考
通过 sysfs 方式控制 GPIO,GPIO 的操作接口包括 direction 和 value 等,direction 控制 GPIO 输入和输入模式,而 value 可控制 GPIO 输出或获得 GPIO 输入。
例如控制调试灯 GPIO 操作如下(串口终端命令行方式):
调试灯 GPIO 设置为输出
echo out > /sys/class/gpio/gpio23/direction调试灯 GPIO 输出高电平
echo 1 > /sys/class/gpio/gpio23/value调试灯 GPIO 输出高低平
echo 0 > /sys/class/gpio/gpio23/value调试灯 GPIO 设置为输入
echo in > /sys/class/gpio/gpio23/direction读取调试灯 GPIO 输出输入电平
cat /sys/class/gpio/gpio23/value当 GPIO 处于输出和输入模式时都可以读取,当设置为输入模式时读取的是 GPIO 实际电平,当设置为输出模式时读取的是设置的值(如果设置为高电平输出,外部将引脚电平拉低后,读取的值依然是 1)。
2、 串口 UART 编程参考
RS232 串口、RS485、TTL 串口接口对应的设备名详见上文接口描述。
安卓系统串口编程请参考 demo 程序源码或以下链接:
https://github.com/Acccord/AndroidSerialPort
https://github.com/Geek8ug/Android-SerialPort
3、 WatchDog 看门狗编程参考
进入内核后默认会启动看门狗,内核崩溃等情况出现,会在 15 秒内自动复位主板。上层应用程序打开看门狗后,内核将看门狗控制权交由上层应用程序控制,上层应用程序的喂狗间隔建议不大于 3 秒。
看门狗的使用流程为 打开看门狗循环喂狗停止喂狗关闭看门狗
喂狗之前必须先打开看门狗,关闭看门狗之前需停止喂狗操作。
打开看门狗后如果 15 秒内没有喂狗或关闭看门狗,系统会自动复位。
命令行测试:
打开看门狗:
echo 1 >/sys/class/gzpeite/user/watch_dog喂狗:
echo 2 >/sys/class/gzpeite/user/watch_dog关闭看门狗:
echo 0 >/sys/class/gzpeite/user/watch_dog
应用程序控制请参考源码下的 demo 程序源码
4、 获取 root 权限
系统默认已开启 root 权限,上层应用 app 可直接获取 root 权限并进行相关操作,可以参考源码目录下的 demo 程序
5、 系统签名
系统签名文件位于源代码目录下,使用对应的文件对 APK 进行签名即可。
6、 动态隐藏/显示系统状态栏和导航栏
隐藏状态栏和导航栏在应用 app 里面向系统发送广播
gzpeite.intent.systemui.hidenavigation 和 gzpeite.intent.systemui.hidestatusbar |
显示状态栏和导航栏在应用 app 里面向系统发送广播
gzpeite.intent.systemui.shownavigation 和 gzpeite.intent.systemui.showstatusbar |
测试命令如下:
am broadcast -a "gzpeite.intent.systemui.hidenavigation" am broadcast -a "gzpeite.intent.systemui.hidestatusbar" am broadcast -a "gzpeite.intent.systemui.shownavigation am broadcast -a "gzpeite.intent.systemui.showstatusbar"
请参考源码下的 demo 程序源码
7、 静默安装/卸载应用
安装 APK 时,向系统发送 gzpeite.intent.action.install_apk广播 卸载 APK 时,向系统发送 gzpeite.intent.action.uninstall_apk广播 |
测试命令如下:
am broadcast -a "gzpeite.intent.action.install_apk" --es apk_path "/mnt/media_rw/0000-4823/GPSTest.apk" am broadcast -a "gzpeite.intent.action.uninstall_apk" --es pkg_name "com.android.gpstest"8、 重启、关机操作
重启:向系统发送 gzpeite.intent.action.reboot 广播 关机向系统发送 gzpeite.intent.action.shutdown 广播 |
测试命令如下:
重启(有确认提示):am broadcast -a "gzpeite.intent.action.reboot" --ez confirm true 重启(无确认提示):am broadcast -a "gzpeite.intent.action.reboot" --ez confirm false 关机(有确认提示):am broadcast -a "gzpeite.intent.action.shutdown" --ez confirm true 关机(无确认提示):am broadcast -a "gzpeite.intent.action.shutdown" --ez confirm false应用程序控制请参考源码下的 demo 程序源码
原生 Android12 系统默认禁止应用获取 MAC 地址,为了兼容更早期的应用程序,我司已对系统代码进行优化允许应用 app 获取 WIFI 及以太网的 MAC 地址,详见源代码目录下的 demo 程序源码。
七 动态修改开机 logo 和动画
将logo.bmp、logo_kernel.bmp、bootanimation.zip,复制到系统 /mnt/logo 目录下即可
adb push logo.bmp /mnt/logo/ adb push logo_kernel.bmp /mnt/logo/ adb push bootanimation.zip /mnt/logo/
两个 logo 文件必须为 bmp 文件格式,一个是在 uboot 阶段加载显示,一个是在内核阶段加载显示,文件名不可修改,文件内容可以完全一样。
开机动画 bootanimation.zip 仅支持安卓系统,制作方式可以通过搜索引擎查询相关教程。
全部0条评论
快来发表一下你的评论吧 !