ตัวอย่างสมบูรณ์ — สามท่าใน 11_uart_frame.c
ท่าที่ 1 uart_encode() สร้างระดับของ start, data แบบ LSB ก่อน, parity และ stop
ท่าที่ 2 draw() วาดรูปคลื่นแบบข้อความพร้อมป้าย S, D0-D7, P, T และเวลาของบิตกับเฟรม
ท่าที่ 3 วาด 0xA5 แบบ 8N1 และ 8E1 และ 0x11 (ไบต์ที่สองที่ตัวอย่าง Header I/O Test ส่ง) แล้วคำนวณ throughput
static const int idle = 1, start = 0, stop = 1;
for (int i = 0; i < 8; i++) {
bit[i] = (byte >> i) & 1u;
}
ลองแก้แล้วทายก่อนรัน: เปลี่ยน baud เป็น 9600 ความยาวเฟรมเป็นเท่าไร ถ้าต้องส่ง log 200 ไบต์/วินาที 9600 พอไหม