0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用树莓派的GPIO引脚创建开关电路

454398 来源:wv 2019-10-22 11:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:您需要做什么

-已安装Raspbian的 RaspberryPi 。您还需要能够使用监视器,鼠标和键盘或通过远程桌面访问树莓派。您可以使用任何型号的Raspberry Pi。如果您使用的是Pi Zero模型之一,则可能需要将一些接头引脚焊接到GPIO端口

-红色LED

-3 x触动按钮开关

-无焊原型电路板

-4 x 330欧姆电阻器

-3 x 1 Kohm电阻

-某些公对母跳线

第2步:构建电路

在面包板上构建上述电路,确保没有

如果仔细观察一下LED,就会发现在彩色外壳内有两小块金属。这些被称为阳极和阴极。阴极是两者中最大的阴极,也连接到LED的负极引线。

确保正确连接交换机。如果仔细看一下交换机,您会发现交换机的任一侧都安装了两个支脚。当开关处于打开位置(即未按下)时,两侧之间的电路将断开。当开关处于关闭位置(即按下)时,两侧之间的电路将完成。

检查完电路后,请按照上图连接Raspberry Pi的GPIO引脚的跨接电缆。

第3步:创建一个Python脚本来响应按钮的按下

打开 IDLE 您的Raspberry Pi(菜单》编程》 Python 2(IDLE))。

现在打开一个新项目(文件》新建文件)并键入以下内容:

import RPi.GPIO as GPIO

import time

SwitchA=17

SwitchB=18

SwitchC=27

LED=22

GPIO.setmode(GPIO.BCM)

GPIO.setup(SwitchA, GPIO.IN)

GPIO.setup(SwitchB, GPIO.IN)

GPIO.setup(SwitchC, GPIO.IN)

GPIO.setup(LED, GPIO.OUT)

while True:

if GPIO.input(SwitchA)==True:

print(“You are pressing button A”)

if GPIO.input(SwitchB)==True:

print(“You are pressing button B”)

GPIO.output(LED, True)

if GPIO.input(SwitchC)==True:

print(“You are pressing button C”)

GPIO.output(LED, False)

在Raspberry Pi的“文档”文件夹中将项目另存为 buttons.py (文件》另存为)。

在Raspberry Pi上,打开“终端”(菜单》附件》终端),然后导航至通过键入以下内容来打开“文档”文件夹:

cd /home/pi/Documents

现在,您可以通过键入以下内容来运行新脚本:

python buttons.py

当您按下第一个按钮,消息“您正在按按钮A”将在屏幕上重复显示,直到您停止按按钮为止。

当您按下第二个按钮时,类似的消息也会出现在屏幕上,并且LED也会亮起。

当您按下第三个按钮时,将出现类似的消息,并且LED会熄灭。

您可以通过按CTRL + Z停止运行该程序。

脚本的工作方式

第11-13行使用 GPIO.setup 将GPIO引脚设置为输入引脚。命令:

GPIO.setup(SwitchA, GPIO.IN)

然后脚本使用 GPIO.input 命令来检测引脚为True(即,连接+ 3.3v电源时)还是False。 (即,当引脚接地时):

if GPIO.input(SwitchA)==True:

为确保Raspberry Pi不断检查引脚的状态,脚本还使用了 While循环重复运行脚本的同一部分:

while True:

while 命令通常后跟一个条件(例如x == 1)和一个冒号( “”)。该命令之后的任何缩进代码都将重复执行,直到不再满足该条件为止。但是,在上面的脚本中,我们只写了 True 而不是条件。这将确保脚本可以连续运行,直到按下CTRL + Z或Raspberry Pi掉电为止。

通过将第17行更改为包含以下条件语句,该脚本将在按下第三个按钮时停止循环:

