WiringPi安装及使用详解

article/2025/10/28 7:22:54

这个文章先不要看,现在写的跟屎一样,我会断断续续的对本文章进行修改和优化,第一部分没问题,可以参考

WiringPi安装及使用详解

1、WiringPi的安装

2、Wiring常用命令详解

3、Python调用WiringPi库进行开发

1、安装WiringPi
登录到树莓派后,通过命令行(以下简称CLI)进行安装,命令如下:

$ cd /tmp
$ wget https://project-downloads.drogon.net/wiringpi-latest.deb
$ sudo dpkg -i wiringpi-latest.deb

安装完成后可以通过如下命令查看库的版本信息和GPIO。

$ gpio -v
$ gpio readall

版本信息
GPIO信息
另附上树莓派实验室制作的GPIO引脚图
在这里插入图片描述
2、Wiring常用命令详解
WiringPI操作GPIO的主要命令如下:

$ GPIO -v                            #查看库的版本信息
$ GPIO -g                            #使用BCMYGPIO引脚数而不是WiRIPPI引脚数。注:BCM\ GPIO引脚号始终与export和edge命令一起使用。
$ GPIO -1                            #使用物理管脚号而不是wiringPi管脚号。注意:这仅适用于P1接头。不可能以这种方式使用第2版P5连接器上的插脚,与-g一样,BCM\ GPIO插脚号始终与export和edge命令一起使用。
$ GPIO -x extension                  #签名用于简单的测试和诊断目的,但可以在shell脚本中用于对GPIO管脚的一般控制(如果有点慢)。它还可以控制PiFace IO板上的IO,并在需要时加载SPI和I2C内核模块。此外,它还可以用于设置/sys/class/gpio系统目录中的导出,以允许后续程序使用/sys/class/gpio接口而无需运行作为根。
$ GPIO -p                            #使用PiFace接口板及其对应的管脚号。在gpio命令中,PiFace总是出现在pin编号200处。不过,您可以在自己的程序中指定任何您喜欢的pin码。
$ GPIO read <pin>                    #读取给定管脚的数字值并打印0或1以表示各自的逻辑电平。
$ GPIO write <pin> <value>           #将给定值(0或1)写入引脚。您需要先将引脚设置为输出模式。
$ GPIO toggle <pin>                  #更改GPIO引脚的状态;0到1,或1到0。
$ GPIO blink <pin>                   #打开/关闭给定的pin。按Control-C退出。注意:这个命令显式地将pin设置为输出模式。
$ GPIO aread <pin>                   #读取给定引脚的模拟值。这需要与-x标志一起使用,以添加处理模拟输入的扩展。
$ GPIO awrite <pin> <value>          #将模拟值写入给定引脚。这需要与-x标志一起使用,以添加处理模拟输入的扩展。
$ GPIO wb <value>                    #将给定字节写入8个主GPIO引脚。可以在它前面加上0x来指定十六进制数。您需要先将管脚设置为输出模式。
$ GPIO readall                       #输出所有GPIO引脚值的表格。这些值表示管脚处于输入模式时读取的实际值,或管脚处于输出模式时写入的最后一个值。
$ GPIO pwm <pin> <value>             #将PWM值(0-1023)写入给定引脚。引脚需要先进入PWM模式。
$ GPIO clock <pin> <frequency>       #设置给定引脚的输出频率。引脚需要先进入时钟模式。
$ GPIO mode <pin> <mode>             #将引脚设置为输入、输出或pwm模式。还可以使用文字up、down或tri设置内部上拉、下拉或三态(off)控件。
$ GPIO unexportall                   #取消导出/sys/class/GPIO目录中的所有GPIO管脚。
$ GPIO exports                       #打印所有导出的GPIO管脚及其当前值的列表(如果有)。
$ GPIO export                        #在/sys/class/GPIO目录中导出GPIO pin。像上面的mode命令一样使用,但是此时只支持in、out、high和low。请注意,管脚编号是BCM\ GPIO编号,而不是wiringPi编号。在导出到输出模式的同时,high和low命令预先设置输出值。
$ GPIO edge                          #这将导出/sys/class/GPIO目录中的GPIO引脚,将方向设置为input,并将edge interrupt method设置为none、rising、falling或both。与上面的export命令一样使用,请注意,使用的是BCM\U GPIO引脚编号,而不是wiringPi引脚编号。
$ GPIO unexport                      #取消导出/sys/class/GPIO目录中的GPIO pin。
$ GPIO wfi <pin> <mode>              #这会将给定的引脚设置为提供的中断模式:上升、下降或两者兼有,然后等待中断发生。这是一个非繁忙的等待,所以不消耗和CPU,而它的等待。
$ GPIO drive                         #将给定焊盘组的焊盘驱动器值更改为提供的驱动器值。组为0、1或2,值为0-7。不要使用,除非你绝对确定你知道你在做什么。
$ GPIO usbp gigh/low                 #将USB限流器更改为高(1.2安培)或低(默认值为600毫安)这仅适用于B+型和B v2型。     
$ GPIO pwm-bal/wpm-ms                #将PWM模式更改为平衡(默认)或标记:空间比(传统)
$ GPIO pwmr                          #更改PWM范围寄存器。默认值为1024。
$ GPIO gbr <channel>                 #这将读取给定通道上Gertboard上的模数转换器。板跳线需要就位才能执行此操作。
$ GPIO gbw <channel value>           #这会将提供的值写入Gertboards SPI数模转换器的输出通道。板跳线需要就位才能执行此操作。

