新聞中心

        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原理


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


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 邵阳市| 石泉县| 肃北| 通州区| 青铜峡市| 广东省| 宁陕县| 韩城市| 南宁市| 武穴市| 资溪县| 福建省| 册亨县| 古田县| 文安县| 富平县| 肥西县| 武定县| 额济纳旗| 图片| 溧阳市| 雷波县| 彭水| 临湘市| 兰州市| 沧源| 嘉定区| 石棉县| 余庆县| 龙胜| 同德县| 新河县| 贡山| 内丘县| 大港区| 龙胜| 保山市| 松滋市| 东台市| 黔东| 云安县|