999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于單片機音樂播放器設計

2018-01-02 11:20:52王怡
科學與財富 2018年32期
關鍵詞:單片機

王怡

摘 要:在工業控制現場,監測結果通常要以聲音的形式進行播報,以提醒操作人員進行處理。蜂鳴器是一種簡單可靠,成本低廉的聲音播報設備。本文介紹了一種以51單片機作為控制核心,以蜂鳴器為發聲器件的音樂播放器的設計。首先介紹了該裝置的硬件構成及設計原理,其次介紹了軟件設計的基本原理。

關鍵詞:蜂鳴器;音樂播放;單片機;軟件;硬件設計原理

Abstract: In the field of industrial control, monitoring results are usually broadcast in the form of sound to remind operators to process. Buzzer is a simple, reliable, low-cost audio broadcasting device. This paper introduces the design of a music player based on the 51 MCU as the control core and the buzzer as the voice producing device. First, the hardware structure and design principle of the device are introduced. Secondly, the basic principle of software design is introduced.

Keywords: Buzzer; music player; MCU; software; hardware; design principle

引言

蜂鳴器是一種簡單可靠,成本低廉的聲音播報設備。在一些要求比較簡單的場合,只要蜂鳴器具備發聲和不發生兩種特性,就能解決問題。而在一些要求比較高的場合,則需要蜂鳴器發出不同曲調不同長度的聲音以對不同情況進行播報。本文所介紹的,就是一款能利用蜂鳴器播放音樂的裝置。

1 總體架構

本裝置的核心是一顆51單片機,聲音播報設備是一顆無源蜂鳴器。蜂鳴器能在單片機的控制下播放音樂。同時,電路板上還有一個行列式鍵盤,可以通過鍵盤按鍵的輸入來控制音樂播放的速度以及選擇不同的音樂進行播放。

2 硬件電路設計原理

(1)蜂鳴器驅動電路設計

蜂鳴器輸入端所需要的驅動電流視具體型號不同,一般從十幾毫安到幾十毫安不等。51單片機并行I/O口的驅動能力則從幾毫安到十幾毫安不等。因此,通常需要在單片機的并行I/O口和蜂鳴器的輸入端之間加上可以放大驅動電流的電路。三級管或場效應管是一個不錯的選擇,其驅動原理簡單,價格也低廉。具體的電路設計如圖1所示:

(2)行列式鍵盤掃描電路設計

本裝置除了能播放音樂片段之外,還有如選歌、快進、慢進、暫停、播放等控制功能。這些操作需要通過鍵盤操作進行輸入。本設計選用了16鍵的4×4行列式鍵盤。該鍵盤的具體電路設計如圖2所示:

3 軟件設計原理

樂曲的播放需要實現曲調和節拍的控制。不同曲調的播放通過向蜂鳴器發出不同頻率的方波就可以實現。比如:要讓蜂鳴器發出低音的1,只要向蜂鳴器發送一個262Hz的方波即可。而要發出中音的3,則要發送一個659Hz的方波。節拍就是一個曲調持續的時間。因此,樂曲的播放總結起來其實就是兩個要素:(1)控制單片機I/O口發出某固定頻率的方波;(2)控制該方波的持續時間。何時應發出何種頻率的方波,該方波持續多長時間,由具體樂譜中的曲調和節拍決定。軟件設計時通常直接存儲在不同的數組中。

本裝置利用單片機的兩個定時器來分別實現對曲調和節拍的控制。這種方法代碼短,對CPU的時間占用率低,是一種十分高效的實現方法。基于此方法,用蜂鳴器播放《上學歌》的核心代碼如下所示:

#include

sbit BELL=P1^2;

int i_m=0,i_s=0,j_s=0;

unsigned char t1_cz_1=0XFC,t1_cz_0=0X44;

unsigned char music_table[]={0xfc,0x44,0xfc,0xac,0xfd,0x09, 0xfc,0x44,0xfd,0x82,0xfd,0xc8, 0xfd,0xc8,0xfe,0x22,0xfd,0xc8,

0xfd,0x82,0xfd,0xc8,0xfd,0xc8, 0xfe,0x22,0xfd,0x82,0xfd,0xc8,

0xfd,0x09,0xfd,0xc8,0xfd,0x82, 0xfd,0x09,0xfd,0x82,0xfd,0x09,

0xfc,0x44,0xfc,0xac,0xfd,0x09, 0xfc,0x44};

unsigned char step_table[]={5,5,5,5,10,5,5,5,5,10, 5,5,10,5,5,10,5,5,5,5,5,5,5,5,20};

main()

