เขียนโปรแกรมปรับค่าความสว่างของ LED (PWM)
ฟังก์ชั่นที่ใช้งาน
-analogWrite() http://arduino.cc/en/Reference/AnalogWrite
Analog output
analogWrite(pin, value) enables software PWM on the given pin. PWM may be used on pins 0 to 16. Call analogWrite(pin, 0) to disable PWM on the pin. value may be in range from 0 to PWMRANGE, which is equal to 1023 by default. PWM range may be changed by calling analogWriteRange(new_range).
PWM frequency is 1kHz by default. Call analogWriteFreq(new_frequency) to change the frequency.
Reference http://esp8266.github.io/Arduino/versions/2.0.0/doc/reference.html
ผลของ PWM กับความสว่าง
โจทย์การทดลอง
-เขียนโปรแกรมควบคุมความสว่างของ LED 4 ตัว
-รูปแบบเป็นไฟวิ่งและระดับความสว่างในแต่ละจังหวะและรูปแบบที่แตกต่างกัน
-โปรแกรมรายละเอียดพิเศษรายกลุ่ม (แจ้งให้ทราบเมื่อถึงชั่วโมงเรียน)
วงจรที่ใช้ทดลอง
กรณีใช้บอร์ดรุ่น NodeMCU
กรณีใช้บอร์ดรุ่น WeMos D1 mini
ตัวอย่างโปรแกรม
ฟังก์ชั่นที่ใช้งาน
-analogWrite() http://arduino.cc/en/Reference/AnalogWrite
Analog output
analogWrite(pin, value) enables software PWM on the given pin. PWM may be used on pins 0 to 16. Call analogWrite(pin, 0) to disable PWM on the pin. value may be in range from 0 to PWMRANGE, which is equal to 1023 by default. PWM range may be changed by calling analogWriteRange(new_range).
PWM frequency is 1kHz by default. Call analogWriteFreq(new_frequency) to change the frequency.
Reference http://esp8266.github.io/Arduino/versions/2.0.0/doc/reference.html
ผลของ PWM กับความสว่าง
โจทย์การทดลอง
-เขียนโปรแกรมควบคุมความสว่างของ LED 4 ตัว
-รูปแบบเป็นไฟวิ่งและระดับความสว่างในแต่ละจังหวะและรูปแบบที่แตกต่างกัน
-โปรแกรมรายละเอียดพิเศษรายกลุ่ม (แจ้งให้ทราบเมื่อถึงชั่วโมงเรียน)
วงจรที่ใช้ทดลอง
กรณีใช้บอร์ดรุ่น NodeMCU
กรณีใช้บอร์ดรุ่น WeMos D1 mini
ตัวอย่างโปรแกรม
โค๊ด: [Select]
#define LED1 D2
#define LED2 D3
void setup()
{
pinMode(LED1,OUTPUT);
pinMode(LED2,OUTPUT);
}
void loop()
{
for(int x=0;x<=1023;x+=5) //Add up step to 5
{
analogWrite(LED1,x);
analogWrite(LED2,1023-x);
delay(50);
}
}
ความคิดเห็น
แสดงความคิดเห็น