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

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

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

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

一、前言

上一講介紹了如何點(diǎn)亮一個(gè)LED燈,了解了樹莓派的編程方法和運(yùn)行方式,其實(shí)就是控制GPIO輸出。

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

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

樹莓派從零開始快速入門第5講——點(diǎn)亮LED

二、硬件連接

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

我這邊用的還是微雪的擴(kuò)展板Pioneer600。

三、編寫代碼并運(yùn)行

按鍵檢測(cè)代碼示例:

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

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

運(yùn)行結(jié)果:

在這里插入圖片描述

四、結(jié)束語

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

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
RSE-32.768-12.5-H14-TR-10PPM 1 Raltron Electronics Corporation Parallel - Fundamental Quartz Crystal, 0.032768MHz Nom,
暫無數(shù)據(jù) 查看
NX2012SA-32.768K-STD-MUB-1 1 Nihon Dempa Kogyo Co Ltd Parallel - Fundamental Quartz Crystal, 0.032768MHz Nom, ROHS COMPLIANT PACKAGE-2
$7.18 查看
PLR135/T5P 1 Everlight Electronics Co Ltd Receiver, 16Mbps, Panel Mount, ROHS COMPLIANT PACKAGE-3
$2.4 查看

相關(guān)推薦

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