精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

如何使用MicroPython和ESP32來編寫按鍵程序?

冬至子 ? 來源:醉里挑燈舞劍 ? 作者:Franze ? 2023-11-08 12:35 ? 次閱讀

材料準備

  • ESP32開發(fā)板
  • LED
  • 220歐姆電阻
  • 面包板
  • USB數(shù)據(jù)線
  • 電腦
  • 按鍵開關(guān)(最好是自復位的)

圖片

連接電路

首先,我們需要將LED燈、電阻和開關(guān)、ESP32連接起來。具體步驟如下:

可以看到跟上一節(jié) LED 一樣,只是輸入/輸出狀態(tài)的一個改變。從上圖可以看到,我們只需要在開發(fā)板上電后判斷 KEY 引腳的電平,當被按下時候引腳為低電平“0”。

編寫代碼

圖片

按鍵被按下時候可能會發(fā)生抖動,抖動如下圖,有可能造成誤判,因此我們需要使用延時函數(shù)來進行消抖(防誤觸)。

常用的方法就是當檢測按鍵值為 0 時,延時一段時間,大約 10ms,再判斷按鍵引腳值仍然是 0,是的話說明按鍵被按下。延時使用 time 模塊

time模塊的使用方法如下

  • import time
  • time.sleep(1) # 睡眠 1 秒
  • time.sleep_ms(500) # 睡眠 500 毫秒
  • time.sleep_us(10) # 睡眠 10 微妙
  • start = time.ticks_ms() # 獲取毫秒計時器開始值

代碼簡說

代碼的注釋很清楚了
從上面代碼可以看到,初始化各個對象后,進入循環(huán),當檢測到 KEY 的值為0(按鍵被按下)時候,先做了 10ms 的延時,再次判斷;

state 為 LED 狀態(tài)的值,每次按鍵按下后通過使用 not 來改變。這里注意的是在 python 里使用‘not’而不是‘’的方式。not 返回的是 True 和 False,即0,1。而 是取反操作,會導致出錯。

運行程序

可以看到每當按鍵 KEY 被按下后,LED 的亮滅狀態(tài)發(fā)生改變。

總結(jié)

按鍵作為我們學習的第一個輸入設(shè)備,有了輸入設(shè)備我們就可以跟硬件做人機交互了,這對后面的學習非常有意義。可以看到按鍵在 MicroPython 下開發(fā)顯得很簡單。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • led燈
    +關(guān)注

    關(guān)注

    22

    文章

    1588

    瀏覽量

    107403
  • 歐姆電阻
    +關(guān)注

    關(guān)注

    0

    文章

    70

    瀏覽量

    15534
  • ESP32
    +關(guān)注

    關(guān)注

    17

    文章

    936

    瀏覽量

    16667
  • Micropython
    +關(guān)注

    關(guān)注

    0

    文章

    68

    瀏覽量

    4681
