Page 207 - เอกสารประกอบการสอนวิชาไมโครคอนโทรลเลอร์เบื้องต้น
P. 207
เอกสารประกอบการสอนวิชาไมโครคอนโทรลเลอร์เบื้องต้น 23
Serial. flush() ใช้ล้างบัฟเฟอร์ทั้งด้านรับและส่ง
Serial. print(data) ใช้ส่งข้อมูลออกพอร์ตอนุกรม
Serial. println(data) ใช้ส่งข้อมูลออกพอร์ตอนุกรมพร้อมกับขึ้นบรรทัดใหม่
4.2.9 โปรแกรมส่งข้อมูลออกพอร์ตอนุกรม
เริ่มต้นด้วยการใช้ฟังก์ชั่น Serial. begin() เพื่อสั่งเปิดพอร์ตอนุกรมและก าหนดอัตราถ่ายทอดข้อมูลที่ใช้ใน
การสื่อสารข้อมูลหรืออัตราบอด มีรูปแบบการเขียนโปรแกรมดังนี้
Serial. begin(speed);
เมื่อ speed คืออัตราบอดมีค่า 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400,57600
หรือ 115200 บิตต่อวินาที ปกติที่ใช้คือ 9600
หลังจากเปิดพอร์ต เมื่อต้องการส่งข้อมูลให้ใช้ฟังก์ชั่น Serial. print() หรื อ Serial. println()
ฟังก์ชั่นทั้งสองตัวท างานให้ผลคล้ายกัน ต่างกันเมื่อ Serial. println() ส่งข้อมลูแล้วจะขึ้นบรรทัดใหม่ให้อัตโนมัติ
ฟังก์ชั่น Serial. print() และ Serial. println() มีรูปแบบดังนี้
Serial. print(b,FORMAT); กับ Serial. println(b,FORMAT);
โดยที่ b คือค่าตัวแปรประเภทเลขจ านวนเต็มที่ต้องการส่งออกทางพอร์ตอนุกรม ถ้าไม่ระบุรูปแบบจะพิมพ์
ออกเป็นรหัส ASCII ของค่าตัวแปร
FORMAT เป็นรูปแบบของการพิมพ์มี DEC (เลขฐานสิบ), HEX (เลขฐานสิบหก), OCT (เลขฐานแปด)
และ BIN (เลขฐานสอง)
โปรแกรมที่ 4.6
ไฟล์ Serial01.ino โปรแกรมทดสอบการส่งข้อมลูออกพอร์ตอนุกรมเสมือนผ่านทางพอร์ต USB
/* Code for send out data to serial port
* File : Serial01.pde
*/
void setup()
{
Serial. begin(9600); // Set serial port to 9600 bit per second
}
void loop()
{
int data = 2345; // print string to serial port
Serial. println("Welcome to Arduino Programming"); // print title
หน่วยที่ 4 ฟังก์ชั่นพื้นฐานของ Arduino และการควบคุมหลอดไฟ LED เรียบเรียงโดยครูทันพงษ์ ภู่รักษ์