|
1. 目前最新的V3.0固件40Pin低速扩展IO的GPIO引脚开发使用可采用以下两种方式(暂不支持ADC接口):
1)重新编译kernel代码生成boot_linux.img(仅支持gpio引脚开发)
- 先下载内核代码。
- 修改rk3399pro-toybrick-prod-linux.dts里将ext-leds属性修改为ext-gpios
- &extbrd {
- status = "okay";
- io-channels = <&saradc 0>, <&saradc 1>;
- - ext-leds = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>, /* GPIO0_A5 */
- + ext-gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>, /* GPIO0_A5 */
- <&gpio1 RK_PB1 GPIO_ACTIVE_HIGH>, /* GPIO1_B1 */
- <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>, /* GPIO1_B2 */
- <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; /* GPIO0_A6 *
- ./make.sh linux prod 编译得到boot_linux.img.
- 烧写发布的TB-RK3399ProD V3.0固件,替换掉上一步编译出来的boot_linux.img.
2)不编译代码直接替换dtb(仅支持gpio引脚开发)
- 下载dtb文件,将dtb文件通过ssh方式传输到板子/home/toybrick/目录上。
- 板子上执行:sudo cp /home/toybrick/toybrick-extio.dtb /boot/extlinux/toybrick.dtb ,然后reboot重启。
2. 若需同时使用GPIO及ADC接口开发, 可下载boot_linux_use_ext_io_adc.img, 烧写到boot_linux分区,然后reboot重启。
3. 低速扩展GPIO有如下四个引脚及分别对应的GPIO号:
GPIO0_A5 5
GPIO0_A6 6
GPIO1_B1 41
GPIO1_B2 42
用户空间可通过sysfs接口控制对应GPIO的输入输出及电平拉高拉低, PROD开发板默认sysfs接口已导出这4个GPIO引脚,输出高电平
假设需要设置GPIO1_B1电平可通过以下命令:
拉高:
- echo 1 > /sys/class/gpio/gpio41/value
拉低:
- echo 0 > /sys/class/gpio/gpio41/value
读取当前GPIO电平值:
- cat /sys/class/gpio/gpio41/value
其他GPIO均类似操作,仅需修改对应的GPIO号即可
4. 读取低速扩展IO口ADC对应接口的值命令如下:
ADC0:
- cat /sys/devices/platform/extbrd/extadckey0
ADC1:
- cat /sys/devices/platform/extbrd/extadckey1
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|