• 30个物联网传感器小实验:三行代码点亮LED灯

    • 三行代码点亮LED灯
    • LED灯闪烁
    • LED灯调亮度
    • LED淡入淡出
    • 不写一行代码点亮LED灯
    • 全彩RGB灯
    • 面包板

30个物联网传感器小实验:三行代码点亮LED灯

以下所有实验均要求树莓派刷入完整版Raspbian操作系统,也就是官网上Raspbian Stretch with desktop and recommended software的版本。

三行代码点亮LED灯

  • 接线图如下:

  • 代码如下:
from gpiozero import LEDred = LED(17)while True:red.on()
  • 在终端运行python3 LED.on.py即可点亮LED灯!

LED灯闪烁

  • 新建LED.blink.py文件,代码如下:
from gpiozero import LED
from signal import pausered = LED(17)red.blink()pause()

核心在于on()方法改成了blink()方法,再运行python3 LED.blink.py即可闪烁!

LED灯调亮度

  • 新建LED.pwn.py文件,代码如下:
from gpiozero import PWMLED
from time import sleepled = PWMLED(17)while True:led.value = 0  # 全灭sleep(1)led.value = 0.5  # 半亮sleep(1)led.value = 1  # 全亮sleep(1)

核心在于使用的类改为PWMLED,不再是LED类了。在命令行界面运行python3 LED.pwn.py之后,可以看到LED灯全灭、半亮、全亮,间隔1s,交替运行。

LED淡入淡出

  • 新建LED.pulse.py文件,代码如下:
from gpiozero import PWMLED
from signal import pauseled = PWMLED(17)led.pulse()pause()

核心在于使用了pulse()函数,可以观察到led等淡入淡出的效果!

不写一行代码点亮LED灯

  • 在命令行界面使用pinout命令,输出各针脚定义。

  • (2)号口5v电压接1kΩ的电阻,接LED长脚正极,LED负极接(6)号GND地线负极,这样LED灯直接就会点亮,不写一行代码!

全彩RGB灯

  • 红绿蓝分别接GPIO(2)、GPIO(3)、GPIO(4)口,新建RGBLED.py文件,代码如下:
RGBLED.py
from __future__ import division  # required for python 2
from gpiozero import RGBLED
from time import sleepled = RGBLED(red=2, green=3, blue=4)led.red = 1  # full red
sleep(1)
led.red = 0.5  # half red
sleep(1)led.color = (0, 1, 0)  # full green
sleep(1)
led.color = (1, 0, 1)  # magenta
sleep(1)
led.color = (1, 1, 0)  # yellow
sleep(1)
led.color = (0, 1, 1)  # cyan
sleep(1)
led.color = (1, 1, 1)  # white
sleep(1)led.color = (0, 0, 0)  # off
sleep(1)# slowly increase intensity of blue
for n in range(100):led.blue = n/100sleep(0.1)
  • 在命令行界面,运行以上代码python RGBLED.py,则RGBLED灯颜色不断变化,效果如下:

面包板

也称为无焊接面包板,是我们进行物理和电子实验的好帮手,由于其内部集成了走线,从而避免了复杂实验时杂乱无章的飞线。面包上的针脚孔可以轻松地搭配众多带针脚的传感器使用,许多传感器和面包板都包含了配电的部分,使得包含面包板的电路实验设计变得更加容易。一句话总结一下,我们做实验并非一定要用到面包板,但是有个面包板可以使我们事半功倍。

面包板有几个特性:

  • 左右两侧为正负极。正负极下方各有各的金属片,竖排相连。
  • 中间两侧为通用端口,左侧和右侧互不相同。
  • 中间两侧的针孔下方横向相连。

举个例子从从A1到E1是相连接的,从F1J1是相连接的,但是E1F1是不通的。树莓派的5v或者3v3只要接到+级的任何一个孔,整个+级的竖排都会存在相应电压的供电,树莓派的GND-级。下图是一个真实的面包板。

好了,本次介绍就到这里,这个系列的全文会收录在我的github目录,欢迎大家star和沟通:https://github.com/asukafighting/RaspberryPiHacker

转载于:https://www.cnblogs.com/asukafighting/p/10842035.html

