I am trying to use interrupts with the AD9889B. I have read Sec 4.9, "Interrupt Handling" of the programming guide. However, I am not really sure of the role of register 0x96.
When the chip comes up, the mask register 0x94 initializes to 0xfc (all interrupts enabled). However, unless we do something (i.e. writing to register 0x96), I get no interrupts.
What is the proper work-flow ? Any corrections to the following psuedo-code would be useful:
Set register 0x94 to 0xFC /* all interrupts enabled */
Set register 0x96 to 0xFC /* wait for all interrupts */
Wait for interrupt. On interrupt:
Read register 0x96 to determine source of interrupt
Set register 0x96 to 0xFC
Also, please clarify the characteristics of the input line. Is it edge triggered or level triggered ?