色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

怎樣用Tkinter控制樹莓派GPIO引腳

454398 ? 來源:工程師吳畏 ? 2019-08-02 17:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

對于這個項目,你需要:

Raspberry Pi

2 x LED

跳線電纜

面包板

電路圖和說明

電路圖非常簡單。我們只需要使用220歐姆電阻將兩個LED連接到Raspberry Pi上的GPIO 20和21。將引腳連接到每個LED的正極,并將每個LED的負極與220歐姆電阻連接到地。

怎樣用Tkinter控制樹莓派GPIO引腳

完整的Python代碼

用于控制Raspberry Pi的GPIO的Python代碼通過GUI應用程序的引腳可以在下面找到。將此代碼復制并粘貼到新文件中,并使用文件擴展名保存:.py(例如,GUItest.py)。確保您位于同一目錄中,然后使用命令 python GUItest.py 從終端運行程序。

import Tkinter as tk

import RPi.GPIO as GPIO

from time import sleep

GPIO21 = 21

GPIO20 = 20

GPIO.setmode(GPIO.BCM)

GPIO.setup(GPIO21, GPIO.OUT)

GPIO.setup(GPIO20, GPIO.OUT)

master = tk.Tk()

master.title(“GPIO Control”)

master.geometry(“300x100”)

GPIO21_state = True

GPIO20_State = True

def GPIO21button():

global GPIO21_state

if GPIO21_state == True:

GPIO.output(GPIO21, GPIO21_state)

GPIO21_state = False

ONlabel = tk.Label(master, text=“Turned ON”, fg=“green”)

ONlabel.grid(row=0, column=1)

else:

GPIO.output(GPIO21, GPIO21_state)

GPIO21_state = True

ONlabel = tk.Label(master, text=“Turned OFF”, fg=“red”)

ONlabel.grid(row=0, column=1)

def GPIO20button():

global GPIO20_State

if GPIO20_State == True:

GPIO.output(GPIO20, GPIO20_State)

GPIO20_State = False

OFFlabel = tk.Label(master, text=“Turned ON”, fg=“green”)

OFFlabel.grid(row=1, column=1)

else:

GPIO.output(GPIO20, GPIO20_State)

GPIO20_State = True

OFFlabel = tk.Label(master, text=“Turned OFF”, fg=“red”)

OFFlabel.grid(row=1, column=1)

ONbutton = tk.Button(master, text=“GPIO 21”, bg=“blue”, command=GPIO21button)

ONbutton.grid(row=0, column=0)

OFFbutton = tk.Button(master, text=“GPIO 20”,bg=“blue” , command=GPIO20button)

OFFbutton.grid(row=1, column=0)

Exitbutton = tk.Button(master, text=“Exit”,bg=“red”, command=master.destroy)

Exitbutton.grid(row=2, column=0)

master.mainloop()

代碼演練

讓我們來看看代碼,看看每個部分的作用整個項目。

首先,我們為這個項目導入了所需的庫。 Tkinter庫幫助我們創建了GUI應用程序,RPi.GPIO庫控制著Raspberry Pi的GPIO引腳。

import Tkinter as tk

import RPi.GPIO as GPIO

from time import sleep

然后我們使用BCM引腳編號為我們的LED初始化了GPIO引腳21和20,將這些引腳聲明為輸出。

GPIO21 = 21

GPIO20 = 20

GPIO.setmode(GPIO.BCM)

GPIO.setup(GPIO21, GPIO.OUT)

GPIO.setup(GPIO20, GPIO.OUT)

之后,我們創建了Tk根小部件。只能有一個根小部件,它必須在任何其他小部件之前創建。

然后我們重命名該窗口的標題并定義其大小。

master = tk.Tk()

master.title(“GPIO Control”)

master.geometry(“300x100”)

當GPIO按下21按鈕,它將查找以前的狀態。如果前一個狀態為真(高狀態),它將使其為假(低狀態),反之亦然。

按鈕旁邊還有一個標簽,告訴我們LED是否為高電平或LOW。

def GPIO21button():

global GPIO21_state

if GPIO21_state == True:

GPIO.output(GPIO21, GPIO21_state)

GPIO21_state = False

