ここではArduinoの基本的なプログラムを紹介していきます。
LED1
1 2 3 4 5 6 7 8 9 10 11 12 13 | //LEDを点滅させる void setup() { pinMode(13, OUTPUT); //13番のピンを出力モードに } void loop() { digitalWrite(13, HIGH); //13をONにする delay(1000); //1000ms待つ digitalWrite(13, LOW); //13をOFFにする delay(1000); // } |
LED2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | //3色LEDを点灯させる void setup() { pinMode(13, OUTPUT); //13を出力モードに pinMode(12, OUTPUT); // pinMode(11, OUTPUT); // } void loop() { digitalWrite(13, HIGH); //13をONに digitalWrite(12, HIGH); // digitalWrite(11, HIGH); // delay(1000); // digitalWrite(13, LOW); // digitalWrite(12, LOW); // digitalWrite(11, LOW); // delay(1000); // } |
LED4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | // 中間色をつくる void setup(){} void loop() { analogWrite(11,0); //徐々に明るくなる delay(100); analogWrite(11, 50); delay(100); analogWrite(11, 100); delay(100); analogWrite(11, 150); delay(100); analogWrite(11, 200); delay(100); analogWrite(11, 255); delay(100); } |
LED5
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | // いろいろな中間色をつくる void setup(){} void loop() { analogWrite(11,0); //11はだんだん明るく analogWrite(10,255); //10はだんだん暗く delay(100); analogWrite(11, 50); analogWrite(10,200); delay(100); analogWrite(11, 100); analogWrite(10,150); delay(100); analogWrite(11, 150); analogWrite(10,100); delay(100); analogWrite(11, 200); analogWrite(10,50); delay(100); analogWrite(11, 255); analogWrite(10,0); delay(100); } |
LED6
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | // 変数を使う int t=50; //tの長さを変えると点滅速度を変えられる void setup(){} void loop() { analogWrite(11,0); analogWrite(10,255); delay(t); analogWrite(11, 50); analogWrite(10,200); delay(t); analogWrite(11, 100); analogWrite(10,150); delay(t); analogWrite(11, 150); analogWrite(10,100); delay(t); analogWrite(11, 200); analogWrite(10,50); delay(t); analogWrite(11, 255); analogWrite(10,0); delay(t); } |
LED7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | // forループを使う int t=5; void setup(){} void loop() { for(int i=0;i<255;i++){ //0~255へ徐々に明るく analogWrite(11,i); delay(t); } for(int i=255;i>0;i--){ //255~0へ徐々に暗く analogWrite(11,i); delay(t); } } |
READ1
1 2 3 4 5 6 7 8 9 10 11 12 13 | int analogValue = 0; // アナログ値を格納する変数 void setup(){ Serial.begin(9600); // シリアルポートを9600bpsで開く } void loop(){ analogValue = analogRead(0); // アナログピン0から読み取る Serial.print(analogValue); //読んだ値をPCへ送る Serial.println(); // 改行を送信 delay(100); // 100ミリ秒停止 } |
servo1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #include <Servo.h> Servo myservo; void setup() { myservo.attach(9); //9番にサーボをつなぐ } void loop() { myservo.write(90); //90度にする delay(1000); myservo.write(0); //0度にする delay(1000); } |
さとうなるみの信号機プログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | void setup() { pinMode(13, OUTPUT); //13番のピンを出力モードに pinMode(12, OUTPUT); //13番のピンを出力モードに pinMode(11, OUTPUT); //13番のピンを出力モードに } void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); digitalWrite(12, HIGH); delay(1000); digitalWrite(12, LOW); delay(1000); digitalWrite(11, HIGH); delay(1000); digitalWrite(11, LOW); delay(1000); } |