加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 一、前言
    • 二、硬件連接
    • 三、編寫代碼并運行
    • 四、結(jié)束語
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

樹莓派從零開始快速入門第6講——按鍵輸入

07/06 15:25
1136
閱讀需 4 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

一、前言

上一講介紹了如何點亮一個LED燈,了解了樹莓派的編程方法和運行方式,其實就是控制GPIO輸出。

按照慣例,這一講應(yīng)該要講GPIO的輸入了。

特別說明:關(guān)于樹莓派的編程方法我這里就不再贅述了,不知道的同學(xué)可以翻一下我第5講的內(nèi)容。

樹莓派從零開始快速入門第5講——點亮LED

二、硬件連接

硬件上要準(zhǔn)備一個按鍵板,或者用導(dǎo)線短接GPIO模擬電平跳變也行(不懂慎用,以防短路),把按鍵的一端接到樹莓派任意一個GPIO口,另外一端接VCC或者GND。
硬件原理我就不說了,感興趣的同學(xué)可以自己查找相關(guān)資料,或者看下我之前發(fā)布的RT-thread按鍵輸入教程。

我這邊用的還是微雪的擴展板Pioneer600。

三、編寫代碼并運行

按鍵檢測代碼示例:

#!/usr/bin/python                             
#-*- coding:utf-8 -*-               
import RPi.GPIO as GPIO             #導(dǎo)入RPi.GPIO庫
import time                         #導(dǎo)入time庫

KEY = 20                            #根據(jù)自己的引腳號設(shè)置
GPIO.setmode(GPIO.BCM)              #引腳使用BCM編碼
GPIO.setup(KEY,GPIO.IN,GPIO.PUD_UP) #KEY引腳設(shè)置為上拉輸入模式
while True:                     
    time.sleep(0.05)                #延時0.05s
    if GPIO.input(KEY) == 0:        #如果KEY引腳為低電平(按鍵被按下),打印"KEY PRESS"
        print("KEY PRESS")          
        while GPIO.input(KEY) == 0: #如果按鍵一直被按下(沒有松開),一直在while循環(huán)中出不去(防止按鍵長按一直打?。?/span>
            time.sleep(0.01)    
注:
#!/usr/bin/env python,定義python解析腳本的絕對路徑
#-*- coding:utf-8 -*-,python文件為utf-8格式,否則無法寫入中文注釋

運行結(jié)果:

在這里插入圖片描述

四、結(jié)束語

按鍵輸入本質(zhì)上就是讀取GPIO的電平狀態(tài),按鍵本質(zhì)是通過短接IO口和VCC或GND,從而改變IO口的電平狀態(tài)。結(jié)合原理去看代碼會更容易理解。好了,這一講的內(nèi)容就這么多了,想了解更多樹莓派的知識可以關(guān)注我,后續(xù)我會繼續(xù)更新更多的教程。

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險等級 參考價格 更多信息
NC7SZ08P5X 1 Rochester Electronics LLC LVC/LCX/Z SERIES, 2-INPUT AND GATE, PDSO5, 1.25 MM, ROHS COMPLIANT, EIAJ, SC-88A, SC-70, 5 PIN
$0.28 查看
SN74LVC1G126DCKR 1 Texas Instruments Single 1.65-V to 5.5-V buffer with 3-state outputs 5-SC70 -40 to 125

ECAD模型

下載ECAD模型
$0.3 查看
PS2801-1-F3-A 1 NEC Electronics Group Transistor Output Optocoupler, 1-Element, 2500V Isolation,
$0.98 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