示例:

$ gpio mode 4 output       #将引脚4设置为输出
$ gpio -g mode 23 output   #将GPIO引脚23设置为输出
$ gpio mode 1 pwm          #将引脚1设置为PWM模式
$ gpio pwm 1 512           #将引脚1的pwm值设置为512
$ gpio export 17 out       #将GPIO引脚17设置为output
$ gpio export 0 in         #将个屁哦引脚0(SDA0)设置为input
$ gpio -g read 0           #读取GPIO引脚0(SDA0)

后续完善


http://chatgpt.dhexx.cn/article/vu1iG98H.shtml

相关文章

【wrodpress】wordpress发表文章后无法显示

搭建完wordpress&#xff0c;发表第一篇博客测试。文章发布后&#xff0c;首页已经能显示出文章的标题&#xff0c;但是点进去后却提示该页无法显示。 而且可以看到 因为我写的标题是文字&#xff0c;所以标题默认就是文字&#xff0c;而wordpress生成的链接中包含中文字符是…

如何在Hexo博客发布文章

1、markdown格式上传&#xff1a;Hexo默认使用的格式是markdown格式的文件&#xff0c;所以上传markdown文件可以自动转化为HTML格式的文章&#xff1b; 2、将.md文件复制到你hexo博客文件夹 中 source 下的 _posts 中&#xff0c;默认只有一个 hello-world.md&#xff1b; 3、…

微信公众号申请及文章发送详细流程介绍

文章目录 准备工作一、注册订阅号1.打开微信公众平台网址2.点击右上角立即注册&#xff0c;选择订阅号3.填写信息 二、登录微信公众号发表文章1.登录刚注册的公众号2.选择发表文章类型发表文章3.编辑好文章后可以选择阅览查看内容 三、管理微信公众号1.设置自己公众号内容2.管理…

使用wxjava实现发表内容、预览信息以及推送文章

