Input Capture callback
• ใน the callback, ก่อนอื่นเราจะเช็คว่า the detected edge เป็นขอบแรกกรือขอบที่สอง.
• ถ้ามันเป็น the first edge, จากนั้นเราจะรีเซ็ตทั้งสอง the counters และเซ็ต the is_first_captured เป็น 1 แสดงให้เห็นว่า the
first edge ถูกตรวจจับแล้ว.
• เมื่อ the second edge มาถึง the callback จะถูกเรียกอีกครั้ง.
• ที่นี่ก่อนอื่นเราจะอ่าน the counters ของ the timers ที่เกี่ยวข้อง.
• ตอนนี้เราจะรวมทุก the counters เพื่อทำ a final counter value.
• แต่ละนับใน the counter 3 จะเท่ากับ 10000 นับใน counter 1.
• ดังนั้นเพื่อทำพวกเขาให้เท่ากัน, เราจำเป็นต้องคุณ the counter 3 ด้วย 10000.
• ตอนนี้เรามี the final counter value ในเทอมของ the counter 1, ดังนั้นเพื่อคำนวณ the frequency, เราจะหาร the counter
1 clock โดย the counter value.
• สุดท้ายรีเซ็ต the is_first_captured, เพื่อว่ากระบวนการทั้งหมดสามารถเริ่มต้นได้อีกครั้ง.