主婦に教えるマイコンプログラミング、4時間目! 関数の作り方で使うプログラム

 //プログラム1

//宣言して使う関数


// LEDを明滅させる関数の宣言

void ledBlink() {

  // 13番ピンの状態を1(Hi)にする

  digitalWrite(13, HIGH);

  // 0.5秒待機

  delay(500);

  // 13番ピンの状態を0(Lo)にする

  digitalWrite(13, LOW);

  // 1秒待機

  delay(1000);

}


void setup(){

pinMode(13, OUTPUT);

}


void loop(){

ledBlink();

}



//プログラム2

//引数を使う


//引数 onTimeとoffTimeを追加

void ledBlink(int onTime , int offTime) {

  // 13番ピンの状態を1(Hi)にする

  digitalWrite(13, HIGH);

  // 0.5秒待機

  delay(onTime);

  // 13番ピンの状態を0(Lo)にする

  digitalWrite(13, LOW);

  // 1秒待機

  delay(offTime);

}


//int の変数を一個用意する

int activeTime = 0;


void setup() {

   // 13番ピンを出力に設定

   pinMode(13, OUTPUT);

}


void loop(){

activeTime = activeTime + 100;


ledBlink(activeTime , 1000);

}



//プログラム3

//返り値というもの


//型宣言がintになってるトコに注目

//二つの引数の掛け算を返す

int  multiVal(int a,int b) {

int retVal;


  retVal = a * b;


return retVal;

}


//引数 onTimeとoffTimeを追加

void ledBlink(int onTime , int offTime) {

  // 13番ピンの状態を1(Hi)にする

  digitalWrite(13, HIGH);

  // 0.5秒待機

  delay(onTime);

  // 13番ピンの状態を0(Lo)にする

  digitalWrite(13, LOW);

  // 1秒待機

  delay(offTime);

}


//int の変数を一個用意する

int activeTime = 100;


void setup() {

   // 13番ピンを出力に設定

   pinMode(13, OUTPUT);

}


void  loop() {

//waitTimeに100足したものを返す

activeTime =  multiVal( activeTime , 2 ); 


  ledBlink(activeTime, 1000);

}


コメント