【物聯網】基于樹莓派的物聯網開發【16】——樹莓派GPIO控制LED燈實驗

場景介紹

掌握GPIO引腳連接雙色LED模塊,編寫Python程序代碼,實現GPIO控制點亮雙色LED燈!

窗口查看引腳編號

1、在終端輸入指令:pinout
在這里插入圖片描述
2、使用樹莓派輸入gpio readall命令查看pin狀態
輸入以下命令安裝Git

sudo apt install git-core

安裝樹莓派的Wiring Pi庫函數
樹莓派要操作GPIO口也是需要借用庫函數來實現的,名稱叫做Wiring Pi,它使用C和C++開發并且可以被python、ruby或者PHP等其他語言包轉。
樹莓派的官方系統是沒有自帶Wiring Pi庫的,需要我們自行安裝
輸入以下命令,將 WiringPi 文件下載到樹莓派系統的當前目錄

sudo git clone https://github.com/WiringPi/WiringPi

耐心等待其安裝完成。下載完成后,我們可以在當前目錄下看到一個WiringPi文件夾。
● 輸入以下命令進入 WiringPi 文件夾目錄。

cd WiringPi

● 輸入以下命令安裝 WiringPi。

sudo ./build

在這里插入圖片描述
耐心等待安裝完成,當我們看到下面的界面沒有任何錯誤時候,就意味著安裝完成。
3、查看gpio版本,控制臺輸入如下命令:

gpio -v

在這里插入圖片描述

最后,我們可以看到樹莓派各個管腳的狀態,輸入指令:

gpio readall

在這里插入圖片描述

4、使用RPi.GPIO模塊

RPi.GPIO是Python的一個模塊,樹莓派默認已經安裝了該模塊。下面介紹如何使用Python的RPi.GPIO模塊控制GPIO。

1、導入RPi.GPIO模塊

import RPi.GPIO as GPIO

2、設置指定模式(強制)管腳編號

GPIO.setmode(GPIO.BOARD)  #物理引腳編碼

3、設置禁用警告
如果GRIO檢測到一個引腳已經被設置成了非默認值,可以使用setwarnings()關閉警告信息。

GPIO.setwarnings(False)

4、設置引腳輸入和輸出
要將通道配置為輸入:

GPIO.setup(channel, GPIO.IN)

要將通道設置為輸出,請調用:

GPIO.setup(channel, GPIO.OUT)

為輸出通道指定一個初始值:

GPIO.setup(channel, GPIO.OUT, initial=GPIO.HIGH)

將通道設置為輸出時,同時設置多個通道:

channels = [18, 12, 13]

要讀取通道的值:

GPIO.input(channel)  #返回 GPIO.LOW 或 GPIO.HIGH。

要設置配置為輸出的引腳的值:

GPIO.output(channel, state)

其中狀態可以是 GPIO.LOW 或 GPIO.HIGH。
還可以輸出到通道列表或元組:

channels = [18, 12, 13] 

5、清理所有使用的通道
在程序結束時,最好清理通道,以便將所有引腳設置為默認狀態。

GPIO.cleanup()

控制雙色IED燈實驗

硬件材料

1、樹莓派4B
2、雙色LED燈模塊
3、GPIOT型擴展
4、面包板
5、杜邦線
6、Python程序

雙色LED燈原理圖

在這里插入圖片描述

雙色IED燈接線圖

在這里插入圖片描述

安裝FileZilla軟件

在這里插入圖片描述

打開mu編輯器,編寫python控制LED代碼

在這里插入圖片描述

Python控制GPIO的幾個主要操作:

導入RPi.GPIO模塊:

import RPi.GPIO as GPIO

設置引腳編碼模式:

GPIO.setmode(GPIO.BOARD)/GPIO.setmode(GPIO.BCM)

設置引腳的操作模式(即輸出還是輸入) :

GPIO.setup(2, GPIO.OUT)/GPIO.setup(2, GPIO.IN)

設置引腳的高低電平:

GPIO.output(2, GPIO.HIGH)/GPIO.output(2, GPIO.LOW)