30个物联网传感器小实验:三行代码点亮LED灯相关推荐

  1. 30个物联网传感器小实验6:人体感应器

    30个物联网传感器小实验6:人体感应器 HC-SR501 简介 使用方法 感应有人和没人 更多API 30个物联网传感器小实验6:人体感应器 HC-SR501 简介 使用方法 接线方法 感应有人和没人 ...

  2. 30个物联网传感器小实验2:LED灯条、灯板

    30个物联网传感器小实验2:LED灯条.灯板 以下所有实验均要求树莓派刷入完整版Raspbian操作系统,也就是官网上Raspbian Stretch with desktop and recomme ...

  3. STM32F103实验一:点亮LED灯

    STM32F103点亮LED 这条博客是基于正点原子mini板的代码. 创建文件夹.源文件以及设置路径就不讲了,直接附上代码. 库函数配置步骤 在模板中新建文件夹用于存放 led.c 和 led.h文 ...

  4. 和12岁小同志搞创客开发:手撕代码,点亮LED灯

    目录 1.Arduino编程架构 2.点亮LED灯 机缘巧合在网上认识一位12岁小同志,从零开始系统辅导其创客开发思维和技巧. 项目专栏:https://blog.csdn.net/m0_381069 ...

  5. 第一节:C#工业控制编程基础--点亮LED灯实验

    第一节:C#工业控制编程基础–点亮LED灯实验 文章目录 第一节:C#工业控制编程基础--点亮LED灯实验 一.实验目的: C#入门基础学习. 二.实验内容: 用C#控制LED的亮灭. 三.实验步骤: ...

  6. 《STM32从零开始学习历程》——USART串口通讯实验篇2——指令控制LED灯实验

    <STM32从零开始学习历程>@EnzoReventon USART串口通讯实验篇2--指令控制LED灯实验 本实验是在<USART串口通讯实验篇1--中断接收与发送>的基础上 ...

  7. STM32_寄存器版本代码第一篇LED灯

    使用STM32f103C8T6点亮LED小灯 这是第一次写博客,把自己所学分享给大家,欢迎大家评论给出建议,谢谢. 所需设备:STM32f103C8T6最小系统板和Jlink下载器 项目流程 Crea ...

  8. 嵌入式实验-汇编点亮LED 灯

    嵌入式实验-汇编点亮LED 灯 一.实验目的 通过本次实验,使学生能够操作 S5PV210实验平台,搭建并使用交叉编译环境,具备初步的嵌入式裸机平台应用开发能力. 二.实验原理 由原理图可知,点亮 2 ...

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

    [TOC] 点亮LED灯 硬件连接 找一个LED灯,连接如上图,注意长短引脚,经过这些年的狂轰乱炸,大家对于这个应该不漠视,毕竟Arduino都进教材了. 代码 我们先来看图形化的版本: from g ...

最新文章

  1. PCIPCIE MSI中断
  2. Java学习之Hello World 第一个小程序
  3. linux操作这样用视频,Linux下使用mencoder对视频进行操作
  4. python2的idle打不开了
  5. Spark SQL(四)之DataSet与RDD转换
  6. dev多行注释_Python代码注释的用法和意义
  7. java selenium环境安装
  8. emplode php|,字符串的分割/组合/逆序等
  9. 如何在Ruby中编写switch语句
  10. 誰毀了全新Vista電腦﹖
  11. Java学习之JavaWeb篇
  12. DoTween函数汇总
  13. php抽奖幸运,幸运大转盘-jQuery+PHP实现的抽奖程序
  14. postgresql安装报错
  15. 上海万国驾校 科目三考试
  16. 团队管理那点事,OKR绩效、核心人才、面试、技术分享、研发流程
  17. esaywechat 微信公众号jsapi支付
  18. linux如何批量改名,Linux 批量改名之 rename 命令
  19. gitblit中忘记admin密码,怎么办?附详细解决方法和截图
  20. 细思极恐,第三方跟踪器正在获取你的数据,如何防范?

热门文章

  1. BOSS:你连什么是 SQL 注入都不知道,我怎么给你加薪?
  2. 基于KNN算法——手写海伦约会(学习)
  3. Invalidaterect()函数的作用详细解释
  4. Region proposals 是什么?如何提取?
  5. cesium加载geoserver的mvt服务
  6. jS怎么动态命名变量名
  7. 求一元二次方程的解虚数C语言,初学C++新手跪求:用C++编 解一元二次方程 并 结果用复数表示。。...
  8. Python-玩转数据-Pandas练习
  9. pip版本升级和常用操作
  10. win版本caffe源码libcaffe研究