07. Serial write 1

จากบทความ การติดต่อกับพอร์ทอนุกรม การส่งข้อมูลออกพอร์ทอนุกรมใช้คำสั่ง Serial.print หรือ Serial.println ซึ่งจะแปลงข้อมูลทุกอย่างเป็นอักขระ (ตัวหนังสือ) แล้วค่อยส่ง แต่ถ้าต้องการส่งข้อมูลที่เป็นตัวเลข ต้องใช้คำสั่ง Serial.write

การทำงาน Arduino จะส่งข้อมูลตัวเลขจำนวนเต็มตั้งแต่ 0 ถึง 99 ออกทางพอร์ทอนุกรม

การตรวจว่าข้อมูลได้รับหรือไม่ใช้โปรแกรม Terminal ที่สามารถแสดงผลตัวเลขได้ แต่ในที่นี้จะใช้โปรแกรม ที่เขียนจากโปรแกรม Processing ในหัวข้อ 06.การรับข้อมูลตัวเลขจากพอร์ทอนุกรม

ส่วนผู้ที่ยังไม่เข้าใจวิธีการเขียนโปรแกรมของ Arduino ให้เริ่มต้นที่หัวข้อ 01.เริ่มต้นกับ Arduino เป็นต้นไป

1. ต่อสายดาวน์โหลดเข้ากับบอร์ท Arduino

รูปที่ 1

2. เขียนโปรแกรม

/* RS232 print data*/

int number = 0; //กำหนดค่าตัวแปล ให้มีค่าเริ่มต้นที่ 0

void setup()

{

Serial.begin(9600); //กำหนดความเร็วการสื่อสารใว้ที่ 9600 บิตต่อวินาที

}

void loop() //ทำงานต่อเนื่องไม่มีการหยุด

{

Serial.write(number); //ส่งค่าตัวแปร number ออกทางพอร์ทอนุกรม

number++; //เพิ่มค่าตัวแปร

if(number>=100) number=0; //ตรวจสอบว่าตัวแปรมีค่าเกิน 99 หรือยังถ้าเกิน ให้ตัวแปรเริ่มเป็น 0 ใหม่

delay(300); // หน่วงเวลาการทำงานใว้ 300 ms

}

3.แปลและคาวน์โหลด์โปรแกรม

4.เมื่อดาวน์โหลดโปรแกรมเสร็จ ให้เปิดโปรแกรม Processing หัวข้อนี้ 06.การรับข้อมูลตัวเลขจากพอร์ทอนุกรม

การทำงานจะเป็นตามรูปที่ 2

รูปที่ 2