iT邦幫忙

2026 iThome 鐵人賽

DAY 4
0

今日目標
今天要挑戰讓LED呈現漸變的呼吸燈效果,將使用MicroPython的PWM技術,藉由控制輸出的占空比來精準調節LED的明暗度。

程式碼
import time
from machine import Pin, PWM
led_pwm = PWM(Pin(2), freq=1000)

print("PWM呼吸燈系統啟動…")

for count in range(1, 4):
print(f"---第{count}次呼吸循環---")
print("LED漸亮中…")
for duty_val in range(0, 1024, 16):
led_pwm.duty(duty_val)
time.sleep_ms(20)

print("LED漸暗中…")
for duty_val in range(1023, -1, -16):
    led_pwm.duty(duty_val)
    time.sleep_ms(20)
    

print("呼吸燈示範結束,關閉LED。")
led_pwm.duty(0)

心得
今天學會了PWM這個控燈技巧,只需將Pin包裹進PWM類別中,就能透過控制duty()數值達到類比調光的效果。這個技巧除了能用在LED燈上,未來調整蜂鳴器音量、馬達轉速,或是伺服馬達的角度時也都會用到。


上一篇
使用time.sleep() 實現LED警示燈效果
下一篇
連接開關按鈕控制LED啟閉
系列文
無硬體也能玩物聯網!使用 Wokwi 模擬器與 MicroPython 打造 30 天 ESP32 實務5
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言