Difficulty: Medium
Correct Answer: It goes LOW.
Explanation:
Introduction / Context:
Many keypad interface state machines assert a data-available (dav) flag when a stable key code is present at the data bus d. When the key is released, the column lines revert (F hex), the encoder tri-states d (Hi-Z), and the controller clears dav on a defined clock edge. Understanding this timing prevents software from falsely reading stale data.
Given Data / Assumptions:
Concept / Approach:
dav indicates “valid data present.” Once d is Hi-Z, there is no valid key code. On the next clock edge, the FSM or register bank samples the absence of a valid key and deasserts dav. Therefore, dav transitions LOW at the next rising edge following the release event.
Step-by-Step Solution:
t ≈ 4 ms → key released → columns = F hex.Encoder action → d → Hi-Z (no valid code).Synchronous update → next rising edge clocks state.Since d is not valid → dav is cleared → dav goes LOW.
Verification / Alternative check:
Timing diagrams in typical keypad scanner IP show dav asserted only while a stable decoded key is latched. When the matrix returns to idle, dav is cleared on the next clock edge.
Why Other Options Are Wrong:
Common Pitfalls:
Confusing the tri-stated data bus with status flags; only the bus lines go Hi-Z, not control flags.
Final Answer:
It goes LOW.
Discussion & Comments