Here is the entire command structure to AssignChannel
after asserting SRDY first time, I receive 0xA5
then after each SRDY assertion I transmit
0x03 -length
0x42 -Assign Channel CMD
0x01 -Channel#
0x10 -Channel Type
0x00 -n/w#
0xFB -cs (including 0xA5)
Right after I transmit cs, I see the SEN transition L->H.
You can see the CS and Data Length are correct.
I use a software SEN (I/O port line configured as input) that generates an interrupt on H->L transition. Since it does generate one right after the MRDY assertion, I believe thus interrupt is configured and works correctly.
I am sure the SPI port is correctly configured, because I can transmit all data correctly from MCU to ANT. i.e. After each SRDY assertion, I can see the ANT module generate SCLK and the MCU shifts the byte out. I get a serial interrupt after each byte is transmitted and finally the ANT module pulls the SEN L->H right after I transmit the CS.
It seems, after I transmit the AssignChannel structure, the ANT module does not assert the SEN (H->L) again to send a reply to the MCU.
1. Under what other cases will the ANT module not send a response?
2. Do I need to transmit a 0x4A (reset) right after a hardware reset?
3. What other commands sequence (if any) needs to be transmitted to the ANT module after a hardware reset ? Currently, I transmit the AssignChannel command structure right after reset. Could this be a problem ?