基于stm32的PWM控制蜂鳴器頻率變音Proteus仿真
資料編號:036? ??進入VX公眾號下載全套資料:電子工程DIY工作室??
描下方二維碼查看更多單片機資源? ??

采用按鍵控制stm32的PWM頻率,驅(qū)動蜂鳴器發(fā)出不同的聲音,并且串口顯示
全套資料齊全


stm32單片機最小系統(tǒng)講解:
電源
電就是MCU要吃的飯,不吃飯,stm32芯片肯定不能工作。
stm32最小系統(tǒng)板需要5v和3.3v兩種電壓,一般可以直接通過USB提供5v電壓,也可以用電源適配器提供5V電壓。而3.3v電壓可以通過穩(wěn)壓芯片如ASM1117-3.3v等,把5v電壓降為3.3v輸出。
參考電源電路如下:

圖中J1是USB接口,提供的5v電壓經(jīng)過ASM1117-3.3v后降為3v3,C1,C2(10*10^4pF=0.1u)用于電源濾波,高頻濾波用小電容,低頻濾波用大電容。D3是一個led用以指示電源工況,其上的R1 510R即510.0Ω用以限流,防止led燈燒壞。
J3也是一個USB接口,提供5v電壓,同時它也是一個模擬串口,其D-和D+引腳與ch340相應(yīng)引腳連接構(gòu)成一個串口設(shè)備。
stm32吃的是3v3將其VDD和VSS引腳分別連接到3v3和GND,就解決了stm32的吃飯問題。
注意:VBAT是stm32芯片的備用3.3v電源輸入端,當(dāng)沒有備用電源是也需要將VBAT接到VDD上去。
VDDA和VSSA是模擬電源輸入口,用以給stm32芯片內(nèi)部ADC,復(fù)位電路供電因此必須分別接到VDD和VSS上。
復(fù)位電路
人工作久了容易自閉、精神恍惚,這時需要睡一覺就以重新煥發(fā)活力。stm32工作久了也容易“精神恍惚”————程序跑飛,也需要復(fù)位。

stm32的NRST引腳是復(fù)位信號接收引腳與RESET相連,芯片低電平復(fù)位。如上圖所示,當(dāng)芯片剛上電時,電容充電導(dǎo)通,此時RESET=0,芯片復(fù)位;當(dāng)按下復(fù)位按鈕時,RESET接地,芯片復(fù)位。
晶振電路
晶振是芯片的心跳,每一次脈沖激勵芯片執(zhí)行一條指令,因此晶振的重要性不言而喻。

上圖是stm32的晶振電路,8M無源晶振,其中R9(1M)用于穩(wěn)定晶振的脈沖波形,C8(20P)和C9(20P)一方面構(gòu)成晶振起振的必要回路,另一方面匹配電容,同時還具有調(diào)節(jié)晶振電路頻率的作用。
注意:OSC32IN是外部32.768K晶振輸入口,可以直接接時鐘信號,也可以不潔作IO用。OSCIN是外部系統(tǒng)時鐘輸入信號,可以接時鐘信號,也可以不接做IO口用,此時stm32用芯片內(nèi)部的RC電路起振產(chǎn)生時鐘信號。

