树莓派 Learning 003 — GPIO 001 — 点亮LED

我的树莓派型号:Raspberry Pi 2 Model B V1.1

装机系统:NOOBS v1.9.2

先按照下面这个图 连线:(对于LED,负极的那面内部的铁片很大。)

编写一个让 LED 闪烁的 Python 脚本程序

使用 nano 或者 vim (命令行)文本编辑工具来编写 python 脚本程序。你也可以使用GUI界面的编辑软件,但是我推荐你使用命令行界面里可以使用的编辑工具。

为什么? 因为如果你在你的笔记本电脑或者台式电脑上,使用像 xShell 或者 SectCRT这样的软件来登录树莓派终端时,树莓派里面的 GUI界面的软件 都是不能使用的。你只能使用 命令行里的工具。所以,我们最好适应 命令行里的文本编辑工具(就是 nano 或者 vim 文本编辑工具)。

先新建一个路径:(workspace 的意思是 工作空间。 ”pi_ws“ 就是:树莓派的工作空间。)

cd ~
mkdir workspace/pi_ws/learning_gpio
cd workspace/pi_ws/learning_gpio

使用 nano (命令行)文本编辑工具,新建一个python 脚本文件:blinkled.py

nano blinkled.py

将下面的代码手动输入到blinkled.py 里面:

import RPi.GPIO as GPIO
import time GPIO.setmode(GPIO.BCM)
GPIO.setup(25, GPIO.OUT) while True:
GPIO.output(25, GPIO.HIGH)
time.sleep(0.5)
GPIO.output(25, GPIO.LOW)
time.sleep(0.5)

Ctrl + O 保存文件,然后按 Enter回车键 退出 nano工具。

执行下面的命令,来给 blinkled.py 脚本文件加上 可执行 权限:

sudo chmod +x blinkled.py

运行这个python脚本:

python blinkled.py

LED正常的闪烁。

有的时候你可能会得到下面的警告:(LED还是可以正常闪烁)

blinkled.py:5: RuntimeWarning: This channel is already in use, continuing anyway.  Use GPIO.setwarnings(False) to disable warnings.
GPIO.setup(25, GPIO.OUT)

你可以忽略这个警告。

讲解 blinkled.py 代码

我下面只讲解重点的代码:

import RPi.GPIO as GPIO
import time

导入 RPi.GPIOtime 模块。其中as GPIO 指的是:用 GPIO 来表示 RPi.GPIO

GPIO.setmode(GPIO.BCM)

树莓派的GPIO的命名方式一共有两种:

命名方式 说明
RPi.GPIO.BCM CPU对应的引脚的索引号(下图中的GPIOxx) 命名树莓派的引脚
RPi.GPIO.BOARD 树莓派板子上引脚的索引号(下图中的Pin No.) 命名树莓派的引脚

    time.sleep(0.5)

延时0.5秒。 ”0.5“ 是:0.5秒。

Python 交互式终端中控制 LED 点亮和熄灭

终端 中直接输入:python命令,进入python交互式界面:

pi@raspberrypi:~ $ python
Python 2.7.9 (default, Mar 8 2015, 00:52:26)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

导入 RPi.GPIO 模块。其中as GPIO 指的是:用 GPIO 来表示 RPi.GPIO

>>> import RPi.GPIO as GPIO 

查看 RPi.GPIO 模块的版本号:

>>> GPIO.VERSION
'0.6.2'

在输入点亮 LED 的命令之前,我们需要:

设置 GPIO 的命名规则:

>>> GPIO.setmode(GPIO.BCM)

设置使用的GPIO引脚 为 输出模式

>>> GPIO.setup(25, GPIO.OUT)
__main__:1: RuntimeWarning: This channel is already in use, continuing anyway. Use GPIO.setwarnings(False) to disable warnings.

如果你也会遇到我上面出现的这个警告,没有没有关系,你可以忽略这个警告。

点亮 LED,当你执行完下面这条命令后, LED 就会被点亮:

>>> GPIO.output(25, GPIO.HIGH)

熄灭 LED

>>> GPIO.output(25, GPIO.LOW)

