树莓派GPIO编程和树莓派摄像头

1.树莓派摄像头,舵机,图像识别
2.树莓派摄像头的配置

$ sudo raspi-config

在这里插入图片描述
如果不是最新版本系统;
需要更新下:

sudo apt-get update
sudo apt-get upgrade


3.树莓派的GPIO
(1)通用型输入输出口,接口的说明网站:https://pinout.xyz/
(2)GPIO编程帮助文档:https://sourceforge.net/p/raspberry-gpio-python/wiki/BasicUsage/

(3)查看GPIO

gpio readall //查看命令

在这里插入图片描述
解释说明:
(a)树莓派管脚有三种编号方式
BCM:bcm的引脚编码方式
wPi:wiringPi编码;
BOARD:物理引脚的编码方式;
4.程序编程:
(1)导入RPi.GPIO模块

// 导入gpio模块
import RPi.GPIO as GPIO

(2)指定引脚的编号方式

// 导入gpio模块
GPIO.setmode(GPIO.BOARD) //使用物理引脚编号方式
  # or
GPIO.setmode(GPIO.BCM) //使用BCM的编号方式

(3)树莓派的IO口,默认为(input),如果你对它进行设置,他会发出警告,关闭警告用下面:

// 关闭警告
GPIO.setwarnings(False)

(4)设置信道

// 1.为一个通道设置
GPIO.setup(channel, GPIO.IN)//设为input
GPIO.setup(channel, GPIO.OUT)//设为out
// 2.为多个通道设置
chan_list = [11,12]
//add as many channels as you want!
//you can tuples instead i.e.:
//chan_list = (11,12)
GPIO.setup(chan_list, GPIO.OUT)
//3.设置初始为高电平
GPIO.setup(channel, GPIO.OUT, initial=GPIO.HIGH)

(5)读取某个口的输入值( 0 / GPIO.LOW / False 或 1 / GPIO.HIGH / True.)

GPIO.input(channel)

(6)某个口的输出值( 0 / GPIO.LOW / False 或 1 / GPIO.HIGH / True.)

GPIO.output(channel, state)
//为多个设置
chan_list = [11,12] 
GPIO.output(chan_list, GPIO.LOW) //所有的都为高
GPIO.output(chan_list, (GPIO.HIGH, GPIO.LOW))   //一个HIGH,第二个LOW

(7)释放IO资源

// 清除所有的
GPIO.cleanup()
//清除某一个
GPIO.cleanup(channel)
//清除多个
GPIO.cleanup( (channel1, channel2) )
GPIO.cleanup( [channel1, channel2] )

问题:怎样使得多个传感器同时工作?
持续更新-------

猜你喜欢

转载自blog.csdn.net/jackson_hao/article/details/86064008