Jetson Nano的GPIO口学习

该文介绍了如何配置NVIDIA的jetson-gpio库,包括安装pip,下载库文件,设置用户权限等步骤。之后,提供了一个Python示例,展示了如何利用GPIO库连接两个烟雾传感器和一个继电器,当任意一个传感器检测到烟雾时,继电器会切换状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.配置GPIO库

https://github.com/NVIDIA/jetson-gpio

(1)安装pip工具

sudo-apt-get update
sudo apt-get install python3-pip
sudo apt-get install python3-pip

(2)下载 jetson-gpio

sudo pip install Jetson.GPIO
sudo pip3 install Jetson.GPIO
或者直接clone   github
git clone https://github.com/NVIDIA/jetson-gpio

(3)将下载的文件复制或者移动到目录: /opt/nvidia 中:

sudo cp -r jetson-gpio /opt/nvidia/

(4)进入jetson-gpio库文件夹,并安装库。

cd /opt/nvidia/jetson-gpio
sudo python3 setup.py install

(5)使用前,还需要创建一个 gpio 组,把你的当前的账号加到这个组,并赋予使用权限

sudo groupadd -f -r gpio
sudo usermod -a -G gpio user_name

注:user_name 是自己的账号名

(6)重新加载udev规则,使新规则生效

将99-gpio.rules文件复制到rules.d目录

sudo cp /opt/nvidia/jetson-gpio/lib/python/Jetson/GPIO/99-gpio.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

2.例子

使用两个烟雾传感器检测烟雾,只要有一个检测到烟雾,就会打开继电器开关

import RPi.GPIO as GPIO
import time

gas_pin = 18      # 定义烟雾传感器引脚
gas1_pin = 16    # 定义气味传感器引脚
led_pin = 12       # 控制继电器开关   


def main():
    GPIO.setmode(GPIO.BOARD)                         # 定义引脚模式
    GPIO.setup(gas_pin, GPIO.IN)                       # 烟雾为输入
    GPIO.setup(gas1_pin, GPIO.IN)                     # 气味为输入
    GPIO.setup(led_pin, GPIO.OUT, initial=GPIO.HIGH)     # 继电器为输出,初始化为高电平
    GPIO.setwarnings(False)
    try:
        while True: 
            status=GPIO.input(gas_pin)
            status1=GPIO.input(gas1_pin)            # 检测高低电平变化      
            if status == True and status1 == True:   
                #print('no gas detect')
                GPIO.output(led_pin, GPIO.HIGH)      # 没有检测到烟雾,灯不会亮
            else:
                #print('gas detect')
                GPIO.output(led_pin, GPIO.LOW)
                
    except KeyboardInterrupt:
        pass
    GPIO.cleanup()                                   #  清理引脚通道

if __name__ == '__main__':
    main()

参考文章:https://blog.csdn.net/Lstar_/article/details/116188239

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值