91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內不再提示

如何使用Arduino制作彩色LED合成器

454398 ? 來源:wv ? 2019-09-04 10:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

第1步:本教學中使用的觸摸屏

對于這個Instructable,我將使用浩宇電子的觸摸屏。我使用了以下內容:

5“圖形LCD觸摸屏,800x480,SPI,FT810

此屏幕的運費約為36美元。這比其他更多Arduino屏幕,但你得到了很多錢:

清晰的高分辨率觸摸面板,分辨率為800x480。

板載圖形協處理器RAM允許控制而不會阻礙Arduino。

內置音頻合成器,帶有高質量的聲音樣本和各種樂器可供選擇。

風景和人像支持(在FT810或更好的上) 。

多點觸控支持。

內置JPEG,波形音頻和視頻解碼器,適用于高級項目。

第2步:準備屏幕

如何使用Arduino制作彩色LED合成器

一旦拿到屏幕,就需要將標頭焊接到屏幕上.Haoyu屏幕是很棒,因為它們帶有易于焊接的通孔,您可以選擇直接在屏幕背面或在屏幕背面焊接接頭。小型帶狀電纜,連接到可拆卸的分線板上。

要完成焊接作業(yè),您需要暫時斷開帶狀電纜并從面板背面取下PCB板。用指甲輕輕提起LCD連接器上的固定夾,然后釋放帶狀電纜。然后,取下固定電路板的四個螺釘。

現在將5x2接頭(或兩個5x1接頭)焊接到您想要的位置。用電工膠帶蓋住背面以避免短路。然后,重新擰上PCB并重新連接帶狀電纜。

步驟3:可選:打印LCD支架并添加黃銅插件

我選擇3D打印用于固定LCD面板的支架[1]

面板配有四個黃銅插件;這些都是用熱量壓成塑料的。當它們冷卻時,它們上的小齒咬入塑料中并防止它們掉出來。這些刀片是為3D打印部件添加耐用螺紋的常用方法。

一旦支架完成打印,我從面板上擰下四個黃銅插件。

我加熱了我的熨斗并將尖端向上傾斜,輕輕平衡尖端上的插入物。然后我將塑料部件放在上面,然后慢慢地將插件推入預先形成的孔中,直到它們與表面齊平。

如果你的烙鐵頭有一個狹窄的圓錐形尖端,這個步驟會更好。如果你以前從未這樣做過,那么你可能想要在熨斗很酷的時候練習 - 你只有一次機會在熨斗很熱的時候做到這一點!

小心這一步作為黃銅插件變得非常熱,你不希望它們落在你的腿上。在耐熱表面上工作,如果它們從鐵尖上脫落,就要抵制立即觸及它們的誘惑!

[1]來源:LCD支架STL和CAD文件

步驟4:取下膠片并裝載顯示器

現在,翻轉顯示器并取下前面的丙烯酸框架,然后從液晶面板上剝下保護膜(這將增強顯示器的清晰度)。使用螺釘將顯示器安裝在3D打印支架上。

步驟5:將焊頭連接到LED模塊

如圖所示,使用側面切割器斷開四針長度的接頭并將它們焊接到LED模塊上。如果您愿意,也可以將跳線長度切成兩半并直接焊接。

步驟6:連接電路

從Arduino到LED模塊運行三根跳線,如下所示:

面包板上的5V到紅色軌道

面板上的黑色導軌

IN到Arduino上的針腳~5

對于LCD顯示器,連接:

5V到面包板上的紅色軌道

GND到面包板上的黑色軌道

SCK到Arduino上的~13腳

MISO將Arduino上的?12引腳

MOSI將Arduino上的~11引腳

CS將Arduino上的引腳~10引腳

PD在Arduino上固定~9

AUDIO進入音頻電路,如面包板和原理圖所示

GND轉到面包板上的黑色導軌

來自Arduino:

從5V引腳到面包板上的紅色導軌運行跳線

