Other Parts Discussed in Thread: PGA300, PGA900
We are trying to create a calibration system for the PGA305 using OWI communications. I have been using a scope/bus analyzer to capture the communication using your PGA305EVM module and GUI software and have a number of questions.
1. With your software, the OWI activation pulse sequence appears to be: three 10mS pulses with 10mS in between each pulse (this matches the datasheet requirement of figure 8), followed by 110mS of no pulses (this matches the datasheet requirement of figure 8), followed by three 10mS pulses with 10mS in between each pulse (this does not match the datasheet requirement of figure 8 [100 ms<time<200 ms]). Should we follow the datasheet or your software?
2. Your datasheet states “If the EEPROM is locked, the sequence 0x5555 must be sent within 100 ms after the end of the activation-pulse sequence”. When your software sends an unlock EEPROM sequence it is 0x55 0x01 0x08 0x55 0x55 0x01 0x09 0x55.
2A Since the sync field is 0x55 and the unlock sequence is 0x5555 I am not clear what is being written. Can you clarify what needs to be written?
2B If the second byte is the command field, it is 0x01 which according to the datasheet (table 4) is a write to a reserved page. Can you provide information on what this reserved page is?
3. With your software, OWI activation process reads a reserved memory page (0x55 0x02 0x0C 0x55 0x73 [response 0x03]). Is this necessary and if so what does it read?
4. Table 4 has a value of 0x07 being used to access Control and status registers, DI_PAGE_ADDRESS=0x07. I cannot find anything else in the datasheet that refers to DI_PAGE_ADDRESS=0x07. Is this a mistake in the datasheet?
5. I thought perhaps the DI_PAGE_ADDRESS=0x07 was really DI_PAGE_ADDRESS=0x05 since table 4 does not state how to select DI_PAGE_ADDRESS=0x05, but the software seems to read/write to the EEPROM cache (read=0x52) with an address higher than the 0x7F of the EEPROM when accessing DI_PAGE_ADDRESS=0x05. Is the EEPROM cache the same as DI_PAGE_ADDRESS=0x05?
6. When your software writes the DAC codes as part of the DAC calibration it seems to step the codes up to the final DAC value. Is this to prevent a power drop that could cause a reset of the PGA305?
7. Figure 21 has ADDRESS[3:0] but is only an 8 byte cache. Should this be ADDRESS[2:0]?
8. Section 7.3.12.3.2.1 states data field 1 is the destination address which has 8-bits. Are only the lower 3 bits valid when writing to the EEPROM cache (command 0x51)? Does this then become DI_PAGE_ADDRESS=0x05 when the destination address is greater than 0x7F?
Thank you for your assistance.
James