學(xué)習(xí)筆記:
脈沖寬度調(diào)制(PWM),是英文“Pulse Width Modulation”的縮寫(xiě),簡(jiǎn)稱脈寬調(diào)制,是利用微處理器的數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測(cè)量、通信到功率控制與變換的許多領(lǐng)域中。
實(shí)踐1-pwm-led閃爍
要求產(chǎn)生周期為200ms,占空比為50%的PWM信號(hào)來(lái)控制led燈。
1.cubemax配置
由原理圖可知,led引腳復(fù)用為tim5
周期為200ms,占空比為50%,Tim5掛在APB1總線上,CLK = 84MHZ;假設(shè)PSC =8399,根據(jù)公式ARR = 1999,CRR = 1000.
生成代碼
main.c 添加
/* USER CODE BEGIN 2 */
HAL_TIM_PWM_Start(&htim5,TIM_CHANNEL_1); //啟動(dòng)定時(shí)器5通道1輸出周期為200ms,占空比50%得PWM信號(hào)。
/* USER CODE END 2 */
將代碼下載到開(kāi)發(fā)板中,實(shí)驗(yàn)結(jié)果led每隔100ms閃爍。
實(shí)踐2-PWM-呼吸燈
周期改為20ms,因?yàn)榇笥?0hz使人眼不會(huì)察覺(jué)出閃爍現(xiàn)象。
占空比從0%-100%反復(fù),從而實(shí)現(xiàn)呼吸燈。
根據(jù)公式可得,PSC=8399,ARR=199。
占空比從0%開(kāi)始,所以CRR 的初值為 0,根據(jù)公式計(jì)算CCR = 200時(shí),占空比為100%。
生成代碼
mian.c 修改
/* USER CODE BEGIN 2 */
uint16_t i =0; //CCR
uint16_t step = 10; //步進(jìn)值,使呼吸效果明顯
HAL_TIM_PWM_Start(&htim5,TIM_CHANNEL_1);//啟動(dòng)定時(shí)器5的通道1產(chǎn)生PWM
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
//知識(shí)點(diǎn):在for/while等循環(huán)內(nèi)部定義的變量屬于局部變量,當(dāng)for循環(huán)結(jié)束以后,局部變量就會(huì)被銷毀
for(i=0;i<=200;i = i+step)
{
__HAL_TIM_SET_COMPARE(&htim5,TIM_CHANNEL_1,i);
HAL_Delay(200);
}
/* USER CODE BEGIN 3 */
}
實(shí)驗(yàn)現(xiàn)象,出現(xiàn)呼吸燈效果并反復(fù)。
-
led
+關(guān)注
關(guān)注
242文章
23362瀏覽量
663224 -
led燈
+關(guān)注
關(guān)注
22文章
1592瀏覽量
108418 -
PWM
+關(guān)注
關(guān)注
114文章
5198瀏覽量
214889 -
STM32
+關(guān)注
關(guān)注
2272文章
10924瀏覽量
357592 -
微處理器
+關(guān)注
關(guān)注
11文章
2274瀏覽量
82778 -
功率控制器
+關(guān)注
關(guān)注
0文章
28瀏覽量
12385 -
脈沖寬度調(diào)制
+關(guān)注
關(guān)注
7文章
81瀏覽量
13789 -
PWM波
+關(guān)注
關(guān)注
0文章
99瀏覽量
16950
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
ALIENTEK_MINISTM32_實(shí)驗(yàn)8_PWM輸出實(shí)驗(yàn)
STM32各模塊學(xué)習(xí)筆記
STM32單片機(jī)PWM輸出學(xué)習(xí)
![<b class='flag-5'>STM32</b>單片機(jī)<b class='flag-5'>PWM</b><b class='flag-5'>輸出</b><b class='flag-5'>學(xué)習(xí)</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
STM32 CubeMX學(xué)習(xí):5. 其他PWM設(shè)備
![<b class='flag-5'>STM32</b> CubeMX<b class='flag-5'>學(xué)習(xí)</b>:5. 其他<b class='flag-5'>PWM</b>設(shè)備](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用STM32輸出PWM波形
![使用<b class='flag-5'>STM32</b><b class='flag-5'>輸出</b><b class='flag-5'>PWM</b>波形](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
STM32PWM與示波器實(shí)驗(yàn)
![<b class='flag-5'>STM32PWM</b>與示波器實(shí)驗(yàn)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
【Rt-Thread】STM32輸出PWM
![【Rt-Thread】<b class='flag-5'>STM32</b><b class='flag-5'>輸出</b><b class='flag-5'>PWM</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
STM32學(xué)習(xí)筆記:PWM互補(bǔ)輸出(無(wú)刷直流電機(jī)驅(qū)動(dòng)控制)
![<b class='flag-5'>STM32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>:<b class='flag-5'>PWM</b>互補(bǔ)<b class='flag-5'>輸出</b>(無(wú)刷直流電機(jī)驅(qū)動(dòng)<b class='flag-5'>控制</b>)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
STM32通過(guò)PWM控制電機(jī)速度
![<b class='flag-5'>STM32</b>通過(guò)<b class='flag-5'>PWM</b><b class='flag-5'>控制</b>電機(jī)速度](https://file1.elecfans.com/web2/M00/8C/19/wKgZomSmH1OAGSNRAACBEuIXb6A923.png)
評(píng)論