運行Python程序在這里插入圖片描述

點擊運行按鈕后,會看到LED燈閃爍變色,每隔幾秒切換燈光顏色。
在這里插入圖片描述
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/90311.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/90311.shtml
英文地址,請注明出處:http://en.pswp.cn/web/90311.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

低延遲網絡中 gRPC 客戶端的隱藏瓶頸及解決方案

低延遲網絡中 gRPC 客戶端的隱藏瓶頸及解決方案 在分布式系統性能優化領域,有一句名言:"優化非瓶頸環節都是徒勞"(Eliyahu M. Goldratt)。gRPC 作為廣泛使用的高性能服務間通信框架,在特定場景下也會出現容易被忽略的客戶端瓶頸。本文將解析這一問題的本質、復現…

打印機因為網絡問題不能用,接到交換機后解決

之前的問題可參考: 打印機不能用:網絡能ping通,并不表示網絡正常好用_能ping通打印機卻打印錯誤-CSDN博客 今天同事要打印個東西,問我打印機能不能用。我就奇怪了:之前不是好好的嗎?一問,現在…

ubuntu22.04 錄視屏軟件推薦

4. VokoscreenNG功能:VokoscreenNG 是一個多功能的桌面錄屏工具,支持錄制整個屏幕、特定區域、窗口,并可以錄制系統聲音和麥克風。安裝:sudo apt update sudo apt install vokoscreen-ng優點:界面友好,操作…

1、黑馬點評復盤(短信登錄-Session或Redis實現)

短信登錄分別使用session和redis實現 1、基于Session實現登錄 主要功能: 發送驗證碼短信驗證碼登錄、注冊校驗登錄狀態 1.1 實現發送短信驗證碼功能 1.1.1 業務邏輯 用戶在提交手機號后,會校驗手機號是否合法,如果不合法,則要求…

文件管理困境如何破?ZFile+cpolar打造隨身云盤新體驗

文章目錄前言【視頻教程】1.關于ZFile2.本地部署ZFile3.使用ZFile4.ZFile的配置5.cpolar內網穿透工具安裝6.創建遠程連接公網地址7.固定ZFile公網地址前言 每天的數字生活如同在數據海洋中航行,工作文檔、旅行照片、學習資料…這些重要資產是否總讓你感到難以掌控&…

開源數據庫E-R圖繪制工具分享

1. 特點: 可直接使用,無需注冊賬號 無狀態的純前端工具,數據會存放在瀏覽器中。設計完成后可將數據保存到本地 2. 使用場景: 描述E-R圖,對數據庫表關系進行直觀分析 3. 效果: 4. 測試數據 用來測試的建…

安卓 Audio Thread 分析

一、PlaybackThread::threadLoop_write 1.變量 mFramesWritten 類型: int64_t 作用: 記錄從線程啟動以來已寫入音頻設備的幀數(不包括掛起狀態下的寫入) mSuspendedFrames 類型: int64_t 作用: 記錄線程在掛起(suspended)狀態下模…

JavaWeb_原始項目初識(一)

Students2025項目(一) 原始ServletJSP架構項目初步搭建 jsp項目已被淘汰,在此學習目的是了解未來學習的新技術的底層原理項目結構:項目結構介紹: 目前階段只完成了初始化的后端搭建,實現從本地數據庫獲取數…

前端_CSS復習

文章目錄CSS復習1. css三種引入方式1.1 行內樣式常用樣式:1.2頁內樣式常見選擇器:1. 標記選擇器2. id選擇器3. 類選擇器(最常用)4. 星號選擇器,頻率很低5. 復合選擇器6. 偽類選擇器:7. 子元素偽類1.3引入外…

工業互聯網時代,如何通過混合SD-WAN提升煤炭行業智能化網絡安全

1. 背景:煤炭行業智能化轉型的網絡挑戰隨著工業互聯網技術的普及,煤炭行業智能化轉型進入加速期。選煤廠作為煤炭生產的核心環節,需要構建一套既安全又高效的網絡系統,以滿足工業控制系統(ICS)、智能設備和…

