0 1 2 5 # wait 2 0x0000 9 0 # read product ID 2 0x0004 9 0 # read firmware revision 2 0x0008 9 0 # read status 2 0x000c 9 0 # read errors 1 0x0020 0xa5a5 1 # write I setpoint 1 0x0024 0x1234 1 # write Q setpoint 2 0x0020 9 0 # read I setpoint 1 0x0010 0x0300 1 # reset adf4001 1 0x0010 0x0655 1 # send a byte to the adf4001 2 0x0010 9 0 # read status 2 0x0010 9 0 # read status again 2 0x0010 9 0 # read status again 2 0x0010 9 0 # read status again 1 0x0028 0x0040 1 # write config (halt bit) 1 0x0080 0x0004 1 # write timing register 0 (idle) 2 0x0080 9 0 # read timing register 0 1 0x0084 0x0086 1 # write timing register 1 2 0x0084 9 0 # read timing register 1 1 0x0088 0x0005 1 # write timing register 2 (ADC warmup) 2 0x0088 9 0 # read timing register 2 1 0x008c 0x0009 1 # write timing register 3 (feedforward) 2 0x008c 9 0 # read timing register 3 1 0x0090 0x0014 1 # write timing register 4 (feedback) 2 0x0090 9 0 # read timing register 4 1 0x0094 0x000a 1 # write timing register 5 (decay) 2 0x0094 9 0 # read timing register 5 1 0x009c 0x001c 1 # write timing register 7 (wait) 2 0x009c 9 0 # read timing register 7 2 0x0088 9 0 # read timing register 2 2 0x008c 9 0 # read timing register 3 2 0x0090 9 0 # read timing register 4 2 0x0094 9 0 # read timing register 5 2 0x009c 9 0 # read timing register 7 1 0x0028 0x01b1 1 # write config (0x0031, 0x00b1, 0x0131, 0x01b1) 0 1 2 900 # see what happens (ends on interrupt) 1 0x0028 0x0040 1 # write config (halt bit) 2 0x4010 9 0 # start reading trace buffer 2 0x400c 9 0 # backwards 2 0x4008 9 0 # 2 0x4004 9 0 # 2 0x4000 9 0 # stop at beginning 2 0x0014 9 0 # read address_at_pulse_end ((feedforward+1)+(feedback+1)+(decay+1))*4-1 2 0x000c 9 0 # read errors 3 1 1 1 # halt