Pi介绍GPIO

简介: GPIO是什么?GPIO(英语:General-purpose input/output),通用型之输入输出的简称,功能类似8051的P0—P3,其接脚可以供使用者由程控自由使用,PIN脚依现实考量可作为通用输入(GPI)或通用输出(GPO)或通用输入与输出(GPIO),如当clk generator, chip select等。

GPIO是什么?

  • GPIO(英语:General-purpose input/output),通用型之输入输出的简称,功能类似8051的P0—P3,其接脚可以供使用者由程控自由使用,PIN脚依现实考量可作为通用输入(GPI)或通用输出(GPO)或通用输入与输出(GPIO),如当clk generator, chip select等。
  • 既然一个引脚可以用于输入、输出或其他特殊功能,那么一定有寄存器用来选择这些功能。对于输入,一定可以通过读取某个寄存器来确定引脚电位的高低;对于输出,一定可以通过写入某个寄存器来让这个引脚输出高电位或者低电位;对于其他特殊功能,则有另外的寄存器来控制它们。摘选于维基百科

GPIO支持的编程语言

  • 在树莓派板子上,共有40个引脚,每个引脚的功能不同,可以在引脚上连接传感器等,从而将树莓派变成ARM开发板,不过,树莓派上已经有了各种python库,通过python库就可以直接操作IO口,减小了开发难度。

  • 树莓派上的GPIO口有三种集成库的引脚,分别为python GPIO、wiringPi、BCM2835 C Library。树莓派引脚排列顺序如下图所示。

    img_628a2916d8673389c0bd0de49f6ee68a.png
    GPIO.png

  • 树莓派GPIO


    img_063bc9431cac5ebb7960597b3e154e3e.jpe
    figure3.jpg
  • OrangePi GPIO


    img_f4a270c8478ea49f6f0a651af748d447.jpe
    gpio.jpg

GPIO在树莓派与橘子派的兼容性

  • GPIO在树莓派上的兼容性可以说是很不错的,而在OrangePi(其他板子不与之比较)上兼容性还是很差的,就拿我的板子来说,OrangePi目前支持GPIO的,只有H3(H2+)的库,而树莓派的python-gpio在OrangePi上还是不太兼容,或者说我没有测试成功的。Armbian上有GPIO的模块,我也没有详细测试。但是H3的芯片的板子还是很好的,一些点灯呀什么的,还是可以玩的.

一些简单的GPIO实验

相关文章
|
存储 安全 Linux
harbor安装和使用文档
harbor是一个企业级的存储docker镜像的私有镜像仓库,我们可以在自己的机器上对镜像打标签,然后push到harbor中保存起来,这样可以大幅度提高镜像拉取的速度,也满足了安全性的需求,harbor包含管理界面,镜像扫描,镜像签名,镜像复制,日志审核等多种特性,对于企业来说是最好的选择
|
Ubuntu Linux iOS开发
主流的操作系统
一、Windows操作系统 1、详细介绍: Microsoft Windows_百度百科 2、大概介绍 Microsoft Windows是美国微软公司研发的一套操作系统,从最初的Windows 1.0、到大家熟知的Windows 7、Windows 8、Windows 10,Windows 11不断持续更新。
901 1
VScode修改打开默认编码及自动匹配文件编码格式
VScode修改打开默认编码及自动匹配文件编码格式
5443 0
VScode修改打开默认编码及自动匹配文件编码格式
|
4月前
|
关系型数据库 分布式数据库 数据库
|
传感器 机器学习/深度学习 Web App开发
AI之Robot:机器人Robot的简介、发展历史、案例应用之详细攻略
AI之Robot:机器人Robot的简介、发展历史、案例应用之详细攻略
|
NoSQL Java Redis
redis的基本命令,并用netty操作redis(不使用springboot或者spring框架)就单纯的用netty搞。
这篇文章介绍了Redis的基本命令,并展示了如何使用Netty框架直接与Redis服务器进行通信,包括设置Netty客户端、编写处理程序以及初始化Channel的完整示例代码。
299 1
redis的基本命令,并用netty操作redis(不使用springboot或者spring框架)就单纯的用netty搞。
|
机器人 Shell 开发者
ROS2教程08 ROS2的功能包、依赖管理、工作空间配置与编译
这篇文章是关于ROS2(Robot Operating System 2)中功能包、依赖管理、工作空间配置和编译的教程,涵盖了ROS2工作空间的概念、如何获取和安装功能包的依赖、构建工作空间的步骤,以及如何创建和管理ROS2功能包,包括使用命令行工具对功能包进行操作的方法。
2142 0
ROS2教程08 ROS2的功能包、依赖管理、工作空间配置与编译
|
小程序 开发者
关于微信小游戏的备案,你需要的事
关于微信小游戏的备案,你需要的事
636 0
|
存储 前端开发 安全
【JavaWeb】手把手教你做一个用户登录注册案例(三)
【JavaWeb】手把手教你做一个用户登录注册案例(三)
|
NoSQL 小程序 Java
微信开发框架WxJava之微信公众号开发的入门使用篇
WxJava是一款基于Java语言的微信开发Java SDK,它提供了微信支付,开放平台,小程序,企业微信,公众号等多个平台的API接口,并将其封装为易于调用的Java方法,方便Java开发者快速开发与微信相关的应用。
5823 1