ขอถามเกี่ยวกับการเขียนโปรแกรมArduino

ขอถามเกี่ยวกับการใช้งานคำสั่งฟังก์ชั่นครับ จากตัวอย่างด้านล่างซึ่งเป็น Code ของ Real time clock
(ผมขอไม่กล่าวถึงรายละเอียดการประกาศ include หรือส่วนที่ไม่เกี่ยวข้องนะครับ ขอยกประเด็นมาเลย)

ถ้าผมต้องการค่าจากตัวแปร monthDay ที่อยู่ใน void setDateTime() มาเขียนเงื่อนไขใน void loop() ผมจะต้องโยนค่ามายังไงหรอครับ?

void setDateTime(){

  byte second =      00; //0-59
  byte minute =      00; //0-59
  byte hour =        00; //0-23
  byte weekDay =     0; //1-7
  byte monthDay =    0; //1-31
  byte month =       0; //1-12
  byte year  =       0; //0-99

  Wire.beginTransmission(DS1307_ADDRESS);
  Wire.write(zero); //stop Oscillator

  Wire.write(decToBcd(second));
  Wire.write(decToBcd(minute));
  Wire.write(decToBcd(hour));
  Wire.write(decToBcd(weekDay));
  Wire.write(decToBcd(monthDay));
  Wire.write(decToBcd(month));
  Wire.write(decToBcd(year));

  Wire.write(zero); //start

  Wire.endTransmission();
}

byte decToBcd(byte val){
// Convert normal decimal numbers to binary coded decimal
  return ( (val/10*16) + (val) );
}

byte bcdToDec(byte val)  {
// Convert binary coded decimal to normal decimal numbers
  return ( (val/16*10) + (val) );
}

void printDate(){

  // Resยิ้มgister pointer
  Wire.beginTransmission(DS1307_ADDRESS);
  Wire.write(zero);
  Wire.endTransmission();

  Wire.requestFrom(DS1307_ADDRESS, 7);

  int second = bcdToDec(Wire.read());
  int minute = bcdToDec(Wire.read());
  int hour = bcdToDec(Wire.read() & 0b111111); //24 hour time
  int weekDay = bcdToDec(Wire.read()); //0-6 -> sunday - Saturday
  int monthDay = bcdToDec(Wire.read());
  int month = bcdToDec(Wire.read());
  int year = bcdToDec(Wire.read());

  //print the date EG   3/1/11 23:59:59

  Serial.print("Day: ");
  Serial.print(monthDay);
  Serial.print(" ");
  Serial.print("Time: ");
  Serial.print(hour);
  Serial.print(":");
  Serial.print(minute);
  Serial.print(":");
  Serial.println(second);

}


void loop()
{
  if(monthDay<3)
  {
        print("OK");
  }
}
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่