Other Parts Discussed in Thread: ADS1120, HALCOGEN
Hi
I am new to this converter and testing my ADS1120 with simple write register and read register commands to learn how this works. I am testing this with Mibspi protocol.
I am using Halcogen to generate drivers. I have created 3 transfer group for this. TS0 5 bytes, TS1 1 byte, TS2 3 bytes and TS3 4bytes.
I am running this code in RM48 as master.
Here is my code:
void main(void)
{
/* USER CODE BEGIN (3) */
uint16_t resetCmd = 0x06;
uint16_t startCmd = 0x08;
uint16_t writeRegCmd[5] = {0x43, 0x08, 0x04, 0x10, 0x00};
uint16_t readRegCmd = 0x23;
uint16_t rxBuffer[4] = {0};
/* Initialize RTI driver */
rtiInit();
/* Enable RTI Compare 0 interrupt notification */
rtiEnableNotification(rtiNOTIFICATION_COMPARE0);
/* Enable IRQ - Clear I flag in CPS register */
/* Note: This is usually done by the OS or in an svc dispatcher */
_enable_IRQ();
/* Initialize MibSpi*/
mibspiInit();
//Reset ADC1120
mibspiSetData(mibspiREG1, 1, &resetCmd);
mibspiTransfer(mibspiREG1, 1);
while(!(mibspiIsTransferComplete(mibspiREG1, 0)));
// Write values to all 4 registers
mibspiSetData(mibspiREG1, 0, writeRegCmd);
mibspiTransfer(mibspiREG1, 0);
while(!(mibspiIsTransferComplete(mibspiREG1, 0)));
// Read values back from all 4 registers
mibspiSetData(mibspiREG1, 1, &readRegCmd);
mibspiTransfer(mibspiREG1, 1);
while(!(mibspiIsTransferComplete(mibspiREG1, 1)));
//Get data
mibspiGetData(mibspiREG1, 3, rxBuffer);
mibspiTransfer(mibspiREG1, 3);
while(!(mibspiIsTransferComplete(mibspiREG1, 1)));
mibspiSetData(mibspiREG1, 1, &startCmd);
mibspiTransfer(mibspiREG1, 1);
while(!(mibspiIsTransferComplete(mibspiREG1, 1)));
/* Start RTI Counter Block 0 */
rtiStartCounter(rtiCOUNTER_BLOCK0);
/* Run forever */
while(1);
/* USER CODE END */
}
here is how I connected ADS to RM48
/* Wire connections
* ADS1120 ---- RM48
* TP5 - Black -> DOUT
* TP3 - Orange -> - DIN
* TP2 - White -> SCLK
* TP1 - Purple -> CS
*/
When I try to read the register values, I am getting FF for all 4 registers. Now I am stuck at this point and need some help to move forward.
Here is what protocol analyzer shows:
Thanks
Thomas