树莓派学习笔记——wiringPi简介、安装和管脚说明

article/2025/10/28 5:53:08
1.WiringPi简介
    WiringPi是应用于树莓派平台的GPIO控制库函数,WiringPi遵守GUN Lv3。wiringPi使用C或者C++开发并且可以被其他语言包转,例如python、ruby或者PHP等。WiringPi中的函数类似于Arduino的wiring系统,这使得熟悉arduino的用户使用wringPi更为方便。
树莓派具有26个普通输入和输出引脚。在这26个引脚中具有8个普通输入和输出管脚,这8个引脚既可以作为输入管脚也可以作为输出管脚。除此之外,树莓派还有一个2线形式的I2C、一个4线形式的SPI和一个UART接口。树莓派上的I2C和SPI接口也可以作为普通端口使用。如果串口控制台被关闭便可以使用树莓派上的UART功能。如果不使用I2C,SPI和UART等复用接口,那么树莓派总共具有8+2+5+2 =17个普通IO。wiringPi包括一套gpio控制命令,使用gpio命令可以控制树莓派GPIO管脚。用户可以利用gpio命令通过shell脚本控制或查询GPIO管脚。wiringPi是可以扩展的,可以利用wiringPi的内部模块扩展模拟量输入芯片,可以使用MCP23x17/MCP23x08(I2C 或者SPI)扩展GPIO接口。另外可通过树莓派上的串口和Atmega(例如arduino等)扩展更多的GPIO功能。另外,用户可以自己编写扩展模块并把自定义的扩展模块集成到wiringPi中。WiringPi支持模拟量的读取和设置功能,不过在树莓派上并没有模拟量设备。但是使用WiringPi中的软件模块却可以轻松地应用AD或DA芯片。

更丰富的内容请参考—— 树莓派学习笔记——索引博文

2.wiringPi安装
wiringPi的安装存在方案A和方案B。wiringPi使用GIT工具维护个更新代码,但是如果处于一些其他原因不能使用GIT,那么也可以使用方案B下载和安装wiringPi。
方案A——使用GIT工具
如果在你的平台上还没有安装GIT工具,可以输入以下命令:
sudo apt-get install git-core
如果在这个过程中出现错误,尝试更新软件,例如输入以下指令:
sudo apt-get update
sudo apt-get upgrade
紧接着可以通过GIT获得wiringPi的源代码
git clone git://git.drogon.net/wiringPi
若需要更新wiringPi。
cd wiringPi
git pull origin
进入wiringPi目录并安装wiringPi
cd wiringPi
./build
build脚本会帮助你编译和安装wiringPi

方案B——直接下载和解压
简单的输入以下网址:
https://git.drogon.net/?p=wiringPi;a=summary

图1 下载wiringPi最新版本源代码
点击图中的snapshot便可下载最新版本。
你可能下载到一个名为wiringPi-98bcb20.tar.gz的压缩包,需要助于的是98bcb20只是一个版本号,当你下载wiringPi的时候该版本号可能会发生改变。
你需要解压wiringPi源代码并进行安装,可输入以下指令:
tar xfz wiringPi-98bcb20.tar.gz
cd wiringPi-98bcb20
./build
再次说明,wiringPi压缩包的名称 很可能不是98bcb20,请根据实际情况改变。

测试wiringPi是否安装成功
wiringPi包括一套gpio命令,使用gpio命令可以控制树莓派上的各种接口,通过以下指令可以测试wiringPi是否安装成功。
gpio -v
gpio readall

图2 测试wiringPi是否安装成功

3.引脚说明
下图是wiringPi的引脚说明,这里需要说明两点。第一树莓派存在版本A和版本B,版本A和版本B的GPIO管脚存在差异;第二,wiringPi对树莓派的管脚重新进行了封装,例如wiringPi的GPIO0意味着BCM2835的GPIO17,这仅仅是一种封装映射关系,不会对开发和使用产生较大的影响。

图3 wiringPi引脚和BCM引脚的映射关系

4.参考资料
1. 树莓派学习笔记——GPIO功能学习
2. 树莓派学习笔记——I2C使用 PCF8574


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

相关文章

WiringPi介绍及安装方法

WiringPi介绍及安装方法 1.WiringPi简介 WiringPi是应用于树莓派平台的GPIO控制库函数,WiringPi遵守GUN Lv3。wiringPi使用C或者C开发并且可以被其他语言包转,例如python、ruby或者PHP等。WiringPi中的函数类似于Arduino的wiring系统,这使得…

树莓派wiringPi库详解

达者为先 师者之意 树莓派wiringPi库详解 1 WiringPi安装2 wiringPi库编译和运行3 wiringPi库API大全3.1 硬件初始化函数3.2 通用GPIO控制函数3.3 时间控制函数3.4 中断3.5 多线程3.6 softPwm软件实现的PWM3.7 串口通信3.8 shift移位寄存器芯片API3.9 树莓派硬件平台特有的API…

第七课:树莓派WiringPi库

目录 一、WiringPi库介绍 二、WiringPi安装 方法一: 安装git工具(已安装跳过)(前提已更换国内下载源) ①:输入一下指令 ​②: 输入指令--在线获得 WiringPi 的源代码(2019后不…

树莓派——wiringPi库详解

文章目录 查看树莓派引脚编号wiringPi库API大全硬件初始化函数通用GPIO控制函数时间控制函数串口通信串口通信配置测试代码串口通信实例 中断多线程其他 wiringPi(特定平台,特定功能接口)库是基于c语言开发的,提供了丰富的接口&am…

【树莓派】了解wiringPi库、控制继电器

目录 一、wiringPi库二、继电器1、继电器介绍及接线说明2、树莓派控制继电器 一、wiringPi库 wiringPi是一个很棒的树莓派IO控制库,使用C语言开发,提供了丰富的接口:GPIO控制,中断,多线程等。 在树莓派命令行输入gpio…

树莓派开发—— wiringPi 库的使用

一、wiringPi 的安装 参考文献: https://www.cnblogs.com/lulipro/p/5992172.html 进入 wiringPi的github (https://git.drogon.net/?pwiringPi;asummary) 下载安装包。点击页面的第一个链接的右边的snapshot,下载安装压缩包。 然后进入安装包所在的目录执行以下…

WiringPi安装及使用详解

这个文章先不要看,现在写的跟屎一样,我会断断续续的对本文章进行修改和优化,第一部分没问题,可以参考 WiringPi安装及使用详解 1、WiringPi的安装 2、Wiring常用命令详解 3、Python调用WiringPi库进行开发 1、安装WiringPi 登…

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

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

如何在Hexo博客发布文章

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

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

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

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

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

CSDN 文章审核中的有趣现象

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

csdn发布不了文章的解决

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

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

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

27.blog前端-发布文章

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

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

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

如何用CSDN发布文章

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

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

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

Springboot+Vue实现发表文章功能

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

使用hexo发布文章

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