ONlabel = tk.Label(master, text=“Turned ON”, fg=“green”)

ONlabel.grid(row=0, column=1)

else:

GPIO.output(GPIO21, GPIO21_state)

GPIO21_state = True

ONlabel = tk.Label(master, text=“Turned OFF”, fg=“red”)

ONlabel.grid(row=0, column=1)

GPIO 20按鈕的工作方式類似:

def GPIO20button():

global GPIO20_State

if GPIO20_State == True:

GPIO.output(GPIO20, GPIO20_State)

GPIO20_State = False

OFFlabel = tk.Label(master, text=“Turned ON”, fg=“green”)

OFFlabel.grid(row=1, column=1)

else:

GPIO.output(GPIO20, GPIO20_State)

GPIO20_State = True

OFFlabel = tk.Label(master, text=“Turned OFF”, fg=“red”)

OFFlabel.grid(row=1, column=1)

最后,我們創建了三個按鈕。其中兩個控制GPIO引腳20和21,第三個是退出按鈕。

ONbutton = tk.Button(master, text=“GPIO 21”, bg=“blue”, command=GPIO21button)

ONbutton.grid(row=0, column=0)

OFFbutton = tk.Button(master, text=“GPIO 20”,bg=“blue” , command=GPIO20button)

OFFbutton.grid(row=1, column=0)

Exitbutton = tk.Button(master, text=“Exit”,bg=“red”, command=master.destroy)

Exitbutton.grid(row=2, column=0)

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 樹莓派
    +關注

    關注

    121

    文章

    2022

    瀏覽量

    107560
  • gpio引腳
    +關注

    關注

    0

    文章

    8

    瀏覽量

    2727
