亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Arduino 的音樂播放器設(shè)計

        2022-10-28 13:42:50王瑜
        電子設(shè)計工程 2022年20期
        關(guān)鍵詞:開發(fā)板播放器液晶

        王瑜

        (西安航空學(xué)院機(jī)械工程學(xué)院,陜西西安 710077)

        在生產(chǎn)、生活中需要播放音樂的場合很多,如工廠、圖書館、商場、學(xué)校、公園、電子導(dǎo)游、停車場、醫(yī)療設(shè)備等。隨著科技和互聯(lián)網(wǎng)的快速發(fā)展,電子產(chǎn)品隨處可見,給人們的生活帶來了便利。聽音樂可以提升創(chuàng)造力、舒緩壓力、解除疲勞、幫助睡眠,傳統(tǒng)的多功能音樂播放器面向高端市場,難以普及到大眾,而在我國中低端市場才是消費(fèi)主力軍[1]。該文設(shè)計了一款基于Arduino UNO 和ESP8266 開發(fā)板并結(jié)合BY8001 語音模塊的音樂播放器。

        Arduino UNO 的大腦是ATmega 328P,Arduino UNO 開發(fā)板有14 個數(shù)字I/O 引腳和6 個模擬輸入引腳,一個16 MHz 的晶振,一個USB 接口,一個DC 接口等,硬件資源豐富,使用電池可以驅(qū)動,使用方便、成本低??梢酝ㄟ^Arduino IDE 進(jìn)行編程,并下載到Arduino UNO 開發(fā)板中,不需要外接編程器。音樂播放器所有的硬件設(shè)備均在Arduino UNO 開發(fā)板上進(jìn)行集成和控制。通過Arduino IDE 軟件程序的控制完成各個模塊之間接口的數(shù)據(jù)傳遞和協(xié)同工作[2-3]。ESP8266 開發(fā)板上嵌入了ESP8266 芯片,該開發(fā)板采用板載PCB 天線,支持STA、AP、STA+AP 三種工作模式,支持無線802.11 b/g/n標(biāo)準(zhǔn),支持UART/GPIO 數(shù)據(jù)通信接口[4],利用ESP8266 開發(fā)板獲取網(wǎng)絡(luò)時間,可以實時顯示在OLED上。BY8001語音模塊采用BY8001-SSOP24 MP3 主控芯片,支持MP3、WAV 格式雙解碼。模塊內(nèi)置TF 卡座,可插卡進(jìn)行更換語音內(nèi)容,支持MP3、WAV高品質(zhì)音頻格式文件,聲音優(yōu)美,模塊支持24位DAC輸出,其動態(tài)范圍為90 dB、信噪比為85 dB[5]。

        1 系統(tǒng)的結(jié)構(gòu)及工作原理

        音樂播放器結(jié)構(gòu)框圖如圖1 所示,該系統(tǒng)主要由Arduino UNO 開發(fā)板、ESP8266 開發(fā)板、語音模塊、TF 卡、喇叭、OLED 液晶顯示器、按鍵、電源組成[6]。電源給整個系統(tǒng)供電,語音模塊、TF 卡、喇叭根據(jù)由按鍵輸入的控制信號來播放音樂或語音,在播放前需要將音樂或語音文件復(fù)制到TF 卡中。ESP8266 開發(fā)板獲取網(wǎng)絡(luò)時間,通過串口發(fā)送到Arduino UNO 開發(fā)板,利用兩個開發(fā)板之間的通信,實現(xiàn)網(wǎng)絡(luò)時間的傳輸,并顯示在OLED 液晶顯示器上,從而實現(xiàn)音樂播放器存儲音樂或音頻文件,并根據(jù)按鍵選擇播放音樂或音頻、顯示播放信息、顯示網(wǎng)絡(luò)時間等功能。

        圖1 音樂播放器結(jié)構(gòu)框圖

        2 系統(tǒng)硬件設(shè)計

        2.1 音樂/語音播放電路

        音樂播放器選用BY8001 語音模塊作為音樂/語音播放模塊,由按鍵輸入信號控制BY8001 語音模塊播放TF 卡中的音樂/語音信息。TF 卡中的音樂/語音文件的排序按照存儲的先后順序,為了確保從電腦存入TF卡內(nèi)的音樂/語音文件的順序正確。首先,在電腦上將音樂/語音文件命名排序好(在SD 卡內(nèi)修改音樂/語音文件排序無效),可以將音樂/語音文件命名為0001XXX.MP3、0002XXX.MP3、0003XXX.MP3…。BY8001 語音模塊的16 個引腳分別為BUSY(忙信號)、RX、TX、DACR(DAC 右聲道輸出)、DACL(DAC左聲道輸出)、SPK1、SPK2、VCC、I/O1~I(xiàn)/O5(觸發(fā)輸入口1~5)、GND、DP(USB 數(shù)據(jù)線)、DM(USB 數(shù)據(jù)線)。BY8001 語音模塊有五個觸發(fā)I/O 口,最多支持15 段按鍵一對一觸發(fā)播放。音樂播放器的音樂/語音播放電路如圖2 所示,按鍵的一端接地,另一端接BY8001 的I/O1、I/O2 引腳,同時和Arduino UNO 的引腳3、引腳4 連接,該設(shè)計的按鍵選擇獨立式按鍵,即每一個I/O 口上只接一個按鍵,另一端接地,這種接法的優(yōu)點是編程簡單、系統(tǒng)穩(wěn)定[7-8]。

        圖2 音樂/語音播放電路

        2.2 OLED顯示電路

        OLED顯示電路如圖3所示,OLED用來顯示當(dāng)前時間、曲目信息等內(nèi)容[9],顯示器選取0.96 寸128×64分辨率OLED 液晶顯示屏,采用SSD1306 驅(qū)動芯片,基于三線SPI 通信的七線制OLED 顯示屏模塊,采用三條通信線路傳輸數(shù)據(jù)[10]。OLED 的7 個引腳分別為GND、VCC(3.3~5 V)D0(時鐘線)、D1(數(shù)據(jù)線)、RES(復(fù)位線)、DC(數(shù)據(jù)命令選擇線)和CS(SPI 片選線)。OLED 的7 個引腳和Arduino 的連接關(guān)系如下:OLED 的電源接Arduino 的VCC引腳;OLED 的地接Arduino 的GND 引腳;OLED 的D0 接Arduino 的13 引腳;OLED 的D1 接Arduino 的11引腳;OLED 的RES接Arduino 的8引腳;OLED 的DC 接Arduino 的9 引腳;OLED 的CS 接Arduino 的10 引腳[11]。

        圖3 OLED顯示電路

        當(dāng)按下“顯示當(dāng)前時間”按鍵時,在OLED 液晶顯示器上顯示當(dāng)前時間,如圖4 所示;當(dāng)按下“曲目選擇”按鍵時,在OLED 液晶顯示器上顯示“曲目選擇”菜單,如圖5 所示;當(dāng)按下“播放曲目1”按鍵時,利用音樂/語音播放電路播放TF 卡中的曲目1,并在OLED 液晶顯示器上顯示曲目1 播放界面,如圖6 所示;當(dāng)按下“播放曲目2”按鍵時,利用音樂/語音播放電路播放TF 卡中的曲目2,并在OLED 液晶顯示器上顯示曲目2 播放界面,如圖7 所示[12]。

        圖4 顯示當(dāng)前時間

        圖5 “曲目選擇”菜單

        圖6 曲目1播放界面

        圖7 曲目2播放界面

        2.3 Arduino UNO和ESP8266開發(fā)板通信電路

        系統(tǒng)選用ESP8266開發(fā)板獲取網(wǎng)絡(luò)時間,ESP8266開發(fā)板有豐富的GPIO接口、擴(kuò)展口和串口等,ESP8266開發(fā)板和Arduino UNO 的連接電路如圖8 所示。ESP8266 開發(fā)板的GND 引腳和Arduino UNO 的GND引腳相連;ESP8266 的GPIO1 引腳和Arduino UNO 的RX 引腳相連;ESP8266 的GPIO3 引腳和Arduino UNO 的TX 引腳相連[13-14]。ESP8266 開發(fā)板連接WiFi,獲取網(wǎng)絡(luò)時間,通過串口發(fā)送到Arduino UNO,并根據(jù)按鍵功能利用OLED 液晶顯示器顯示當(dāng)前時間,這種方法獲得的時間精準(zhǔn),只要有網(wǎng)絡(luò)即可,而不需要校時[15-16]。

        圖8 ESP8266開發(fā)板和Arduino UNO的連接電路

        3 軟件設(shè)計

        3.1 OLED軟件設(shè)計

        OLED 液晶顯示器是一種高對比度、高分辨率的顯示器,具有良好的顯示界面,可以顯示字符、圖形、漢字甚至更高級的動畫,極大地提高了系統(tǒng)的可操作性[17]。利用Arduino UNO 控制OLED 液晶顯示器顯示字符、圖形等信息,需要使用OLED 模塊的專用庫SSD1306 和圖形庫GFX。

        首先,利用PCtoLCD2002 字模提取軟件將OLED顯示的圖形轉(zhuǎn)換為點陣數(shù)據(jù)。接著,將數(shù)據(jù)存儲到數(shù)組中。最后,利用庫函數(shù)可以實現(xiàn)將圖形顯示在OLED 液晶顯示器上。

        3.2 字模提取

        文中使用PCtoLCD2002軟件提取字模,雙擊桌面圖標(biāo),打開軟件。軟件有圖形模式和字符模式兩種工作模式,PCtoLCD2002軟件圖形模式界面如圖9所示。

        圖9 PCtoLCD2002軟件圖形模式界面

        通過選擇“模式菜單”,可以切換圖形模式或字符模式。選擇圖形模式,可以將BMP 格式的二值圖像轉(zhuǎn)換成OLED 液晶顯示屏上顯示的數(shù)據(jù);選擇字符模式,可以將中英文字符、數(shù)字等字符轉(zhuǎn)換成OLED 液晶顯示屏上顯示的數(shù)據(jù)。PCtoLCD2002 軟件字符模式界面如圖10 所示。

        圖10 PCtoLCD2002軟件字符模式界面

        首先,在圖10 中的文本框輸入需要轉(zhuǎn)換的文字,例如,輸入“西安航空學(xué)院”,設(shè)置字體等信息,接著,單擊“字模生成和液晶面板選項”,設(shè)置“字模選項”中的內(nèi)容,點擊“生成字?!眻D標(biāo)按鈕,生成文字對應(yīng)的顯示數(shù)據(jù),如圖11 所示。

        圖11 PCtoLCD2002軟件字符模式生成數(shù)據(jù)

        3.3 系統(tǒng)軟件設(shè)計

        Arduino UNO 是基于Atmega328P 的開發(fā)板。Arduino IDE 提供了廣泛的庫函數(shù),易于編程,使用Arduino IDE 可以將程序下載到Arduino UNO 開發(fā)板中[18-19]。該系統(tǒng)的軟件流程圖如圖12所示。首先,初始化串口、按鍵引腳、OLED 液晶顯示器等。接著,掃描按鍵并判斷哪個鍵按下,如果“曲目選擇”按鍵按下,則在OLED 液晶顯示器中顯示“曲目選擇”菜單;如果“曲目選擇”按鍵沒有按下,則判斷“播放曲目1”按鍵是否按下,如果“播放曲目1”按鍵按下,則在OLED 液晶顯示器中顯示“曲目1 播放”界面,并控制BY8001 語音模塊播放曲目1;如果“播放曲目1”按鍵沒有按下,判斷“播放曲目2”按鍵是否按下。如果“播放曲目2”按鍵按下,則在OLED 液晶顯示器中顯示“曲目2 播放”界面,并控制BY8001 語音模塊播放曲目2;如果“播放曲目2”按鍵沒有按下,則判斷“顯示當(dāng)前時間”按鍵是否按下。如果“顯示當(dāng)前時間”按鍵按下,則讀取ESP8266 開發(fā)板發(fā)送的時間數(shù)據(jù)[20];如果“顯示當(dāng)前時間”按鍵沒有按下,則繼續(xù)掃描按鍵。

        圖12 軟件流程圖

        4 結(jié)論

        該文以Arduino UNO 開發(fā)板為核心,以Arduino IDE 作為軟件開發(fā)平臺,設(shè)計了一種基于Arduino 的音樂播放器。文中介紹了硬件組成和框圖,重點介紹了系統(tǒng)的硬件設(shè)計、Arduino UNO 開發(fā)板和ESP8266 開發(fā)板的通信設(shè)計、OLED 軟件設(shè)計、字模提取、系統(tǒng)軟件設(shè)計流程。系統(tǒng)具有音樂存儲、語音存儲、播放、曲目選擇、液晶顯示、網(wǎng)絡(luò)時間校準(zhǔn)等功能。經(jīng)過系統(tǒng)測試,該系統(tǒng)能夠正常工作,穩(wěn)定性強(qiáng),達(dá)到了設(shè)計要求,非常適合在工廠、圖書館、商場、學(xué)校、公園等場合應(yīng)用。

        猜你喜歡
        開發(fā)板播放器液晶
        不可壓液晶方程組的Serrin解
        《液晶與顯示》征稿簡則
        液晶與顯示(2020年8期)2020-08-08 07:01:46
        Walkman誕生40周年 索尼適時發(fā)布NW-ZX500和NW-A100系列播放器
        基于STM32的MP3播放器設(shè)計
        電子制作(2019年9期)2019-05-30 09:41:44
        Moon ACE播放器/放大器一體機(jī)
        Microchip最新推出兩款PIC32 Curiosity開發(fā)板
        淺析單片機(jī)開發(fā)板的設(shè)計與制作
        電子制作(2017年22期)2017-02-02 07:10:14
        播放器背板注塑模具設(shè)計
        中國塑料(2015年8期)2015-10-14 01:10:55
        液晶與顯示2015年第30卷第1期 目錄
        液晶與顯示(2015年1期)2015-02-28 21:15:54
        Mouser為您呈上開發(fā)關(guān)鍵之STMicroelectronics Nucleo開發(fā)板
        在线一区不卡网址观看| 日韩人妻熟女中文字幕a美景之屋| 国产精品99精品无码视亚| 亚洲欧美国产双大乳头| 亚洲欧美变态另类综合| 一本色道久久88加勒比—综合| 欧美性猛交aaaa片黑人| 日韩成人大屁股内射喷水| 久久国产精品视频影院| 成人性生交大片免费看激情玛丽莎 | 亚洲最大无码AV网站观看| 午夜宅男成人影院香蕉狠狠爱| 久久亚洲av成人无码电影| 狠狠色噜噜狠狠狠888米奇视频| 欧洲vat一区二区三区| 国内精品久久久久久久久久影院| 亚洲国产精品日韩专区av| 日本在线观看不卡一区二区| 国产精品嫩草99av在线| 福利在线国产| 成人全视频在线观看免费播放| 白嫩丰满少妇av一区二区| 全部孕妇毛片丰满孕妇孕交| 久久99热精品免费观看欧美| 亚洲天堂av高清在线| 无码gogo大胆啪啪艺术| 免费做爰猛烈吃奶摸视频在线观看| 中文字幕无码免费久久| 偷拍美女上厕所一区二区三区| 亚洲春色在线视频| 欧美成人在线A免费观看| 一区二区亚洲熟女偷拍| 人人鲁人人莫人人爱精品| 一卡二卡三卡视频| 国产一区二区在线观看视频免费| av日韩一区二区三区四区| 特级av毛片免费观看| 天啦噜国产精品亚洲精品| 成av人片一区二区久久| 亚洲熟妇久久国产精品| 久久国产亚洲高清观看5388|