Arduino學習151.PWM呼吸燈
在Arduino內建範例中有呼吸燈程式,檔案>範例>Basics>Fade,
此學習則使用ArduBlock來編寫呼吸燈↓
注意數位腳位有標示著~的3,5,6,9,10,11腳位,才有PWM訊號功能,
PWM是輸出模擬類比訊號,讓數位訊號不再只是開和關,
在積木上主要讓輸出值在0~255之間逐加,到255時再逐減輸出值,
因此用到許多的數學運算,當正數*-1時轉為負數,當負數*-1時轉為正數,↓
上傳程式後LED燈是否是漸亮後再漸暗,試著比對Arduino的內建範例,
檔案>範例>Basics>Fade,比較2個程式的差異,
把硬體和軟體腳位改為D8非PWM腳位,比較其差別,
int
_ABVAR_1_Bright = 0 ;
int _ABVAR_2_Fade
= 0 ;
void setup()
{
pinMode( 9 , OUTPUT);
_ABVAR_1_Bright = 0 ;
_ABVAR_2_Fade = 5 ;
}
void loop()
{
analogWrite(9 , _ABVAR_1_Bright);
_ABVAR_1_Bright = ( _ABVAR_1_Bright +
_ABVAR_2_Fade ) ;
if (( ( ( _ABVAR_1_Bright ) == ( 0 ) ) || (
( _ABVAR_1_Bright ) == ( 255 ) ) ))
{
_ABVAR_2_Fade = ( _ABVAR_2_Fade * -1 ) ;
}
delay( 30 );
}
沒有留言:
張貼留言