# ฝึกอ่าน Timer Interrupt และการส่ง tick · 8 ข้อ

วัตถุประสงค์: อ่าน snapshot และ latest-value handoff แยก callback ที่ main ไม่ทำรายครั้งจาก Log ที่ส่งไม่ได้ พื้นฐาน: C/C++, unsigned integer, บท Polling Timing เวลาเสนอ 45–60 นาที ยังไม่มีผลวัดกับผู้เรียน ใช้ CSV/JSON และกระดาษได้

1. อ่าน sketch/header และข้อมูลสี่กรณีเดิม 11 แถวจาก source-records.json ซึ่ง parse และจัดรูปแบบใหม่ ไม่ใช่สำเนาไบต์ CSV ต้นทางหรือไฟล์สำหรับ analyzer
2. กรอก pair-worksheet.csv เจ็ดคู่ แยก case ก่อนคำนวณ uint32 tick delta และ dropped delta; missed เป็นค่ารายแถว ไม่ใช่ตัวนับสะสม
3. กรอก handoff-worksheet.csv เก้า calls ที่อ่านลำดับจาก test_handoff.cpp เดิม โดยแยก initial ของ normal กับ wrap ไม่มีการรัน host tests ใหม่ Idle/Invalid ไม่ออก missed ใหม่ ช่องว่างไม่ใช่ผลวัดศูนย์
4. ตอบ worksheet.csv ทั้งแปดข้อ รวมโจทย์งบงานสามค่าที่ประกาศ เลือก case กรอก report-template.md ก่อนเทียบ answers.md และตารางเฉลย

เสนอข้อละ 2 (คำตอบ 1 + เหตุผล/หน่วย/ขอบ 1) รวม 16 เพื่อเลือกทบทวน แยกจากใบงานเดิม ไม่ใช่ผลผู้เรียนหรือการรับรองพร้อมบิน SHA-256 เก้าสมาชิก ZIP และเก้าดาวน์โหลดใหม่อยู่ใน manifest.json

คำแนะนำ: tick นับ callback ที่ถูกเรียก ไม่ใช่ hardware update ทั้งหมด service_us ไม่ใช่ IRQ latency work_us ไม่รวม snapshot/handoff/CSV/Serial ขอบต่างจาก polling จึงเทียบ benchmark ตรง ๆ ไม่ได้ ไม่เติม work/service ของแถวหาย การอ่าน source/คำนวณบน PC ไม่จำลอง concurrency หรือวัดบอร์ด รอบนี้ไม่มีรัน analyzer/host tests/compile/upload/SITL/firmware ใหม่
