国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ESP32(MicroPython) 矩陣鍵盤電子琴+RGB燈

這篇具有很好參考價值的文章主要介紹了ESP32(MicroPython) 矩陣鍵盤電子琴+RGB燈。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

ESP32(MicroPython) 矩陣鍵盤電子琴+RGB燈

?本程序相比上一個矩陣鍵盤電子琴程序增加了一個矩陣鍵盤,并把三個矩陣鍵盤的同一行相連,掃描周期縮短到40ms。增加RGB燈帶,每個周期刷新一個燈(隨機(jī)顏色)。

代碼如下

#導(dǎo)入Pin模塊
from machine import Pin
import time
from machine import PWM
from neopixel import NeoPixel
import random
#揚(yáng)聲器接13腳和GND,矩陣鍵盤接線如下
# 創(chuàng)建行的對象
row1 = Pin(12, Pin.OUT)
row2 = Pin(14, Pin.OUT)
row3 = Pin(27, Pin.OUT)
row4 = Pin(26, Pin.OUT)
row_list = [row1, row2, row3, row4] ?# 將創(chuàng)建的行對象放到list里面
?
# 創(chuàng)建列的對象
col1 = Pin(15, Pin.IN, Pin.PULL_DOWN)
col2 = Pin(2, Pin.IN, Pin.PULL_DOWN)
col3 = Pin(4, Pin.IN, Pin.PULL_DOWN)
col4 = Pin(16, Pin.IN, Pin.PULL_DOWN)
col5 = Pin(17, Pin.IN, Pin.PULL_DOWN)
col6 = Pin(5, Pin.IN, Pin.PULL_DOWN)
col7 = Pin(18, Pin.IN, Pin.PULL_DOWN)
col8 = Pin(19, Pin.IN, Pin.PULL_DOWN)
col9 = Pin(25, Pin.IN, Pin.PULL_DOWN)
col10 = Pin(33, Pin.IN, Pin.PULL_DOWN)
col11 = Pin(32, Pin.IN, Pin.PULL_DOWN)
col12 = Pin(21, Pin.IN, Pin.PULL_DOWN)
col_list = [col1, col2, col3, col4,col5, col6, col7, col8,col9, col10, col11, col12] ?# 將創(chuàng)建的列對象放到list里面
?
pin=22
rgb_num=30
rgb_led=NeoPixel(Pin(pin,Pin.OUT),rgb_num)?
d=0
#程序入口
while True:
? ? e=10
? ? d+=1
? ? if d==30:
? ? ? ? d=0
? ? a=random.randint(0,255)
? ? b=random.randint(0,255)
? ? c=random.randint(0,255)
? ? rgb_led[d]=(a, b, c)
? ? rgb_led.write()
? ? for i, row in enumerate(row_list): ?# 遍歷序號和對應(yīng)的值 # 目的:只讓某一行通電,其他的行都是0
? ? ? ? for temp in row_list: ?# 遍歷行對象
? ? ? ? ? ? temp.value(0) ?# 給每一個行對象賦值
? ? ? ? row.value(1)
? ? ? ? time.sleep_ms(10) ?# 鍵盤通電后,延遲一小會
? ? ? ? for j, col in enumerate(col_list): ?# 遍歷序號和對應(yīng)的值
? ? ? ? ? ? if col.value() == 1: ? # 給每一個列對象賦值
? ? ? ? ? ? ? ?if i==0 and j==0:
? ? ? ? ? ? ? ? ? ?e=22
? ? ? ? ? ? ? ?elif i==1 and j==0:
? ? ? ? ? ? ? ? ? ?e=23
? ? ? ? ? ? ? ?elif i==2 and j==0:
? ? ? ? ? ? ? ? ? ?e=24
? ? ? ? ? ? ? ?elif i==3 and j==0:
? ? ? ? ? ? ? ? ? ?e=25
? ? ? ? ? ? ? ?elif i==0 and j==1:
? ? ? ? ? ? ? ? ? ?e=26
? ? ? ? ? ? ? ?elif i==1 and j==1:
? ? ? ? ? ? ? ? ? ?e=27
? ? ? ? ? ? ? ?elif i==2 and j==1:
? ? ? ? ? ? ? ? ? ?e=31
? ? ? ? ? ? ? ?elif i==3 and j==1:
? ? ? ? ? ? ? ? ? ?e=32
? ? ? ? ? ? ? ?elif i==0 and j==2:
? ? ? ? ? ? ? ? ? ?e=33
? ? ? ? ? ? ? ?elif i==1 and j==2:
? ? ? ? ? ? ? ? ? ?e=34
? ? ? ? ? ? ? ?elif i==2 and j==2:
? ? ? ? ? ? ? ? ? ?e=35
? ? ? ? ? ? ? ?elif i==3 and j==2:
? ? ? ? ? ? ? ? ? ?e=36
? ? ? ? ? ? ? ?elif i==0 and j==3:
? ? ? ? ? ? ? ? ? ?e=37
? ? ? ? ? ? ? ?elif i==1 and j==3:
? ? ? ? ? ? ? ? ? ?e=41
? ? ? ? ? ? ? ?elif i==2 and j==3:
? ? ? ? ? ? ? ? ? ?e=42
? ? ? ? ? ? ? ?elif i==3 and j==3:
? ? ? ? ? ? ? ? ? ?e=43
? ? ? ? ? ? ? ?elif i==0 and j==4:
? ? ? ? ? ? ? ? ? ?e=44
? ? ? ? ? ? ? ?elif i==1 and j==4:
? ? ? ? ? ? ? ? ? ?e=45
? ? ? ? ? ? ? ?elif i==2 and j==4:
? ? ? ? ? ? ? ? ? ?e=46
? ? ? ? ? ? ? ?elif i==3 and j==4:
? ? ? ? ? ? ? ? ? ?e=47
? ? ? ? ? ? ? ?elif i==0 and j==5:
? ? ? ? ? ? ? ? ? ?e=51
? ? ? ? ? ? ? ?elif i==1 and j==5:
? ? ? ? ? ? ? ? ? ?e=52
? ? ? ? ? ? ? ?elif i==2 and j==5:
? ? ? ? ? ? ? ? ? ?e=53
? ? ? ? ? ? ? ?elif i==3 and j==5:
? ? ? ? ? ? ? ? ? ?e=54
? ? ? ? ? ? ? ?elif i==0 and j==6:
? ? ? ? ? ? ? ? ? ?e=55
? ? ? ? ? ? ? ?elif i==1 and j==6:
? ? ? ? ? ? ? ? ? ?e=56
? ? ? ? ? ? ? ?elif i==2 and j==6:
? ? ? ? ? ? ? ? ? ?e=57
? ? ? ? ? ? ? ?elif i==3 and j==6:
? ? ? ? ? ? ? ? ? ?e=61
? ? ? ? ? ? ? ?elif i==0 and j==7:
? ? ? ? ? ? ? ? ? ?e=62
? ? ? ? ? ? ? ?elif i==1 and j==7:
? ? ? ? ? ? ? ? ? ?e=63
? ? ? ? ? ? ? ?elif i==2 and j==7:
? ? ? ? ? ? ? ? ? ?e=64
? ? ? ? ? ? ? ?elif i==3 and j==7:
? ? ? ? ? ? ? ? ? ?e=65
? ? ? ? ? ? ? ?elif i==0 and j==8:
? ? ? ? ? ? ? ? ? ?e=66
? ? ? ? ? ? ? ?elif i==1 and j==8:
? ? ? ? ? ? ? ? ? ?e=67
? ? ? ? ? ? ? ?elif i==2 and j==8:
? ? ? ? ? ? ? ? ? ?e=71
? ? ? ? ? ? ? ?elif i==3 and j==8:
? ? ? ? ? ? ? ? ? ?e=72
? ? ? ? ? ? ? ?elif i==0 and j==9:
? ? ? ? ? ? ? ? ? ?e=73
? ? ? ? ? ? ? ?elif i==1 and j==9:
? ? ? ? ? ? ? ? ? ?e=74
? ? ? ? ? ? ? ?elif i==2 and j==9:
? ? ? ? ? ? ? ? ? ?e=75
? ? ? ? ? ? ? ?elif i==3 and j==9:
? ? ? ? ? ? ? ? ? ?e=76
? ? ? ? ? ? ? ?elif i==0 and j==10:
? ? ? ? ? ? ? ? ? ?e=77
? ? ? ? ? ? ? ?elif i==1 and j==10:
? ? ? ? ? ? ? ? ? ?e=81
? ? ? ? ? ? ? ?elif i==2 and j==10:
? ? ? ? ? ? ? ? ? ?e=82
? ? ? ? ? ? ? ?elif i==3 and j==10:
? ? ? ? ? ? ? ? ? ?e=83
? ? ? ? ? ? ? ?elif i==0 and j==11:
? ? ? ? ? ? ? ? ? ?e=84
? ? ? ? ? ? ? ?elif i==1 and j==11:
? ? ? ? ? ? ? ? ? ?e=85
? ? ? ? ? ? ? ?elif i==2 and j==11:
? ? ? ? ? ? ? ? ? ?e=86
? ? ? ? ? ? ? ?elif i==3 and j==11:
? ? ? ? ? ? ? ? ? ?e=87 ? ? ? ?
? ? a=0
? ? t=0
? ? if e%10==1 :
? ? ? a=4186
? ? elif e%10==2 :
? ? ? a=4698
? ? elif e%10==3 :
? ? ? a=5274
? ? elif e%10==4 :
? ? ? a=5587
? ? elif e%10==5 :
? ? ? a=6272
? ? elif e%10==6 :
? ? ? a=7040
? ? elif e%10==7 :
? ? ? a=7901
? ? if e//10<9 :
? ? ? t=e//10
? ? ? f=9-t
? ? ? t=2**f
? ? ? a=round(a/t)
? ? if e<11 :
? ? ? ? a=1
? ? beep=PWM(Pin(13),freq=a,duty=512)
? ? ? ? ? ??
?文章來源地址http://www.zghlxwxcb.cn/news/detail-486988.html

