analogWrite()
函式,接受 0~255 的數值。數值越高,LED 亮度越高。Serial.begin()
與 Serial.print()
函式,可以將數據顯示在 Arduino IDE 的串列監視器上,方便除錯與觀察變化。// 定義可變電阻接腳與 LED 接腳
const int potPin = A0; // 可變電阻連接至 A0
const int ledPin = 9; // LED 連接至 PWM 輸出腳位 9
int potValue = 0; // 儲存從可變電阻讀取的值 (0~1023)
int pwmValue = 0; // 將轉換後的 PWM 數值 (0~255)
void setup(){
Serial.begin(9600); // 初始化串列監視器,波特率設為 9600
pinMode(ledPin, OUTPUT); // 設定 LED 腳為輸出
}
void loop(){
// 讀取可變電阻電壓,返回值介於 0 到 1023
potValue = analogRead(potPin);
// 將 0~1023 的數值映射到 0~255 (對應 PWM 輸出)
pwmValue = map(potValue, 0, 1023, 0, 255);
// 使用 analogWrite() 將 PWM 值輸出到 LED
analogWrite(ledPin, pwmValue);
// 將數據輸出到串列監視器上,方便觀察
Serial.print("Potentiometer: ");
Serial.print(potValue);
Serial.print(" -> PWM: ");
Serial.println(pwmValue);
// 每次循環延時 1000 毫秒,降低更新頻率
delay(1000);
}
本頻道持續更新中(內容涵蓋前端程式設計入門、大學必備程式設計入門、電子系專業課程入門、數學微積分題解)如果身旁有相關科系的學生,不妨推薦一下喔~
相信這裡會是家教或線上課程之外,高中、大學生系統性綜合學習的好選擇。
最後感謝您的觀看!