新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于STM32的PWM音樂播放器應用設計

        基于STM32的PWM音樂播放器應用設計

        作者: 時間:2012-12-08 來源:網絡 收藏

        2.1.1 系統時鐘設置
        要保證定時的準確性,必須先確保系統時鐘的設置是我們所預期的。時鐘分配如圖1所示。通過編程使SYSCLK為72 MHz,APB1預分頻后得到PCLK1為36 MHz,再經TIM2~TIM7倍頻器得到TIM2~TIM7時鐘72 MHz。時鐘源多采用HSE(外部時鐘源),對于F103,其外部時鐘為8 MHz,而F107外部時鐘為25 MHz,因此,在使用HSE做時鐘源時,這兩種器件產生SYSCLK的分頻和倍頻方式不同,需要使用者引起注意。


        j.JPG

        3 用控制播放音樂
        3.1 硬件電路設計
        電路如圖2所示。需要注意的是,有源是以固定頻率工作,加電即可鳴叫,無源蜂鳴器可以用不同頻率輸入信號來控制發聲,因此,需要選擇無源蜂鳴器。核心控制器件選擇F103VET6,其引腳PB5連接到BEEP。由電路可知,當PB5為高電平時,蜂鳴器可工作,只要控制PB5高低電平輸出形成的矩形波的頻率就可以控制蜂鳴器演奏音樂。

        a.JPG


        3.2 程序設計
        3.2.1 制作樂譜
        音階的產生依賴于輸出信號的頻率。為了簡化設計,我們令的TIM_Period為1 999,且占空比始終為50%,根據式(1)則TIM_ Pulse為1000。此時,輸出信號頻率僅與預分頻系數TIM_Prescaler有關,只需要調整該系數,即可得到所需信號頻率。
        TIM_Prescaler由下式得到:
        d.JPG
        式(2)中,fsound為音階對應的頻率,如低音Do頻率為262 Hz。要產生該音頻,TIM_Prescaler應為136。
        樂譜由音階和節拍組成,每兩個元素為一組,前者表示音階,后者表示節拍。節拍以1/4拍為基準,存放的數值為1/4拍的倍數。相關代碼如下:

        a.JPG

        pwm相關文章:pwm是什么


        pwm相關文章:pwm原理


        蜂鳴器相關文章:蜂鳴器原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 百色市| 夏河县| 修文县| 乌拉特后旗| 松桃| 吐鲁番市| 洞头县| 嘉鱼县| 桃园市| 东乌珠穆沁旗| 兴文县| 荥经县| 富川| 昭苏县| 龙井市| 尚志市| 乌鲁木齐市| 繁峙县| 大同市| 五台县| 酉阳| 金川县| 诸暨市| 河西区| 都江堰市| 浦城县| 甘泉县| 汝城县| 军事| 舞钢市| 疏附县| 富宁县| 壶关县| 凤冈县| 页游| 锡林郭勒盟| 邛崃市| 南充市| 合阳县| 酉阳| 时尚|