收藏 人收藏

    評論

    相關(guān)推薦

    【FireBeetle 2 ESP32-S3開發(fā)板測評】MicroPython開發(fā)體驗

    【FireBeetle 2 ESP32-S3開發(fā)板測評】MicroPython開發(fā)體驗
    的頭像 發(fā)表于 07-23 09:02 ?1585次閱讀
    【FireBeetle 2 <b class='flag-5'>ESP32</b>-S3開發(fā)板測評】<b class='flag-5'>MicroPython</b>開發(fā)體驗

    請問ESP32如何查看MicroPython的版本?

    ESP32如何查看MicroPython的版本?
    發(fā)表于 06-05 07:35

    如何在ESP32上使用MicroPython

    ESP32移植MicroPython簡介安裝esptool下載MicroPython固件寫入固件連接Putty測試程序簡介本教程制作于Windows系統(tǒng)。通過python環(huán)境下運行es
    發(fā)表于 01-11 07:58

    為什么使用MicroPython開發(fā)ESP32

    為什么使用MicroPython開發(fā)ESP32
    發(fā)表于 02-22 08:08

    是否有人使用過這些esp32 s3盒子中的任何一個運行MicroPython

    想知道是否有人使用過這些 esp32 s3 盒子中的任何一個運行 MicroPython?我已經(jīng)能夠為 MicroPython 刷寫 ESP32
    發(fā)表于 04-12 06:35

    視頻教程-micropython基礎(chǔ)入門(esp32/esp8266單片機開發(fā))-物聯(lián)網(wǎng)技術(shù)

    micropython基礎(chǔ)入門(esp32/esp8266單片機開發(fā)) 10...
    發(fā)表于 11-13 15:36 ?55次下載
    視頻教程-<b class='flag-5'>micropython</b>基礎(chǔ)入門(<b class='flag-5'>esp32</b>/<b class='flag-5'>esp</b>8266單片機開發(fā))-物聯(lián)網(wǎng)技術(shù)

    [ESP32]學習筆記02

    [ESP32學習筆記02]使用ViusalStudio2017開發(fā)ESP32按鍵輸入檢測前言一、安裝Visual Studio 2017二、配置開發(fā)環(huán)境1.安裝ViusalGDB2.下面我們安裝
    發(fā)表于 12-03 17:36 ?23次下載
    [<b class='flag-5'>ESP32</b>]學習筆記02

    ESP32刷入MicroPython以及連接WiFi

    一、ESP32刷入MicroPython1.ESP32驅(qū)動2.下載MicroPython3.刷入micropython4.進入ESP32二、
    發(fā)表于 12-04 19:51 ?28次下載
    <b class='flag-5'>ESP32</b>刷入<b class='flag-5'>MicroPython</b>以及連接WiFi

    使用MicroPython開發(fā)ESP32(01):快速入門

    文章目錄為什么使用MicroPython開發(fā)ESP32快速入門開發(fā)板準備開發(fā)工具選擇固件下載與燒錄我的總結(jié)為什么使用MicroPython開發(fā)ESP32ESP32是非常熱門的一款物聯(lián)網(wǎng)
    發(fā)表于 12-29 18:49 ?22次下載
    使用<b class='flag-5'>MicroPython</b>開發(fā)<b class='flag-5'>ESP32</b>(01):快速入門

    如何在ESP32/ESP8266上使用MicroPython

    在本教程中,我們將了解 MicroPython,它與 Python 有何不同,以及如何在 ESP32/ESP8266 上開始使用 MicroPython。此外,我們將看到一個 LED
    發(fā)表于 08-19 15:09 ?1.3w次閱讀
    如何在<b class='flag-5'>ESP32</b>/<b class='flag-5'>ESP</b>8266上使用<b class='flag-5'>MicroPython</b>

    使用ESP32連接騰訊云實現(xiàn)遠程控制

    上次給大家分享了如何使用ESP32實現(xiàn)藍牙通信,今天跟大家聊聊如何使用ESP32連接騰訊云實現(xiàn)遠程控制。本次實驗用到MQTT協(xié)議,同樣,我用miropython編寫程序實現(xiàn),最終可以通過騰訊連連微信
    的頭像 發(fā)表于 11-22 09:19 ?3281次閱讀

    [esp32教程]2、按鍵中斷

    基于Ubuntu,利用esp-idf進行esp32的教學
    的頭像 發(fā)表于 05-05 09:04 ?6731次閱讀
    [<b class='flag-5'>esp32</b>教程]2、<b class='flag-5'>按鍵</b>中斷

    ESP32+MicroPython開發(fā)環(huán)境的搭建

    ESP32 一般有兩種開發(fā)方式,c 語言開發(fā)和 python 開發(fā)。
    的頭像 發(fā)表于 06-13 17:00 ?8070次閱讀
    <b class='flag-5'>ESP32+MicroPython</b>開發(fā)環(huán)境的搭建

    基于ESP32+MicroPython實現(xiàn)聯(lián)網(wǎng)并進行UDP通信

    使用 esp32 開發(fā)程序,非常重要的功能就是使用 wifi,下面我們就講一下 esp32 連接 wifi 的方法。
    的頭像 發(fā)表于 06-13 17:05 ?5517次閱讀
    基于<b class='flag-5'>ESP32+MicroPython</b>實現(xiàn)聯(lián)網(wǎng)并進行UDP通信

    構(gòu)建ESP32 MicroPython Wifi的機器人汽車

    電子發(fā)燒友網(wǎng)站提供《構(gòu)建ESP32 MicroPython Wifi的機器人汽車.zip》資料免費下載
    發(fā)表于 07-12 09:12 ?5次下載
    構(gòu)建<b class='flag-5'>ESP32</b> <b class='flag-5'>MicroPython</b> Wifi的機器人汽車