/* * 點亮所有的LED燈 */ const int LEDs[]={10,A4,A3,A2,A1,A0,3,5,6,9} ; void setup() { // put your setup code here, to run once: for(int i=0;i<10;i++) pinMode(LEDs[i],OUTPUT) ; } void loop() { // put your main code here, to run repeatedly: for(int i=0;i<10;i++) { digitalWrite(LEDs[i],HIGH) ; delay(500); } }
/* * LED模組使用 */ const int LEDs[]={3,4,5,6,7,8,9,10,11,12} ; int j = 0 ; /* 由左至右一次只亮一顆燈 */ void oneLedLeft(void) { turnLedOff() ; digitalWrite(LEDs[j],HIGH) ; delay(500); j++ ; if(j==10) j=0; } /* 由右至左一次只亮一顆燈 */ void oneLedRight(void) { turnLedOff() ; digitalWrite(LEDs[j],HIGH); delay(500) ; j--; if(j<0) j=9 ; } /* 由右自左點亮LED燈 */ void ledRight(void) { for(int i=0;i<10;i++) { digitalWrite(LEDs[i],HIGH); delay(100) ; } for(int i=0;i<10;i++) { digitalWrite(LEDs[i],LOW); delay(100) ; } } /* 關閉所有的LED燈 */ void turnLedOff(void) { for(int i=0;i<10;i++) digitalWrite(LEDs[i],LOW) ; } /* * 電位計函數 * 取得可變電阻的值,並將數值0~1023轉換成0~10,點亮LED */ void potentioMeter(void){ int val=0,val2=0; val = analogRead(A0) ; turnLedOff() ; val2 = map(val,0,1023,0,10) ; for(int i=0;i<val2;i++) digitalWrite(LEDs[i],HIGH) ; delay(500) ; } void setup() { // put your setup code here, to run once: Serial.begin(9600) ; for(int i=0;i<10;i++) pinMode(LEDs[i],OUTPUT) ; pinMode(A0,INPUT); } void loop() { // put your main code here, to run repeatedly: // 呼叫下列任一個函式 // potentioMeter(); //電位計函數 // oneLedLeft() ; /* 由左至右一次只亮一顆燈 */ // oneLedRight() ;/* 由右至左一次只亮一顆燈 */ // ledRight() ; /* 由右自左點亮LED燈 */ }