while GPIO.input(SwitchC)==False:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开关电路
    +关注

    关注

    62

    文章

    565

    浏览量

    68108
  • 树莓派
    +关注

    关注

    122

    文章

    2069

    浏览量

    109713
  • gpio引脚
    +关注

    关注

    0

    文章

    10

    浏览量

    2781
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何使用树莓与OpenCV实现面部和运动追踪的云台系统?

    大家好,这是一个树莓和OpenCV的连载专题。使用树莓与OpenCV实现姿态估计和面部特征点追踪使用树莓
    的头像 发表于 08-14 17:45 970次阅读
    如何使用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>与OpenCV实现面部和运动追踪的云台系统?

    技能+1!如何在树莓派上使用C++控制GPIO

    和PiGPIO等库,C++可用于编程控制树莓GPIO引脚。它提供了更好的性能和控制能力,非常适合对速度和精度要求较高的硬件项目。在树莓
    的头像 发表于 08-06 15:33 3584次阅读
    技能+1!如何在<b class='flag-5'>树莓</b>派上使用C++控制<b class='flag-5'>GPIO</b>?

    树莓操作系统:版本、特性及设置完整指南!

    树莓操作系统是什么?树莓操作系统是由树莓基金会专为树莓
    的头像 发表于 07-28 18:26 830次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>操作系统:版本、特性及设置完整指南!

    树莓6 传闻:发布日期与规格!

    每当我想再为我的收藏增添一款树莓时,总会在是立即购买还是等待硬件更强大的下一代之间犹豫不决。但新树莓型号的发布往往容易被错过,尤其是在你的信息流被病毒式传播的猫咪视频占据时。因此,
    的头像 发表于 07-11 16:21 1353次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>6 传闻:发布日期与规格!

    你真的懂树莓5嘛?树莓5引脚图全面指南:理解GPIO引脚及其功能!

    树莓5上的GPIO通用输入/输出(GPIO引脚树莓派上的物理连接器,允许
    的头像 发表于 07-04 15:27 2427次阅读
    你真的懂<b class='flag-5'>树莓</b><b class='flag-5'>派</b>5嘛?<b class='flag-5'>树莓</b><b class='flag-5'>派</b>5<b class='flag-5'>引脚</b>图全面指南:理解<b class='flag-5'>GPIO</b><b class='flag-5'>引脚</b>及其功能!

    树莓小技巧:无需键盘或显示器,如何通过WiFi设置树莓

    树莓是一款小巧便携的USB供电计算机,可以隐藏起来用于小型项目,如网络服务器或家庭自动化。通常,设置树莓需要键盘和显示器来编辑和查看树莓
    的头像 发表于 06-26 15:41 1048次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>小技巧:无需键盘或显示器,如何通过WiFi设置<b class='flag-5'>树莓</b><b class='flag-5'>派</b>?

    树莓分类器:用树莓识别不同型号的树莓

    在本教程系列的第一部分中,您将学习如何使用树莓AI摄像头来检测不同的树莓型号。本系列由DavidPlowman创建,他是
    的头像 发表于 06-13 16:39 994次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>分类器:用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>识别不同型号的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>!

    树莓“揪出”家里的耗电怪兽!

    在本应用中,我们将使用树莓设置一个CE电流监测器,并通过网页界面显示电路的电流读数。本项目使用的组件硬件组件树莓2ModelBx112通
    的头像 发表于 06-04 15:33 1145次阅读
    用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>“揪出”家里的耗电怪兽!

    树莓“吉尼斯世界记录”:将树莓的性能发挥到极致的项目!

    树莓是一款功能强大、体积小巧且高度可定制的设备,多年来,我们见证了它被应用于众多领域。无论是将其装入3D打印的经典游戏机外壳,还是简单地将它隐藏起来作为家庭文件服务器,我们都报道过在社区里用树莓
    的头像 发表于 05-22 16:53 1202次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>“吉尼斯世界记录”:将<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的性能发挥到极致的项目!

    树莓 Zero 打造的智能漫游车!

    使用PXFMini和树莓Zero打造您自己的自主漫游车。本项目所用组件硬件组件ErleRoboticsPXFmini×1树莓Zero×1树莓
    的头像 发表于 05-13 16:39 870次阅读
    用 <b class='flag-5'>树莓</b><b class='flag-5'>派</b> Zero 打造的智能漫游车!

    解锁树莓集群:一步步打造你的超级计算阵列!

    树莓集群简介树莓集群是由多台联网的树莓计算机组成的网络,它们作为一个统一、协调的单元协同工
    的头像 发表于 04-25 16:17 1941次阅读
    解锁<b class='flag-5'>树莓</b><b class='flag-5'>派</b>集群:一步步打造你的超级计算阵列!

    基于小凌RK2206开发板:OpenHarmony如何使用IoT接口控制GPIO中断

    1、实验简介本实验将演示如何在小凌-RK2206开发板上使用IOT库的GPIO中断模式,进行GPIO编程开发。例程将创建一个任务,通过配置GPIO
    的头像 发表于 04-21 10:39 894次阅读
    基于小凌<b class='flag-5'>派</b>RK2206开发板:OpenHarmony如何使用IoT接口控制<b class='flag-5'>GPIO</b>中断

    PZT驱动开关电路

    关于PZT的驱动开关电路参考
    发表于 01-17 16:37 1次下载

    GPIO树莓中的应用

    直接控制和读取外部硬件设备的状态。 1. GPIO简介 GPIO树莓派上用于与外部世界交互的一组引脚。这些引脚可以被配置为输入或输出模式,
    的头像 发表于 01-09 09:41 1252次阅读

    BJT开关电路的设计

    BJT(Bipolar Junction Transistor,双极结型晶体管)开关电路的设计涉及多个方面,包括电路的基本结构、工作原理、参数计算以及实际应用中的注意事项等。以下是对BJT开关电路
    的头像 发表于 12-31 16:25 1907次阅读