Page 201 - เอกสารประกอบการสอนวิชาไมโครคอนโทรลเลอร์เบื้องต้น
P. 201
เอกสารประกอบการสอนวิชาไมโครคอนโทรลเลอร์เบื้องต้น 17
ตัวอย่างที่ 4.5
void setup ( )
{
Serial .begin (9600) ; / / opens serial port, baudrate 9600 bps
}
เป็นการเลือกอัตราบอดเท่ากับ 9600 บิตต่อวินาที
4.2.2 Serial .available ( )
ใช้แจ้งว่าได้รับข้อมูลตัวอักษร (characters) แล้ว และพร้อมส าหรับการอ่านไปใช้งาน
ค่าที่ส่งกลับจากฟังก์ชั่น
จ านวนไบต์ที่พร้อมส าหรับการอ่านค่า โดยเก็บข้อมูลในบัฟเฟอร์ตัวรับ ถ้าไม่มีข้อมูลจะมีค่าเป็น 0 ถ้ามี
ข้อมูลฟังก์ชั่นจะคืนค่าที่มากว่า 0 โดยบัฟเฟอร์สามารถเก็บข้อมูลได้สูงสุด 128 ไบต์
ตัวอย่างที่ 4.6
int incomingByte = 0 ; / / for incoming serial data
void setup ( )
{
Serial . begin (9600) ; / / opens serial port, baud rate 9600 bps
delay (5000) ;
}
void loop ( )
{
if (Serial .available ( ) > 0) / / send data only when you receive data :
{
incomingByte = Serial .read ( ) ; / / read the incoming byte :
Serial .print (“I received : “) ; / / say what you got :
Serial .println (incomingByte, DEC) ;
}
}
ในตัวอย่างนี้ ใช้อัตราบอด 9,600 บิตต่อวินาที เมื่อรันโปรแกรมจะต้องเปิดหน้าต่าง Serial Monitor เพื่อ
ป้อนข้อมูลมายังบอร์ด Arduino Uno ด้วย ถ้ามีข้อมูลเข้ามาจะเก็บไว้ในตัวแปร incomingByte แล้วน าไปแสดงที่
หน้าต่าง Serial Monitor โดยต่อท้ายข้อความ I received : ค่าที่แสดงจะเป็นค่าข้อมูลในรูปของเลขฐานสิบ
หน่วยที่ 4 ฟังก์ชั่นพื้นฐานของ Arduino และการควบคุมหลอดไฟ LED เรียบเรียงโดยครูทันพงษ์ ภู่รักษ์