树莓派GPIO开发(一):激光头传感器模块的使用
配置环境
系统:Raspbian11(64位)
设备:树莓派CM4
一、写在前面
主要为了测试我捡漏买的CM4的拓展版

拓展板子没有焊接引脚,但是预留的接口

手动焊接一下

测试成功 ,说明我捡的这块板子的GPIO基本是正常的,而且没有引脚被挡到,赚到了!
使用传感器:激光头传感器模块 KY-008

二、树莓派使用GPIO口的基础知识
1.GPIO 引脚的定义(编号方法)
在树莓派上使用GPIO一般就用下面三种,第一种就是板子上的1、2、3....、40,用起来傻瓜式,只是仅能在树莓派上用,一般用python开发。第二种就是CPU定义的引脚编号。第三种和Arduino兼容,一般使用C语言开发。我这里就用第一种。
(1)排针引脚编号(BOARD)。
(2)CPU 定义引脚编号(BCM)。
(3)WiringPI 编号。
引脚图:

输入gpio -v查看自己树莓派GPIO的版本
输入gpio readall查看我们接口编号的定义。

我这个板子不是官方的,检测不出来,但是能看到20个引脚。
2.使用板子上引脚编号,进行编程
RPi.GPIO 是一个控制树莓派上的 GPIO通道的软件包。该软件包提供了一个类来控制树莓派上的 GPIO。 在树莓派的 Raspbian 系统镜像中默认安装了 PRi.GPIO,因此可以直接使用。
PRi.GPIO官方的wiki: https://sourceforge.net/p/raspberry-gpio-python/wiki/BasicUsage/
如果你没有打开GPIO的使用开关,你还需要去系统设置里面把 GPIO enable