树莓派 Learning 003 --- GPIO 001 --- 点亮LED的更多相关文章

  1. 树莓派 Learning 003 --- GPIO 000 --- GPIO引脚图

    树莓派 Learning 003 - GPIO 000 - GPIO引脚图 我的树莓派型号:Raspberry Pi 2 Model B V1.1 装机系统:NOOBS v1.9.2 Raspberr ...

  2. 【蓝牙低功耗BLE】控制GPIO来点亮LED

    这节讲一下最简单的,也是最基础的东西.CC2540的IO操作,把PORT口当做GPIO来用,废话不多说,往下看. 1.硬件电路 硬件电路时最简单的,用一根GPIO去控制LED灯.因为GPIO作为out ...

  3. [IOT] - 使用 .Net Core 操作 GPIO 引脚点亮 LED 灯泡

    1. 在 VS 2019 中创建 .Net Core 控制台应用程序,使用 Nuget 安装程序包: System.Device.GpioIot.Device.Bindings 2. 更新 Main ...

  4. 树莓派GPIO控制RGB彩色LED灯

    树莓派GPIO通过PWM来控制RGB彩色LED灯,可以显示任何我们想要的颜色. RGB模块简介 这个RGB彩色LED里其实有3个灯,分别是红灯.绿灯和蓝灯.控制这三个灯分别发出不同强度的光,混合起来就 ...

  5. 树莓派点亮LED灯需要几行代码?3行。小孩子都能学会

    目录 点亮LED灯 硬件连接 代码 闪烁的LED灯 呼吸灯 其他 点亮LED灯 硬件连接 找一个LED灯,连接如上图,注意长短引脚,经过这些年的狂轰乱炸,大家对于这个应该不漠视,毕竟Arduino都进 ...

  6. 第11章 GPIO输出—使用固件库点亮LED

    第11章     GPIO输出—使用固件库点亮LED 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku. ...

  7. 第11章 GPIO输出-使用固件库点亮LED—零死角玩转STM32-F429系列

    第11章     GPIO输出—使用固件库点亮LED 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku. ...

  8. GPIO 输出—使用固件库点亮 LED

    编程要点 1. 使能 GPIO 端口时钟:  2. 初始化 GPIO 目标引脚为推挽输出模式:  3. 编写简单测试程序,控制 GPIO 引脚输出高.低电平. LED的电路图 过程: 1.拷贝一个库函 ...

  9. 使用寄存器点亮LED(第1节)—GPIO功能框图讲解

    GPIO简介 GPIO 是通用输入输出端口的简称,简单来说就是 STM32 可控制的引脚, STM32 芯片的 GPIO 引脚与外部设备连接起来,从而实现与外部通讯.控制以及数据采集的功能.STM32 ...

随机推荐

  1. Oracle数据库体系结构(2)数据库实例

    Oracle实例的概念: 实例(Instance):就是数据库管理系统,处于用户与物理数据库之间的一个中间层软件,由一系列内存结构和后台进程组成. 用户操作数据库的过程实质上与数据库实例建立连接,然后 ...

  2. io.js的六大新特性

    io.js是nodejs的友好版的分支("friendly fork”).它支持npm中所有的同样模块,且使用了v8最新版本的截取(v8是被node.js使用js解释器),且修复了很多的bu ...

  3. python基础-循环语句for\嵌套循环

    for循环格式: for index in range(0,3):#等同于range(3),取0\1\2 print(index) index = 0 starnames = ['xr1','xr2' ...

  4. Python基础-MD5加密

    import hashlibm = hashlib.md5()#构造一个md5 m.update(b"Hello")#加密前必须转化成二进制字节类型print(m.hexdiges ...

  5. 大数据_学习_01_Hadoop 2.x及hbase常用端口及查看方法

    二.参考资料 1.Hadoop 2.x常用端口及查看方法

  6. 一种解决 MacBook 里的 App Store 无法登录的问题

    刚刚买回来的 2018 款带有 touchbar 的 MacBook Pro 15 inc 在用 App Store 安装 app 时一直无法登录成功(网络链接都是好的),导致软件都无法更新,折腾了挺 ...

  7. leetcode 204. Count Primes(线性筛素数)

    Description: Count the number of prime numbers less than a non-negative number, n. 题解:就是线性筛素数的模板题. c ...

  8. conda 里的 jupyter

    1. 安装conda https://mirrors.tuna.tsinghua.edu.cn/anaconda/ 下载并安装. 2. 安装jupyter (1)在ananconda主环境安装:pip ...

  9. Java中数学计算的相关方法

    1:Math类 2.BigInteger类  3.BigDecimal类 BigInteger bi = new BigInteger("12433241123"); BigDec ...

  10. 【IPC通信】key_t键和ftok函数

    System V IPC分为三种: System V消息队列 System V信号量 System V共享内存区 这三种类型的IPC使用key_t值做为它们的名字. key_t这个数据类型在<s ...