到了這里,關(guān)于ESP32(MicroPython) 矩陣鍵盤電子琴+RGB燈的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 嵌入式系統(tǒng)項(xiàng)目設(shè)計——電子琴(完整代碼)

    嵌入式系統(tǒng)項(xiàng)目設(shè)計——電子琴(完整代碼)

    內(nèi)容摘自上學(xué)期嵌入式系統(tǒng)課程設(shè)計最終的實(shí)驗(yàn)報告,我作為小組組長負(fù)責(zé)代碼部分的編寫,與上一個實(shí)驗(yàn)相比,使用了相同的硬件,所以硬件示意圖完全相同,實(shí)現(xiàn)的功能不同但原理類似。因?yàn)镃SDN不支持上傳word資料,所以我就摘錄下來寫進(jìn)文章里了,希望可以幫助到你。

    2024年02月08日
    瀏覽(24)
  • 如何使用NE555設(shè)計一個簡易電子琴

    如何使用NE555設(shè)計一個簡易電子琴

    今天來分享個使用NE555制作一個電子琴。 首先看到音調(diào)和頻率的關(guān)系 ?NE555電子器的原理就是利用不同的按鍵使NE555發(fā)出不同頻率的方波,從而產(chǎn)生不同的音調(diào) NE555產(chǎn)生方波電路如下: 接上喇叭后就能發(fā)出不同的音調(diào)了 其中RB用不同的電阻加按鍵代替,當(dāng)按下相應(yīng)的按鍵后,

    2024年02月11日
    瀏覽(27)
  • FPGA項(xiàng)目(4)--基于FPGA的電子琴

    FPGA項(xiàng)目(4)--基于FPGA的電子琴

    ????????本次設(shè)計是基于FPGA的電子琴,設(shè)計要求如下: ?????????本次我采用modelsim仿真的方式驗(yàn)證設(shè)計功能的正確性。工作時鐘選擇50MHZ。 ????????所謂電子琴,本質(zhì)就是用按鍵控制蜂鳴器發(fā)出不同頻率的聲音。我們平時所接觸的音樂,從低音到高音,從哆瑞咪發(fā)

    2024年02月04日
    瀏覽(28)
  • 【Proteus仿真】【Arduino單片機(jī)】簡易電子琴

    【Proteus仿真】【Arduino單片機(jī)】簡易電子琴

    本項(xiàng)目使用Proteus8仿真Arduino單片機(jī)控制器,使用無源蜂鳴器、按鍵等。 主要功能: 系統(tǒng)運(yùn)行后,按下K1-K7鍵發(fā)出不同音調(diào)。 B站演示視頻:https://space.bilibili.com/444388619 視頻地址:https://space.bilibili.com/444388619/video 專注于51單片機(jī)、STM32、國產(chǎn)32、DSP、Proteus、arduino、ESP32、物聯(lián)網(wǎng)

    2024年02月06日
    瀏覽(20)
  • FPGA用vhdl語言設(shè)計簡單硬件電子琴設(shè)計

    FPGA用vhdl語言設(shè)計簡單硬件電子琴設(shè)計

    硬件電子琴設(shè)計 目錄 一、 設(shè)計內(nèi)容簡介 二、系統(tǒng)框圖 三、代碼說明 四、 管腳及管腳對應(yīng)圖 一、設(shè)計 內(nèi)容簡介 當(dāng)按下琴鍵時,揚(yáng)聲器發(fā)出該琴鍵對應(yīng)的音階,同時數(shù)碼管顯示音階數(shù)字。設(shè)置了一個模式切換鍵可選擇低、中低、中高、高音4檔音階,每按下一次則可切換不

    2024年02月04日
    瀏覽(29)
  • 29、基于51單片機(jī)簡易電子琴(有存儲功能)系統(tǒng)設(shè)計

    29、基于51單片機(jī)簡易電子琴(有存儲功能)系統(tǒng)設(shè)計

    ?隨著社會的發(fā)展進(jìn)步,音樂逐漸成為我們生活中很重要的一部分,有人曾說喜歡音樂的人不會向惡。我們都會抽空欣賞世界名曲,作為對精神的洗禮。本論文設(shè)計一個基于單片機(jī)的簡易電子琴。我們對于電子琴如何實(shí)現(xiàn)其功能,如音色選擇、聲音強(qiáng)弱控制、節(jié)拍器等等也很

    2024年02月03日
    瀏覽(26)
  • 51單片機(jī)項(xiàng)目(9)——基于51單片機(jī)的電子琴設(shè)計

    51單片機(jī)項(xiàng)目(9)——基于51單片機(jī)的電子琴設(shè)計

    簡易電子琴設(shè)計設(shè)計內(nèi)容: 1.用矩陣鍵盤代表琴鍵,至少能彈出8個音符,分別是:音符1.23.4.,5,6,? 2.鍵按下的時間長短表征節(jié)拍的長短,用蜂鳴器發(fā)出聲音 3.數(shù)碼管顯示出當(dāng)前音符 4.音量可調(diào) (代碼及其工程文件放在最后) 電路圖如下: 51單片機(jī)電子琴是一種基于51單片機(jī)(

    2024年02月09日
    瀏覽(27)
  • 基于VHDL的FPGA簡易電子琴(實(shí)現(xiàn)三音階切換與彈奏)

    基于VHDL的FPGA簡易電子琴(實(shí)現(xiàn)三音階切換與彈奏)

    目錄 一、設(shè)計內(nèi)容簡介 二、系統(tǒng)框圖 1、簡易框圖 ?2、總電路圖(quarters軟件自動生成) 三、代碼說明? 1、總體代碼 2、代碼思路 四、仿真實(shí)現(xiàn)結(jié)果與分析總結(jié) 1、仿真思路 2、仿真建立過程 3、仿真結(jié)果檢驗(yàn) ? (1)靜音功能檢驗(yàn) (2)琴鍵功能檢驗(yàn) (3)模式選擇功能檢驗(yàn)

    2024年01月16日
    瀏覽(18)
  • 基于51單片機(jī)的7鍵電子琴音樂播放器proteus

    基于51單片機(jī)的7鍵電子琴音樂播放器proteus

    本設(shè)計僅供參考 基于51單片機(jī)的7鍵電子琴音樂播放器proteus(仿真+源碼+原理圖) 原理圖:Altium Designer 仿真圖proteus 7.8 程序編譯器:keil 4/keil 5 編程語言:C語言 編號C0036 有需要學(xué)習(xí)可以點(diǎn)擊下方鏈接下載 資料下載鏈接 設(shè)計介紹: 本次設(shè)計首先對單片機(jī)設(shè)計簡易電子琴仔細(xì)分

    2024年02月11日
    瀏覽(18)
  • 基于AT89C51單片機(jī)的電子琴設(shè)計與仿真

    基于AT89C51單片機(jī)的電子琴設(shè)計與仿真

    點(diǎn)擊鏈接獲取Keil源碼與Project Backups仿真圖: https://download.csdn.net/download/qq_64505944/87848430?spm=1001.2014.3001.5503 源碼獲取 主要內(nèi)容: 設(shè)計一個簡易的電子琴,至少具有可以彈奏并發(fā)出不同的音調(diào)。電子琴方案主要分為實(shí)驗(yàn)的系統(tǒng)分析,具體的實(shí)施方案,以及最終的實(shí)驗(yàn)檢驗(yàn),最終

    2024年02月07日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包