大家好,我是雄雄。 文章目录 前言保存草稿的方法获取草稿箱列表根据media_id获取草稿箱信息给指定人发送预览文章推送文章(按照标签推送)前言 今天分享的内容有如下几个: 保存草稿根绝media_id会哦去草稿箱的信息发表内容,并不是发发布(已发表的内容不会推送给用户,不占…

CSDN 文章审核中的有趣现象

简 介&#xff1a; 对于今天CSDN记录实验博文在审核过程中遇到的“审核未通过”进行查询&#xff0c;通过“二分法” 逐步定位到影响审核通过的具体词语&#xff0c;经过修改之后&#xff0c;便完成了 CSDN 中的文章审核。莫名其妙的审核不通过&#xff0c;来自于输入文字中的 …

csdn发布不了文章的解决

插件的问题 问题 csdn发布不了文章&#xff0c;点击“发布后”&#xff0c;没有任何反应&#xff1b;编辑框也出现了莫名其妙的框图&#xff08;附图1&#xff09; 本以为是csdn在更新&#xff0c;经咨询客服4006600108&#xff08;可能是浏览器插件或者缓存的问题&#xff0…

在CSDN写文章是一种什么体验?

大家好&#xff0c;我是记得诚。 不知不觉&#xff0c;距离我第一篇博客&#xff0c;已快三年了&#xff0c;时间过得真快。 今天简单写一篇文章&#xff0c;记录自己在CSDN的成长进步。 开始 写博客是受杨秀章老师的启发&#xff0c;看到他充满烟火气的文字&#xff0c;给…

27.blog前端-发布文章

点击写文章&#xff0c;会跳转到该页面 点击右上角的发布&#xff0c;会弹出发布的对话框因此&#xff0c;我们要调用文章分类列表和文章标签列表的接口 以及如果是点击文字的编辑按钮进入该页面的话&#xff0c;还需要通过调用文章id获取文章详情的接口 还需要调用发布文章的…

Python爬取网上文章并发表到微信公众号

前言 话说懒惰是人类进步的原动力&#xff0c;古人诚不欺我。最近在折腾一个微信公众号&#xff0c;开始的时候在网上找一些资源然后进行二次创作然后发表到微信公众号&#xff0c;但是这就要自己先把里面的图片下载下来然后文字也复制过来然后再慢慢的上传到微信公众号&#…

如何用CSDN发布文章

CSDN怎么写博客&#xff1f; 1、首先打开CSDN官网&#xff0c;进行注册或者登录 2、登录后点击右上角的创作中心 3、进入以后点击左上角的发布 4、可以开始写入你要写的内容&#xff0c;先写入标题 5、然后再写你要写的内容&#xff0c;左侧写内容&#xff0c;右侧可以预览&a…

Hexo博客发表文章、草稿、添加分类和标签

写在前面 本文主要写了hexo的配置&#xff0c;关于博客标题这些配置HEXO已经有了很详细的介绍了&#xff0c;这里不再赘述&#xff0c;本文主要记录一些我个人认为小白比较容易有疑问的地方&#xff0c;也就是博客的主要功能&#xff0c;发表文章、添加文章分类和标签。文章可…

Springboot+Vue实现发表文章功能

点击上方[全栈开发者社区]→右上角[...]→[设为星标⭐] 效果图 前端编辑页面 文章列表页面 文章详情页面 环境介绍 JDK&#xff1a;1.8 数据库&#xff1a;Mysql5.6 前端&#xff1a;Vue 后端&#xff1a;SpringBoot 核心代码介绍 AtricleCtrle.class RestController RequestMa…

使用hexo发布文章

前言: 如何用指令去创建一篇文章,然后发布? .我们先来看一下hexo的目录结构,了解每个目录的作用,这将让我们对hexo的运行原理有一个大概的认识,对于我们后面美化主题是有帮助的, 然后再来创建文章,并发布到本地服务器,最后查看效果. 一、Hexo的目录分析: &#xff11;&#…

微信公众号发布

微信公众号如何发文章 输入微信公众号 打开百度浏览器&#xff0c;搜索栏输入微信公众号&#xff0c;点击百度一下。 打开微信公众平台 页面显示搜索结果&#xff0c;页面选择微信公众平台官方链接点击打开。 扫一扫二维码 进入微信公众平台页面&#xff0c;使用你的微信扫一扫…

软件测试培训:等价类划分法概述

等价类划分法是一种常用的黑盒测试方法&#xff0c;它主张从大量数据中选择一部分数据用于测试&#xff0c;即尽可能使用最少的测试用例覆盖最多的数据&#xff0c;以发现更多的软件缺陷。 一个程序可以有多个输入&#xff0c;等价类划分就是将这些数据按照输入需求进行分类&am…

等价类划分法+边界值法

一、测试用例&#xff08;案例&#xff09; 1.1 定义&#xff1a; ​ 是在测试执行之前&#xff0c;由测试人员编写的指导测试过程的重要文档&#xff0c;主要包括&#xff1a;用例编号、测试目的、测试步骤&#xff08;用例描述&#xff09;&#xff0c;预期结果 1.2 介绍编…

什么是等价类划分法?

1.等价类划分法&#xff1f; 等价类划分是把所有可能输入的数据分为若干个区域&#xff0c;然后从每个区域中取少量有代表性的数据进行测试即可。 等价类 &#xff1a;何为等价类&#xff0c;某个输入域的集合&#xff0c;在这个集合中每个输入条件都是等效的。 2.分类 一般…

等价类划分法实验

一、使用等价类划分法分析三角形问题 要求一&#xff1a;需包含有效等价类及无效等价类划分表格 以及 测试用例表格 要求二&#xff1a;代码实现 实现 方式一&#xff1a;设计 三个输入框 一个判断按钮 点击按钮后显示结果 实现方式二&#xff1a;Java控制台进行测试判断【本实…

解决typora beta版本过期提示

现在beta版的typora打开都会有这个弹窗提示&#xff0c;想要把弹窗提示解决其实很简单&#xff0c;只要按照下面这个办法解决就可以了。 winr打开运行窗口&#xff0c;输入regedit&#xff0c;点确定打开注册表&#xff0c;依次展开计算机\HKEY_CURRENT_USER\SOFTWARE\Typora&…

Beta版本发布说明

2 Beta版本发布说明 2.1 列出这一版本的功能 Beta版本基于Alpha版本&#xff08;实现博主登录、发布博文、设置博客、搜索博文、点击标签显示相应博文、点击分类显示相应博文、留言功能&#xff09;上&#xff0c;主要新增以下几个功能&#xff1a; Message页面的信息推送功能、…