gpio 树莓派3a+_[高级项目] 初识树莓派 GPIO

在一般单片机平台上,控制 GPIO 口是非常容易的。在代码中配置相应的 GPIO 寄存器,即可全权控制 GPIO。

在片上资源较少的情况下,这种 GPIO 控制方式是合理的。但是,当人们需要处理更加复杂的业务时,通常会选用运行嵌入式操作系统的硬件,如 Linux、WinCE 等。操作系统大大简化了复杂应用(程序)开发的成本,但它也在硬件和应用之间插入了所谓的系统调用,避免了应用中的代码直接访问硬件。也就是说,操作系统把硬件和应用分离开了,应用必须通过相应的系统调用才能控制硬件。硬件资源由操作系统统一管理,统一分配,看似操作更复杂了,实则维护了系统的稳定性和安全性。

读者可以借助这一系列文章循序渐进解开树莓派 GPIO 驱动的神秘面纱。

我们假定读者具备一定的 C 语言基础和单片机基础,因为这里不准备讨论 C 语言和单片机的基础知识。

树莓派 GPIO

树莓派从第一代开始,就板载了丰富的 GPIO 接口,包括普通可编程 IO、UART、SPI、IIC 等。

不同版本的树莓派采用的 CPU 型号不一样,一代采用 BCM2835,二代采用 BCM2836,三代采用 BCM2837,而四代则采用了 BCM2711。虽然型号不同,但调用 GPIO 的方式都大同小异,初学者大部分情况下都可以忽略型号差异。

以最新的树莓派 4B 为例,板卡正面有 2x20 P1 接口,管脚编号和功能分布如下:

树莓派官方 Raspbian 系统还内置了 pinout 指令打印当前树莓派的管脚信息,方便在没有参考手册的情况下,快速对照管脚号。

以前的树莓派硬件版本还有 P2、P3 等接口,但随着硬件迭代更新,最新的树莓派 4B 已经没有这些接口了

电源接口

P1 接口有两个 5V 供电口和两个 3.3V 供电口,位置固定,不可编程配置。其余接口都是 3.3V 电压,不可接 5V,否则会烧坏树莓派。

可配置功能

树莓派的许多特定管脚可以设置成第二功能,比如GPIO12, GPIO13, GPIO18, GPIO19 可以设置成 PWM

GPIO14, GPIO15 可设置成串口

GPIO7-10 可设置成 SPI0,GPIO16-21 可设置成 SPI1

GPIO2, GPIO3 可配置成 IIC

当然,实际使用中,如果功能管脚不够用,也完全可以在其他通用管脚上软件模拟这些接口。

参考资料

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值