Lesson 3.3

การเชื่อมต่อ Serial และการใช้งานไลบรารี

1. การสื่อสารข้อมูลผ่าน Serial Monitor

พอร์ต Serial คือทางผ่านข้อมูลระหว่างบอร์ดกับคอมพิวเตอร์ ใช้ตรวจสอบค่า (Debug) หรือรับส่งข้อความ

Serial.begin(9600);

เริ่มสื่อสารที่ความเร็ว (Baud Rate) 9600

Serial.read();

รับข้อมูล (Input) จากคอมพิวเตอร์เพื่อนำมาสั่งงานบอร์ด

ตัวอย่างโค้ด: การส่งข้อความต้อนรับ และเขียนคำสั่งให้บอร์ดตอบกลับตัวอักษรที่เราพิมพ์ส่งไป
*นำเมาส์ไปชี้ที่เส้นประใต้โค้ดเพื่ออ่านคำอธิบายการทำงาน

Serial_Communication.ino
void setup() {
  Serial.begin(9600);คำสั่งเปิดช่องทางการสื่อสาร โดยกำหนดความเร็วรับส่งข้อมูลที่ 9600 บิตต่อวินาที
  Serial.println("System Ready!");ส่งข้อความ "System Ready!" ไปแสดงผลบนหน้าจอ Serial Monitor พร้อมปัดบรรทัดใหม่
}

void loop() {
  if (Serial.available() > 0)ตรวจสอบว่ามีข้อมูลส่งมาจากคอมพิวเตอร์มารอให้บอร์ดอ่านหรือไม่ (ถ้ามีจะมากกว่า 0) { 
    char data = Serial.read();อ่านข้อมูลที่คอมพิวเตอร์ส่งมา แล้วนำไปเก็บไว้ในตัวแปรชื่อ data (เก็บทีละ 1 ตัวอักษร)
    
    Serial.print("You sent: ");
    Serial.println(data); 
  }
}
🚀 MISSION 3

ภารกิจที่ 3: สายลับถอดรหัส (Serial Decoder)

เขียนโปรแกรมรับส่งข้อมูลผ่าน Serial เช่น ส่ง "Hello" ทุก 1 วินาที และเขียนคำสั่งรับข้อมูลจากคอมพิวเตอร์เพื่อควบคุมการเปิด-ปิด LED บนบอร์ด

ปฏิบัติภารกิจที่ 3

2. คู่มือโค้ดแบบโต้ตอบ (Annotated Code Snippets)

Library คือชุดคำสั่งสำเร็จรูปที่ติดตั้งเพิ่ม เพื่อใช้กับโมดูลที่ซับซ้อน เช่น DHT11 (วัดอุณหภูมิ) หรือ LiquidCrystal_I2C (ควบคุมจอ LCD)
*นำเมาส์ไปชี้ที่เส้นประใต้โค้ดเพื่ออ่านคำอธิบายการทำงาน

LCD_Example.ino
#include <LiquidCrystal_I2C.h>คำสั่งดึงไฟล์ไลบรารีที่ติดตั้งไว้แล้ว เข้ามาใช้งานในโปรเจกต์ของเรา

LiquidCrystal_I2C lcd(0x27, 16, 2);ประกาศชื่อและตั้งค่าที่อยู่ (Address) ของจอให้ตรงกับโมดูล I2C พร้อมระบุขนาดจอคือ 16 ตัวอักษร 2 บรรทัด

void setup() {
  lcd.init();คำสั่งเริ่มต้นการทำงานของหน้าจอ LCD           
  lcd.backlight();สั่งเปิดไฟแบ็คไลท์ที่หลังจอ เพื่อให้มองเห็นตัวอักษรสว่างขึ้น      
  lcd.print("Smart School");แสดงผลข้อความลงบนหน้าจอตามที่อยู่ในเครื่องหมายฟันหนู 
}
🚀 MISSION 4

ภารกิจที่ 4: หน่วยประกาศศักดา (LCD Display)

ต่อวงจรจอ LCD 16x2 แบบ I2C ค้นหาและติดตั้งไลบรารี LiquidCrystal_I2C พร้อมเขียนโปรแกรมแสดงผลข้อความ และบันทึกปัญหาที่พบ (เช่น จอไม่แสดงอักษร) ลงในศูนย์แก้ปมปัญหา

ปฏิบัติภารกิจที่ 4