Apex AD10 GPIO数字输出#
硬件连接#
电气特性#
说明 |
|
---|---|
Vout |
输出电压 |
GND |
地 |
emitt |
Emitter的缩写,发射极 |
colle |
Collector的缩写,集电极 |
Vout结果 |
|
---|---|
高电平=1 |
3.3V |
低电平=0 |
0V |
接口引脚定义#
接口名称 |
DB9针脚序号 |
接口说明 |
设备节点 |
---|---|---|---|
DI_0 |
1 |
GPIO IN |
/dev/gpio/di0 |
DI_1 |
2 |
GPIO IN |
/dev/gpio/di1 |
DO_0 |
3 |
GPIO OUT |
/dev/gpio/do0 |
DO_1 |
4 |
GPIO OUT |
/dev/gpio/do1 |
DO_2 |
5 |
GPIO OUT |
/dev/gpio/do2 |
GND |
6-9 |
地 |
接口名称 |
DB9针脚序号 |
接口说明 |
设备节点 |
---|---|---|---|
DI_0 |
1 |
GPIO IN |
/dev/gpio/di0 |
DI_1 |
2 |
GPIO IN |
/dev/gpio/di1 |
DO_0 |
3 |
GPIO OUT |
/dev/gpio/do0 |
DO_1 |
4 |
GPIO OUT |
/dev/gpio/do1 |
GND |
6-9 |
地 |
使用方式#
系统版本5.xx-x.x.x及以下#
对GPIO接口使用的示例如下
# 切换到root用户
sudo su -
# 设置为高电平(DO)
echo 1 > /dev/gpio/<设备节点名>/value
# 例子:echo 1 > /dev/gpio/do0/value
# 设置为低电平(DO)
echo 0 > /dev/gpio/<设备节点名>/value
# 例子:echo 1 > /dev/gpio/do0/value
系统版本6.x.x-x.x.x及以上#
对GPIO接口使用的示例如下
sudo /opt/miivii/features/gpio/bin/miivii_set_do_level <DO number> <level: 0/1> <duration(seconds) of level>
# <DO number>:表示DO的序号,0表示DO1,1表示DO1,以此类推;
# <level: 0/1>:表示需要设置的电平,0表示低电平,1表示高电平;
# <duration(seconds) of level>:电平持续时间,单位为秒。在此期间,DO的电平为<level: 0/1>的状态;超过电平持续时间后,DO恢复为之前状态。
# 请注意,Linux内核从4.8版本开始,GPIO SYSFS接口被标为过时,并且在Jetpack 6.0开始不再支持,并推荐通过libgpiod来进行GPIO操作。因此不支持不设置保持时间的方式。
# 例: 设置DO0为高电平,保持时间为20秒。
#sudo /opt/miivii/features/gpio/bin/miivii_set_do_level 0 1 20
示例代码编译
cp -r /opt/miivii/features ~/
cd ~/features/gpio
sudo make;