收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    你真的懂樹莓5嘛?樹莓5引腳圖全面指南:理解GPIO引腳及其功能!

    樹莓5上的GPIO通用輸入/輸出(GPIO引腳樹莓派上的物理連接器,允許
    的頭像 發表于 07-04 15:27 ?757次閱讀
    你真的懂<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>及其功能!

    樹莓分類器:樹莓識別不同型號的樹莓

    在本教程系列的第一部分中,您將學習如何使用樹莓AI攝像頭來檢測不同的樹莓型號。本系列由DavidPlowman創建,他是樹莓
    的頭像 發表于 06-13 16:39 ?449次閱讀
    <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><b class='flag-5'>派</b>!

    樹莓“揪出”家里的耗電怪獸!

    在本應用中,我們將使用樹莓設置一個CE電流監測器,并通過網頁界面顯示電路的電流讀數。本項目使用的組件硬件組件樹莓2ModelBx112通道20安培電流監測
    的頭像 發表于 06-04 15:33 ?732次閱讀
    <b class='flag-5'>用</b><b class='flag-5'>樹莓</b><b class='flag-5'>派</b>“揪出”家里的耗電怪獸!

    樹莓“吉尼斯世界記錄”:將樹莓的性能發揮到極致的項目!

    樹莓是一款功能強大、體積小巧且高度可定制的設備,多年來,我們見證了它被應用于眾多領域。無論是將其裝入3D打印的經典游戲機外殼,還是簡單地將它隱藏起來作為家庭文件服務器,我們都報道過在社區里
    的頭像 發表于 05-22 16:53 ?666次閱讀
    <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 ?456次閱讀
    <b class='flag-5'>用</b> <b class='flag-5'>樹莓</b><b class='flag-5'>派</b> Zero 打造的智能漫游車!

    樹莓4 打造專屬流媒體控制臺!

    樹莓體驗DIY智能科技!如今市面上有各種各樣的流媒體控制臺,但購買現成的哪有自己從零開始制作的有趣呢?至少,這似乎是樹莓
    的頭像 發表于 05-11 08:33 ?203次閱讀
    <b class='flag-5'>用</b> <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>4 打造專屬流媒體<b class='flag-5'>控制</b>臺!

    GPIO樹莓中的應用

    直接控制和讀取外部硬件設備的狀態。 1. GPIO簡介 GPIO樹莓派上用于與外部世界交互的一組引腳。這些
    的頭像 發表于 01-09 09:41 ?864次閱讀

    樹莓傳感器使用方法 樹莓 Raspberry Pi 4優缺點

    開發和物聯網應用。以下是一些基本的樹莓傳感器使用方法: 1. 連接傳感器 GPIO引腳樹莓
    的頭像 發表于 12-06 10:35 ?2168次閱讀

    使用樹莓實現遠程控制的技巧

    樹莓是一款功能強大的微型計算機,其體積小巧、價格低廉,非常適合用于各種DIY項目。其中,遠程控制樹莓應用中非常受歡迎的一個領域。通過遠
    的頭像 發表于 11-11 11:37 ?1422次閱讀

    樹莓開發的最佳編程語言選擇

    應用。 1. Python 優勢: 易學易用: Python以其簡潔的語法和強大的功能而聞名,非常適合初學者。 廣泛的庫支持: Python擁有大量的庫,如GPIO Zero、PiGPIO等,這些庫使得控制樹莓
    的頭像 發表于 11-11 11:34 ?2069次閱讀

    樹莓gpio有什么,樹莓gpio接口及編程方法

    /Output,通用輸入/輸出)是樹莓提供的一組可編程的引腳,是樹莓與外部世界進行交互的重要橋梁。通過
    的頭像 發表于 10-22 18:09 ?2747次閱讀

    什么是樹莓樹莓是什么架構的

    什么是樹莓 樹莓(Raspberry Pi,簡寫為RPi,別名為RasPi/RPI)是由英國“Raspberry Pi 慈善基金會”開發的一款為學習計算機編程教育而設計的微型電腦。
    的頭像 發表于 10-22 17:33 ?5919次閱讀

    樹莓和單片機的優缺點是什么

    (Raspberry Pi) 優點: 強大的處理能力 :樹莓配備了高性能的CPU和GPU,可以運行復雜的操作系統,如Linux和Windows 10 IoT Core。 豐富的擴展性 :通過GPIO(通用輸入輸出
    的頭像 發表于 08-30 18:21 ?2954次閱讀

    樹莓4b風扇插哪個引腳

    樹莓4B驅動風扇時,風扇可以插接的引腳主要取決于風扇的類型和所使用的控制方法。以下是一些常見的風扇插接引腳情況: 1. 直接連接法 對于簡
    的頭像 發表于 08-30 16:53 ?4015次閱讀

    樹莓gui開發什么ide

    樹莓(Raspberry Pi)是一款功能強大的微型計算機,可以運行多種操作系統,如Raspbian、Ubuntu等。在樹莓派上進行GUI(圖形用戶界面)開發,可以使用多種集成開發環境(IDE
    的頭像 發表于 08-30 16:49 ?1826次閱讀
    主站蜘蛛池模板: 6080伦理久久亚洲精品 | 99久酒店在线精品2019 | 午夜国产高清精品一区免费 | 老师你奶真大下面水真多 | 久久婷婷五月综合色情 | 三男强一女90分钟在线观看 | 成人免费看片又大又黄 | 国产麻豆剧看黄在线观看 | 精品国产在线观看福利 | 日产亚洲一区二区三区 | 丝瓜视频在线免费 | 毛片免费观看视频 | 亚洲第一色网 | 奇米狠狠干| 狠狠色丁香婷婷久久综合 | 久久综合狠狠综合久久综合88 | 久久精品视频在线看99 | 亚洲精品AV一二三区无码 | 直插下身完整的欧美版 | 国产午夜精品鲁丝片 | 德国美女密密麻麻浓毛 | 一品道门免费高清视频 | 理论片87福利理论电影 | 亚洲精品国产自在在线观看 | 国产剧情在线精品视频不卡 | 精品人妻伦一二三区久久AAA片 | 失禁 调教 刺激 哭喊男男 | 99国产这里只有精品视频 | 我不卡影院手机在线观看 | 暖暖 免费 高清 日本视频5 | 区产品乱码芒果精品P站在线 | 搞av.com| 女子叉开腿让男子桶免费软件 | 草草久久久无码国产专区全集观看 | 精品国产福利一区二区在线 | 0951影音在线| 黑人干日本美女 | 国产精品热久久高潮AV袁孑怡 | 亚洲AV综合99一二三四区 | 亚洲色欲国产免费视频 | 91免费永久在线地址 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品