從GND引腳到黑色運行跳線面包板上的導軌

音頻輸出電路完成后,您現在可以將耳塞式耳機或一組放大的計算機揚聲器插入音頻插孔。

設計音頻輸出:

顯示面板的AUDIO輸出是一個不是mea的數字信號不能直接駕駛揚聲器。試圖這樣做可能會損壞面板或揚聲器。要提供正確的音頻輸出,您需要構建一個執(zhí)行以下任務的調理電路:

將數字PWM(脈沖寬度調制)信號轉換為模擬電壓。

將輸出電流和電壓限制在安全水平。

任務可以通過兩個電阻和兩個電容來完成。

我查了一下FTDI FT810芯片的數據表發(fā)現,AUDIO引腳可以在3.3V時驅動高達16mA的電流。這意味著負載必須具有不小于206歐姆的電阻。為了保護引腳免受短路的影響,我首先將一個220歐姆的電阻與AUDIO引腳串聯。然后我將另一個100歐姆電阻器接地,形成一個分壓器。當沒有任何東西連接到插孔時,這會將3.3V降低到大約1V的水平,這對于線路電平音頻是安全的。 100nF形成一個低通濾波器,可以在傳遞音頻的同時消除高頻PWM噪聲。剩下的1uF電容稱為交流耦合電容。它阻止直流電流流出音頻插孔,同時讓音頻信號(即AC)通過。

步驟7:安裝FastLED庫并運行代碼

從我的github存儲庫下載包含Arduino sketch的.zip文件。

打開Arduino IDE并進入“Sketch” - 》“Include”圖書館“ - 》”管理圖書館。..。..“。安裝Daniel Garcia的“FastLED”庫。然后,打開“RainbowPiano.ino”文件并將其上傳到您的Arduino Uno!

步驟8:代碼概述

代碼使使用我在C ++中開發(fā)的UI框架。此框架允許您從一個或多個UI屏幕構建界面。鋼琴應用程序只有一個屏幕,由以下代碼定義:

class PianoScreen : public InterfaceScreen {

。..

public:

static void onEntry();

static void onRedraw(draw_mode_t what);

static void onTouchStart(uint8_t tag);

static void onIdle();

};

// List all screens in your app in the following table

SCREEN_TABLE {

DECL_SCREEN(PianoScreen)

};

SCREEN_TABLE_POST

void PianoScreen::onEntry() {

// Code that executes when a screen is shown

}

void PianoScreen::onRedraw(draw_mode_t what) {

// Code that runs to draw a screen

}

void PianoScreen::onTouchStart(uint8_t tag) {

// Code that runs when the user touches the screen

}

void PianoScreen::onIdle() {

// Code for tasks that run while the screen is active

}

其中,最重要的方法是 onRedraw()。它通過調用 CommandProcessor 對象上的方法來繪制用戶界面,該對象將繪圖命令發(fā)送到顯示面板。第一組命令用黑色清除屏幕(0x000000):

CommandProcessor cmd;

cmd.cmd(CLEAR_COLOR_RGB(0x000000))

.cmd(CLEAR(true,true,true));

然后,代碼繪制屏幕頂部的儀器選擇按鈕:

#define GRID_ROWS 8

#define GRID_COLS 6

cmd.font(font_small)

.fgcolor(black)

.tag(241).button( BTN_POS(1,1), BTN_SIZE(1,1), F(“Piano”))

這里有幾點需要注意。首先,UI庫允許您在網格上布局界面。在這種情況下,我將接口布局在6x8網格上。然后我設置字體和顏色,然后是標簽。

每個界面按鈕都與標簽相關聯。當用戶單擊某個按鈕時,將使用該標記調用 onTouchStart()方法,以便您可以對該按鈕采取適當的操作。標簽位于按鈕命令之前,按鈕命令發(fā)送指令以在位置(1,1)處標記“鋼琴”按鈕,同時在網格上占據1x1的空間。用于布置鋼琴鍵的代碼類似,但是在循環(huán)中發(fā)生。