{

TH0=0X70; //T0用于產生基本節拍,一次中斷0.04s

TL0=0X00;

TH1=0XFC; //T1用于產生發出音符所需的周期性

TL1=0X44; //脈沖,初始化為中音的"1"(64580d=fc44h)

TMOD=0X11; //T0、T1均為方式1定時,不用門控

IE=0X8a; //中斷使能

TR0=1; //T0、T1開始計數

TR1=1;

while(1)

}

void timer0_int() interrupt 1

{

int temp;

TL0=0X70; //重設初值

TH0=0X00;

j_s++;

temp=step_table[i_s]-j_s;

if(temp==0)

{

i_s++;

i_m=i_m+2;

j_s=0;

if(i_m==50)

i_m=0;

if(i_s==25)

i_s=0;

}

t1_cz_1=music_table[i_m];

t1_cz_0=music_table[i_m+1];

}

void timer1_int() interrupt 3

{

TH1=t1_cz_1; //重設初值

TL1=t1_cz_0;

BELL=~BELL;

}

在以上代碼中,定時計數器0用于產生節拍,一次中斷時間設計為40ms。定時計數器1用于產生曲調。樂曲中所有節拍都是基于定時計數器0這個40ms的基準時間產生的。而數組step_table中,則存儲了每一個節拍對應的該基準時間的個數。當一個曲調對應的節拍時間完成后,在定時計數器0中,會向存儲定時計數器1初值的全局變量t1_cz_1和t1_cz_2裝入新的初值。而在定時計數器1的下一次中斷中,該初值被重裝,新的曲調便產生了。

4 結束語

本文介紹了一種基于51單片機的音樂播放裝置裝置的設計。包括該裝置的整體架構、以及軟硬件設計原理的及介紹。該設計成本低廉,功能也很豐富。

參考文獻

[1]Maxim Technology,Datasheet of MAX232,19-0175;Rev 5;10/03.

[2]張毅剛,彭喜元,彭宇.單片機原理及應用[M].高等教育出版社,2009.

猜你喜歡
單片機
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機之間的串行通信及應用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機在仿真中要注意的幾點問題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機的平衡控制系統設計
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機的三維LED點陣設計
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個全新PIC單片機系列
基于Proteus的單片機控制系統的仿真設計
主站蜘蛛池模板: 免费无码一区二区| 999国产精品| 色综合色国产热无码一| 91丨九色丨首页在线播放 | 无码一区二区三区视频在线播放| 高清免费毛片| 精品亚洲欧美中文字幕在线看| 国产一线在线| 无码精油按摩潮喷在线播放| 中文字幕在线观| 国产毛片片精品天天看视频| 久久大香香蕉国产免费网站| 午夜国产大片免费观看| 欧美成人精品在线| 波多野结衣无码视频在线观看| 99re精彩视频| 亚洲国产精品美女| 婷婷综合色| 国产亚洲欧美日本一二三本道| 8090成人午夜精品| 最新精品久久精品| 久久视精品| 久久这里只精品国产99热8| 国产福利在线观看精品| 欧美午夜久久| 99资源在线| 国产一区二区三区日韩精品| 久久男人视频| 国产精品亚欧美一区二区| 一级毛片视频免费| 午夜视频免费试看| а∨天堂一区中文字幕| 亚洲第一黄片大全| 国产精品视频猛进猛出| 凹凸国产分类在线观看| 99热国产在线精品99| 人妻中文字幕无码久久一区| 国产亚洲精品97在线观看 | 天堂中文在线资源| 精品福利国产| 大香伊人久久| 99手机在线视频| 91网址在线播放| 国产精品午夜福利麻豆| 亚洲第一中文字幕| 国产成人高清精品免费软件| 欧美一区二区三区香蕉视| 91口爆吞精国产对白第三集| 国产95在线 | 欧美一区国产| 蜜桃视频一区二区| 亚洲天堂在线免费| 国产在线日本| 一级做a爰片久久毛片毛片| 免费毛片视频| 久久综合一个色综合网| 动漫精品中文字幕无码| 国产精品yjizz视频网一二区| 国产成人欧美| 青青青国产视频| 夜夜操国产| 欧洲在线免费视频| h视频在线播放| 伊人久久精品亚洲午夜| 国产精品亚洲一区二区三区z| 午夜一级做a爰片久久毛片| 欧美亚洲香蕉| 日本精品中文字幕在线不卡| 亚洲熟妇AV日韩熟妇在线| 亚洲成人在线网| 特级精品毛片免费观看| 国产麻豆另类AV| 伊人婷婷色香五月综合缴缴情| 在线欧美日韩国产| 国产成人精品一区二区三区| 综合色亚洲| 亚洲成人黄色在线| 小说区 亚洲 自拍 另类| 欧美精品成人一区二区在线观看| 国产美女在线观看| 色婷婷综合激情视频免费看| 88av在线|