回答

收藏

[评测分享] 【树莓派5测评】 05.GPIO操作1

#板卡评测 #板卡评测 2478 人阅读 | 0 人回复 | 2024-03-17

本帖最后由 stm1024 于 2024-3-17 13:36 编辑

又到了广大人民群众喜闻乐见的点灯环节了。
先说点题外话。一般采用A系列控制器,一般对外设的侧重点不是很强,更多的是跑算法和应用,一般也就串口通讯,主要是使用以太网或者USB通讯,HDMI等显示。但是树莓派作为全能型选手表示我全都要,不光这些有,而且一般微控制器上的什么UART,I2C,SPI,CAN等,也是支持的。
先看看经典的40 PIN针脚定义,这么多代的更迭,40PIN定义基本上没有变化,甚至还形成了树莓派HAT(Hardware Attached on Top),虽然有消息表示树莓派5以后可能会支持HAT+,不过目前来看HAT应该还是可以使用的,以下是4的定义(5的没找到):




我们可以在终端中输入pinout,查看其针脚定义:


在以后万一出现了与文档不一致时,以这个命令显示的结果为准。


可以看到,针脚号和GPIO通道号,并不一致,例如,17号GPIO口,其针脚号为11。其中11是物理针脚,而17是逻辑针脚,在接线的时候需要连接11,但是在操控时,则需要控制17号通道。可以将LED的正极接在11号针脚上,然后将负极连接在9号针脚(GND)上,注意LED的电压范围,最好串联一个合适的电阻,避免LED被烧坏。


搞清除了硬件以后,再看看软件环境。目前树莓派5官方只给出只能只用GPIO ZERO库,该库是基于Python的,已被系统自带,所以可以放心使用。

我们可以先看看系统中安装的Python,在终端中输入python,显示如下:


可以看到使用的是Python3.11,次版本号多少并不太重要,重要的是主版本号是Python3,而不是Python2,输入quit()先退出再说。

打开编辑器Geany:


然后输入如下代码:

  1. from gpiozero import LED
  2. from time import sleep
  3. led = LED(17)
  4. while True:
  5.     led.on()
  6.     print("LED ON")
  7.     sleep(1)
  8.     led.off()
  9.     print("LED OFF")
  10.     sleep(1)
复制代码
务必注意Python坑爹的缩进,保存为test.py,然后点击工具栏上的那个纸飞机,就可以运行了:


实测效果如下:


接下来,开发板就可以吃灰了(
分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条