我这里用的就是编号11的引脚,使用激光发生器来测试下,上代码
# @墨苏 2021/12/25
import RPi.GPIO as GPIO
import time
if __name__ == "__main__":
pin_sig = 11 #使用板子编号11的引脚
GPIO.setmode(GPIO.BOARD) # 按物理位置对GPIO进行编号
GPIO.setup(pin_sig, GPIO.OUT) # 设置这个GPIO为输出模式
GPIO.output(pin_sig, GPIO.HIGH) # 设置输出高电平
try:
while True:
print('亮3秒')
GPIO.output(pin_sig, GPIO.HIGH) # 亮
time.sleep(3)
print('灭3秒')
GPIO.output(pin_sig, GPIO.LOW) # 灭
time.sleep(3)
except KeyboardInterrupt:
print('\n Ctrl + C QUIT')
finally:
GPIO.cleanup() # 把引脚恢复初始状态,否则下次使用这个引脚会报错,会显示它上个模式中
代码运行结果就是开始放的图片
相关推荐:玩转树莓派系列文章
树莓派GPIO开发(一):激光头传感器模块的使用的更多相关文章
- 树莓派GPIO开发(三):蜂鸣器-PWM调节
配置环境 系统:Raspbian11(官方64位) 设备:树莓派CM4 一.写在前面 关于PWM的基本介绍在上一篇博客已经说过了:树莓派GPIO开发(二)RGB模块-PWM调节 在RGB模块中,我们主 ...
- 树莓派GPIO开发(二)RGB模块-PWM调节
配置环境 系统:Raspbian11(官方64位) 设备:树莓派CM4 一.PWM简单介绍 全称:Pulse-width modulation,脉冲宽度调制,简单的数模转换方法 1.基本原理 脉冲宽度 ...
- 树莓派 LED+蜂鸣+声音传感器+红外模块组合打造声控/红外控制LED
昨天搞了控制LED,玩了第一个,剩下的就感觉很简单了,这里记录一下 先来几张照片 玩了蜂蜜模块才发现规律,一般这种模块,都会有三个针脚,VCC(3.3V或5V供电输出针脚).GNC(对应GPIO针脚的 ...
- 自己动手实现智能家居之树莓派GPIO简介(Python版)
[前言] 一个热爱技术的人一定向往有一个科技感十足的环境吧,那何不亲自实践一下属于技术人的座右铭:“技术改变世界”. 就让我们一步步动手搭建一个属于自己的“智能家居平台”吧(不要对这个名词抬杠啦,技术 ...
- 在树莓派上读取DHT11温湿度传感器-python代码实现及常见问题(全面简单易懂)
最近由于自己的课题需要,想要用在树莓派上使用DHT11温湿度传感器来读取空气中温湿度,遇到了几个问题,解决之后也对之前的知识进行了回顾,总结,特整理如下,希望能给也在学习树莓派的小伙伴们带来一些帮助. ...
- SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——1.安装系统ubuntu_mate_16.04
摘要 通过前面一系列的铺垫,相信大家对整个miiboo机器人的DIY有了一个清晰整体的认识.接下来就正式进入机器人大脑(嵌入式主板:树莓派3)的开发.本章将从树莓派3的开发环境搭建入手,为后续ros开 ...
- Python自动化编程-树莓派GPIO编程(二)
树莓派我们编程一般都直接用高效的python,针对于GPIO编程,python也是有这一方面的库的,这里最有名也是最常用的就是RPI.GPIO了.这个库是专门为树莓派GPIO编程所设计的,利用它你可以 ...
- 树莓派GPIO控制RGB彩色LED灯
树莓派GPIO通过PWM来控制RGB彩色LED灯,可以显示任何我们想要的颜色. RGB模块简介 这个RGB彩色LED里其实有3个灯,分别是红灯.绿灯和蓝灯.控制这三个灯分别发出不同强度的光,混合起来就 ...
- iTOP-4412开发板-LinuxC-继电器模块的测试例程
平台:iTOP-4412开发板 实现:继电器模块测试例程 继电器的 C 的测试程序,C 测试程序可以在 Android系统,Qt 系统以及最小 linux 系统上运行,文档以 Android 系统上测 ...
随机推荐
- Springboot集成邮箱服务发送邮件
一.前言 Spring Email 抽象的核心是 MailSender 接口,MailSender 的实现能够把 Email 发送给邮件服务器,由邮件服务器实现邮件发送的功能. Spring 自带了一 ...
- 关于Jmeter线程数Ramp-Up.循环次数的理解和实验数据
1. 关于线程组参数 线程组:即一个线程组实例里面包括多个串行的请求或动作.一个线程组的从启动到结束的时间取决于你线程中的步骤数量. 线程数:即用户数,在Ramp-up时间内(包括循环),简单把线程数 ...
- 【记录一个问题】golang神坑,明明返回了接口指针类型的nil值,却无法用if判断
先看看导致异常的代码: package main import ( "fmt" "log" ) type MyError1 struct{ MyErrorCod ...
- nao机器人使用手册
简单使用和保养 开关机和马达 开机是按一下,后来按一下相当于重启了一次程序,3是播报IP地址,5秒是关机,8秒是强制关机. 电池 3月左右不用需要取下电池.夏天5-8小时,冬天8-10小时充电.活动时 ...
- 在3G移动通信网络信令流程里获取用户电话号的一种方法(中国电信cdma2000)
首先这些关于电话号的的寻找都是在分组域进行的 然后是首先在rp接口的A11接口寻找,没有看到,于是到pi接口,研究radius协议 发现在协议里也不含有与用户电话号码mdn相关的元素 然后偶遇一篇文档 ...
- Java 后台线程介绍
一 是啥? package com.aaa.threaddemo; /* * 一 Java后台线程? * 守护线程--也称"服务线程",他是后台线程, * 它有一个特性,即为用户 ...
- Linux 配置常用工具?
常用的软件在linux上进行配置: 修改HOSTANME vi /etc/sysconfig/network 修改HOSTNAME和IP的映射 vi /etc/hosts 关闭防火墙 service ...
- 用了这么久 Linux ,才知道这些概念。。。
Linux 和 UNIX 中的文件系统是一个以 / 为根的树状式文件结构,/ 是 Linux 和 UNIX 中的根目录,同样它也是文件系统的起点.所有的文件和目录都位于 / 路径下,包括我们经常听到的 ...
- Uwl.Admin.Core开源框架(三) 使用RabbitMQ
Uwl.Admin.Core中使用RabbitMQ消息队列: 本文负责讲解RabbitMQ的使用 Uwl.Admin.Core使用的技术有: *.Async和Await 异步编程 *.Reposito ...
- HttpClient的NoHttpResponse问题
调用第三方接口时会报NoHttpResponse异常,原因是上次的连接已经断掉了,但是客户端并未知道,复用上次连接就报错了,所以要解决这个问题,就是要校验上次链接是否断掉了 1. httpCl ...