稍后在代碼中,您會找到響應按鈕并按下標簽241的功能:

void PianoScreen::onTouchStart(uint8_t tag) {

switch(tag) {

case 241: highlighted_instrument = tag; instrument = PIANO; break;

。..

}

onRefresh();

}

當用戶按下按鈕時,代碼會修改一些變量以將儀器設置為 PIANO ,然后調用 onRefresh()來更新屏幕突出顯示新按鈕。突出顯示由 highlightCallback()函數完成,該函數在每個按鈕調用 onRefresh()期間,允許您根據標簽更改按鈕的顏色。突出顯示狀態(tài)。

播放聲音的代碼有點不同:

void PianoScreen::onTouchStart(uint8_t tag) {

switch(tag) {

。..

default:

// Code for setting the LED colors

。..

if(instrument == HIHAT) {

// Special case for drum kit notes

} else {

// Sound off the note

sound.play(instrument, NOTE_C3 + tag - 1);

}

highlighted_note = tag;

}

onRefresh();

}

這包含了這個快速瀏覽的內容。我希望這個介紹足以讓您開始為Arduino項目設計自己的圖形界面!

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

    關注

    244

    文章

    24634

    瀏覽量

    691392
  • 合成器
    +關注

    關注

    0

    文章

    316

    瀏覽量

    27930
  • Arduino
    +關注

    關注

    190

    文章

    6526

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    深度解析LMX2502/LMX2512 PLLatinum?頻率合成器系統

    深度解析LMX2502/LMX2512 PLLatinum?頻率合成器系統 在電子設計領域,頻率合成器是實現穩(wěn)定、精確頻率信號的關鍵器件。TI的LMX2502和LMX2512頻率合成器系統,憑借其
    的頭像 發(fā)表于 02-10 14:20 ?158次閱讀

    LMX2531:高性能頻率合成器的深度解析與應用指南

    LMX2531:高性能頻率合成器的深度解析與應用指南 在電子設計領域,頻率合成器是至關重要的組件,它能夠產生穩(wěn)定且精確的頻率信號,廣泛應用于各種通信和電子設備中。今天,我們將深入探討德州儀器(TI
    的頭像 發(fā)表于 02-10 11:55 ?307次閱讀

    CDCE706:高性能3 - PLL時鐘合成器的深度解析

    CDCE706:高性能3 - PLL時鐘合成器的深度解析 在電子設計領域,時鐘合成器對于確保系統的穩(wěn)定運行和精確計時起著至關重要的作用。今天,我們就來深入探討德州儀器(TI)的CDCE706可編程3
    的頭像 發(fā)表于 02-10 10:10 ?267次閱讀

    TI CDCDLP223:DLP? 系統的高性能時鐘合成器

    TI CDCDLP223:DLP? 系統的高性能時鐘合成器 在電子設計領域,時鐘合成器對于確保系統的穩(wěn)定運行至關重要。今天我們要探討的是德州儀器(TI)的 CDCDLP223 時鐘合成器,它專為
    的頭像 發(fā)表于 02-10 10:00 ?388次閱讀

    深入解析TRF3761:高性能集成頻率合成器的卓越之選

    深入解析TRF3761:高性能集成頻率合成器的卓越之選 在當今的電子設計領域,高性能頻率合成器是眾多無線通信和射頻應用的核心組件。TI推出的TRF3761系列整數 - N PLL頻率合成器,憑借其
    的頭像 發(fā)表于 02-10 09:40 ?373次閱讀

    深入解析TRF3761:高性能集成頻率合成器的卓越之選

    深入解析TRF3761:高性能集成頻率合成器的卓越之選 在無線通信技術飛速發(fā)展的今天,高性能的頻率合成器對于各類無線設備的穩(wěn)定運行至關重要。TI推出的TRF3761系列頻率合成器,以其卓越的性能
    的頭像 發(fā)表于 02-10 09:40 ?379次閱讀

    剖析TRF3761系列整數 - N PLL頻率合成器:優(yōu)勢、應用與設計要點

    剖析TRF3761系列整數 - N PLL頻率合成器:優(yōu)勢、應用與設計要點 引言 在電子工程領域,頻率合成器是無線通信、雷達、測試測量等眾多系統中的關鍵組件,其性能直接影響到整個系統的穩(wěn)定性和可靠性
    的頭像 發(fā)表于 02-09 16:30 ?212次閱讀

    探索LMX2571:高性能RF合成器的卓越之選

    探索LMX2571:高性能RF合成器的卓越之選 在當今的電子設計領域,高性能的RF合成器對于實現精確的頻率控制和低噪聲操作至關重要。LMX2571作為一款低功耗、高性能的PLLatinum? RF
    的頭像 發(fā)表于 02-08 16:15 ?1158次閱讀

    探索LMX2592高性能寬帶PLLatinum?射頻合成器的奧秘

    探索LMX2592高性能寬帶PLLatinum?射頻合成器的奧秘 在現代電子設備的設計中,高性能的射頻合成器是至關重要的組件,它能為各種應用提供穩(wěn)定且精準的頻率信號。今天我們要深入探討的就是德州儀器
    的頭像 發(fā)表于 02-08 16:10 ?1164次閱讀

    LMX2615 - SP:太空級寬帶合成器的技術解析與應用指南

    LMX2615 - SP:太空級寬帶合成器的技術解析與應用指南 在電子工程領域,高性能的頻率合成器對于眾多應用至關重要,尤其是在太空通信、雷達系統等對穩(wěn)定性和精度要求極高的場景中。今天,我們就來
    的頭像 發(fā)表于 02-08 10:40 ?202次閱讀

    高性能射頻合成器評估模塊LMX2571EPEVM技術解析

    Texas Instruments LMX2571EPEV射頻合成器評估模塊 (EVM) 設計用于LMX2571-EP低功耗、高性能射頻合成器。Texas Instruments LMX2571-EP可生成10MHz至1344MHz頻率,在-55°C至+125°C擴展溫度
    的頭像 發(fā)表于 09-23 11:11 ?936次閱讀
    高性能射頻<b class='flag-5'>合成器</b>評估模塊LMX2571EPEVM技術解析

    LMX2594PSEVM 高頻合成器評估模塊技術解析與應用指南

    Texas Instruments LMX2594PSEVM合成器評估模塊 (EVM) 是一個用于評估LMX2594寬帶射頻合成器相位同步 (PS) 特性的平臺。LMX2594PSEVM包含兩個共享同一參考時鐘的LMX2594部件。
    的頭像 發(fā)表于 09-10 15:23 ?1145次閱讀
    LMX2594PSEVM 高頻<b class='flag-5'>合成器</b>評估模塊技術解析與應用指南

    無雜散、50 MHz 至 2.1 GHz 單通道小數 N 分頻頻率合成器 skyworksinc

    電子發(fā)燒友網為你提供()無雜散、50 MHz 至 2.1 GHz 單通道小數 N 分頻頻率合成器相關產品參數、數據手冊,更有無雜散、50 MHz 至 2.1 GHz 單通道小數 N 分頻頻率合成器
    發(fā)表于 05-23 18:30
    無雜散、50 MHz 至 2.1 GHz 單通道小數 N 分頻頻率<b class='flag-5'>合成器</b> skyworksinc

    1930–1990 MHz 高性能 VCO/頻率合成器,帶集成開關 skyworksinc

    電子發(fā)燒友網為你提供()1930–1990 MHz 高性能 VCO/頻率合成器,帶集成開關相關產品參數、數據手冊,更有1930–1990 MHz 高性能 VCO/頻率合成器,帶集成開關的引腳圖
    發(fā)表于 05-22 18:35
    1930–1990 MHz 高性能 VCO/頻率<b class='flag-5'>合成器</b>,帶集成開關 skyworksinc