รูปแบบ | คำอธิบาย |
---|---|
pinMode(pin, mode); | pin: หมายเลขขาที่ต้องการเซตโหมด mode: INPUT, OUTPUT, INPUT_PULLUP |
digitalWrite(pin,value); | pin: หมายเลข ขาที่ต้องการเขียนลอจิกออกพอร์ต value: ค่าลอจิกที่ต้องการส่งออก HIGH or LOW |
delay(ms); | ms: ตัวเลขที่หยุดค้างของเวลาหน่วยมิลลิวินาที (unsigned long) |
รูปแบบ | คำอธิบาย |
---|---|
Serial.begin(speed); | ฟังก์ชั่นกำหนดอัตราเร็วของการสื่อสารทางพอร์ตอนุกรม ค่าความเร็วได้แก่ 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, หรือ 115200 |
Serial.available(); | ฟังก์ชั่นตรวจสอบว่ามีข้อมูลเข้ามายังพอร์ตอนุกรมหรือไม่ |
Serial.read(); | ฟังก์ชั่นอ่านข้อมูลที่เข้ามายังพอร์ตอนุกรม |
Serial.write(); | ฟังก์ชั่นส่งข้อมูลขนาด 8 bit ต่อการส่ง 1 ครั้ง โดยข้อมูลที่ส่งจะเป็นข้อมูลที่อยู่ในตัวแปรที่เป็นชนิด char หรือ byte |
Serial.print(); | ฟังก์ชั่นส่งข้อมูลที่รองรับข้อมูลทุกชนิด เมื่อส่งเสร็จเคอร์เซอร์จะรออยู่ท้ายข้อมูลที่ส่งออกไป |
Serial.prinln(); | ฟังก์ชั่นส่งข้อมูลที่รองรับข้อมูลทุกชนิด เช่นเดียวกับ .print ต่างกันตรงที่ เมื่อส่งเสร็จเคอร์เซอร์จะขึ้นบรรทัดใหม่ |
#define LED1 21
#define LED2 19
#define LED3 18
#define LED4 5
void send2port(char data);
void setup() {
pinMode(LED1,OUTPUT);
pinMode(LED2,OUTPUT);
pinMode(LED3,OUTPUT);
pinMode(LED4,OUTPUT);
Serial.begin(9600);
}
void loop() {
for(byte i=0;i<15;i++){
send2port(i);
Serial.print("Status of LED is :");
Serial.println(i,BIN);
delay(500);
}
}
void send2port(char data)
{
digitalWrite(LED1,data & 1 ? 1:0);
digitalWrite(LED2,data & 2 ? 1:0);
digitalWrite(LED3,data & 4 ? 1:0);
digitalWrite(LED4,data & 8 ? 1:0);
}
#define LED1 21
#define LED2 19
#define LED3 18
#define LED4 5
void setup() {
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT);
Serial.begin(9600);
}
void loop() {
for (byte i = 0; i < 100; i++) {
Serial.print(".");
delay(200);
if (Serial.available()) {
char inChar = Serial.read();
digitalWrite(LED1, inChar == '1' ? 1 : 0);
digitalWrite(LED2, inChar == '2' ? 1 : 0);
digitalWrite(LED3, inChar == '3' ? 1 : 0);
digitalWrite(LED4, inChar == '4' ? 1 : 0);
Serial.println();
Serial.print("Data received is: ");
Serial.println(inChar);
}
}
Serial.println();
}