AI浪潮下數據中心的突圍者:臺達DPH Gen3系列UPS如何重構供電架構

2025年6月13日,臺達-中達電通資通訊基礎設施事業部聯合中國數據中心工作組(CDCC)在江蘇吳江舉辦"數據中心供配電技術革新與AI算力基礎設施未來展望研討會",同時開展CDCC專家組工廠參觀。盛會匯聚了數據中心行業專家、互…

DiffServ服務模型與DS碼點詳解

1. DiffServ概述 DiffServ(Differentiated Services,差異化服務)是IETF定義的一種QoS(Quality of Service)體系結構,旨在為IP網絡提供可擴展的服務區分能力。與傳統的IntServ(集成服務)模型不同,DiffServ采用簡單、粗粒度的流量分類機制&…

基于 PIC16 系列的多功能電子煙(溫控 + 電壓控制 + 多模式)方案

基于 PIC16 系列的多功能電子煙(溫控 電壓控制 多模式)方案 一、芯片與最小系統推薦型號:PIC16F18313/18323 8-bit 內核,14/20-pin 小封裝,成本低28 MHz 內部振蕩,帶 10-bit ADC(12 通道&…

小模數齒輪的加工方法有哪些?

小模數齒輪(一般指0.3≤Mn≤1)的加工方法有哪些呢?小模數齒輪的加工方法主要分為減材、增材、變形加工三類: 去材料制造 有銑齒、滾齒、插齒、刨齒、剃齒、拉齒、沖齒、研磨、珩齒、磨齒及其拋光、線切割等。 增材制造 有注塑(塑料、尼龍&…

若依前后端分離版學習筆記(二)——系統菜單介紹

前言: 這一節是將ruoyi的前端界面過一遍,查看所有系統菜單及頁面功能,為后續代碼學習做準備。(注意:文中包含大量截圖,截圖為從本地啟動的3.9.0 vue3的前端界面。) 一 系統管理 1 用戶管理 主要…

VRRP技術-設備備份技術

一、VRRP的概念及應用場景1.定義在 VRRP(虛擬路由冗余協議)中,將多個路由器邏輯上看作一個路由器時所使用的虛擬 IP 地址,需要滿足以下要求:這個虛擬 IP 地址必須與該 VRRP 組內所有物理路由器的接口 IP 地址處于同一網…

VUE2 學習筆記5 動態綁定class、條件渲染、列表過濾與排序

動態綁定class樣式&#xff1a;先設置css&#xff1a;<style>.styleBackgroundColor{background-color: aqua;}.styleContent{width:300px;height: 200px;}.styleBorder{border: 2px black solid;}</style>vue模版中&#xff0c;使用動態類名綁定&#xff0c;一般可…

推客系統全棧開發指南:從架構設計到高并發實戰

一、推客系統概述與市場前景推客系統&#xff08;也稱為"推客營銷系統"或"社交電商系統"&#xff09;是近年來快速崛起的社交化營銷工具&#xff0c;它通過整合社交網絡與電子商務功能&#xff0c;讓每個用戶都能成為產品的推廣者并獲得相應獎勵。市場數據…

RabbitMQ有多少種Exchange?

面試回答模板 “RabbitMQ 在 AMQP 協議中預定義了 四種常用交換機 兩種特殊類型&#xff0c;共 6 種&#xff1a; Direct&#xff1a;routing-key 全等匹配&#xff1b;Fanout &#xff1a;廣播&#xff0c;忽略 key&#xff1b;Topic&#xff1a;按 *.# 通配符匹配&#xff1…

ctfshow pwn43

1. 分析程序首先檢查程序相關保護&#xff0c;發現程序為32位且只開啟了一個NX保護checksec pwn使用IDA進行逆向分析代碼&#xff0c;查看漏洞觸發點&#xff1a;在main函數中&#xff0c;有一個ctfshow函數&#xff0c;這里我們跟進ctfshow()發現存在一個gets()函數&#xff0…