基于51单片机的蜂鸣器及简谱的学习(编曲)
目錄
文章目錄
前言
一、蜂鳴器
1、無源蜂鳴器原理圖
?2、集成電路驅動(五線四項步進電機)
3、三極管驅動?編輯
4、應用電路
4、控制原理
二、樂律部分
1.鍵盤與音符的對照?編輯
2.音符與頻率對照表
?
總結
前言
學習基于51單片機無源蜂鳴器的使用,學習使用震動脈沖不同的頻率以及配合樂律的學習來進行簡單音樂的實現(xiàn)。
一、蜂鳴器
蜂鳴器分為兩大類:無源蜂鳴器、有源蜂鳴器。將電信號轉換為聲音信號器件。
無源蜂鳴器:內(nèi)部不帶震蕩源,需要控制器提供震蕩脈沖才可發(fā)聲,調(diào)整提供震蕩脈沖頻率,可發(fā)出不同聲音。
有源蜂鳴器:內(nèi)部自帶震蕩源,將正負極接上直流電壓就可以持續(xù)發(fā)聲,頻率固定。
1、無源蜂鳴器原理圖
圖1.1?
?2、集成電路驅動(五線四項步進電機)
圖1.2?
?ULN2003D一般用于步進電機的驅動,使用于風蜂鳴器有點大材小用,可以直接使用三極管驅動。(五線四項步進電機內(nèi)部邏輯是取反)
3、三極管驅動
4、應用電路
圖1.3?
4、控制原理
由圖1.1可知,蜂鳴器響起來需要BEEP口低電平,所以電路圖中可以看到IO口給1取反后才能使BEEP端為低電平0。這樣蜂鳴器就能簡單的響起來。
以圖1.2為例,控制P15輸出1或0就能控制蜂鳴器是否有電流,又因為是無源蜂鳴器,所以需要控制P15來形成不同的頻率來使它發(fā)出不同的聲音。(無源蜂鳴器靠震蕩轉換為聲音,不能一直通電)
二、樂律部分
1.鍵盤與音符的對照
圖中分為四組:
C D E F G A B :大字組? ? ? ? ? ?1234567(下兩點)
c? d? e? f? g a b?:小字組? ? ? ? ? ?1234567? ?(下一點)
c1 d1 e1 f1 g1 b1 :小字1組 ? ? ? ? ?1234567? ?(無點)
c2 d2 e2 f2 g2 b2 :小字2組 ? ? ? ? ?1234567? ? ?(上一點)
其他組以此類推
每組一一對應的字母相差8°,每組相鄰的兩字母相差1°(全音)而中間的黑鍵與字母相差1/2°(半音)
黑鍵:升半音:#? ? ?降半符號:b? ? 例:#f?==? bg
2.音符與頻率對照表
?對應鍵盤與音符的三組
基準頻率為低音6對應音名a,440赫茲。小字1組a是他的兩倍,880赫茲。大字組A為220赫茲。
因為a的頻率是A的兩倍,中間隔了12個音,所以由此得
#A的頻率=A * 2 ^(1 /12);
#G的頻率=A / 2 ^(1 /12);
單片機中使用定時器來控制頻率:
周期 = 1 / 頻率;
?
總結
根據(jù)震動周期來控制發(fā)音長短,最終實現(xiàn)蜂鳴器的編曲。
未完持續(xù)更新...
總結
以上是生活随笔為你收集整理的基于51单片机的蜂鸣器及简谱的学习(编曲)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 线性同余法随机数生成
- 下一篇: rand()函数实现原理:线性同余法