แสดงบทความที่มีป้ายกำกับ receive แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ receive แสดงบทความทั้งหมด

วันพฤหัสบดีที่ 7 พฤษภาคม พ.ศ. 2558

Arduino : จัดการข้อมูลจาก Serial Port ด้วย State Machine

Standard
     State Machine แปลตรงๆ ก็คือสถานะเครื่องจักร ถ้าใครเคยออกแบบวงจร Digital ด้วย Logic gate ที่มีสถานะ อาจจะพอนึกภาพออกมันคือรูปวาดกลมๆ แล้วมีเส้นลากไปลากมา
     State Machine เหมาะกับเอามาใช้กับข้อมูลแบบ Stream ที่เรารู้รูปแบบของข้อมูลที่แน่นอนครับ ซึ่ง Serial Port ก็เป็นข้อมูลแบบ Stream ด้วย
     โจทย์คือ เราจะรับข้อมูลแบบ stream ในรูปแบบ <XXXXXX>  โดยที่
< คือไบต์เริ่มต้น หรือ Header
> คือไบต์สิ้นสุด หรือ Footer
XXXXX คือข้อความ

     การเริ่มตอนออกแบบ State Machine เพื่อให้เห็นภาพง่ายๆ ควรเริ่มจากการวาดรูปแผนภาพ