Post Go back to editing

MAX11300 no response

Category: Hardware
Product Number: MAX11300

I am trying to communicate with a MAX11300 using an STM32f042 Nucleo board. Everything looks correct on the logic analyzer, but I get no activity and no response from the chip. Even reading the device id register just gives all ones. Is there a trick I am missing here?

Top Replies

Parents
  • Hi 

    Can you provide us with some more information such as schematics of your setup, code on configuring the ADC and any other information that might help us understand your questions?

    Thanks,

    Kevin

  • Hi, thanks for the response. I have a drawing of my setup but it is a PDF, how do I get it to you? The setup is a STM Nucleo-F042K6 connected to a Mikroe Pixi Click board. I also have a MAX11300 EVKIT for reference. I use a logic analyzer to watch the SPI bus communications. 

    This issue is holding up development of a product. I hope you can give me some insight.
    --Tim Ressel
    void	Pixi_Init(void)
    
    {
    
    	uint16_t	result;
    
    
    
    	result = pixiReadReg(0x10);
    
    	result = pixiReadReg(0x00);
    
    	if(result==0x0424)
    
    		result=0;
    
    
    
    	pixiWriteReg(device_control,0x0044);
    
    	pixiWriteReg(port_cfg_00,0x5200);
    
    
    
    }
    
    
    
    void	pixiWriteReg(uint8_t thisReg, uint16_t thisVal)
    
    {
    
    	uint8_t tx_data[4];
    
    	//uint8_t rx_data[4];
    
    
    
    	tx_data[0] = (thisReg<<1);
    
    	tx_data[1] = thisVal>>8;
    
    	tx_data[2] = thisVal&0xFF;
    
    
    
    	HAL_GPIO_WritePin(PIXI_CS_GPIO_Port, PIXI_CS_Pin, GPIO_PIN_RESET);	// enable selector output
    
    	HAL_SPI_Transmit(&hspi1, tx_data, 3, HAL_MAX_DELAY);
    
    	HAL_GPIO_WritePin(PIXI_CS_GPIO_Port, PIXI_CS_Pin, GPIO_PIN_SET);	// enable selector output
    
    }
    
    
    
    
    
    uint16_t	pixiReadReg(uint8_t thisReg)
    
    {
    
    	uint8_t tx_data[4];
    
    	uint8_t rx_data[4];
    
    
    
    	tx_data[0] = (thisReg<<1)|0x01;		//read device ID
    
    
    
    	HAL_GPIO_WritePin(PIXI_CS_GPIO_Port, PIXI_CS_Pin, GPIO_PIN_RESET);	// enable selector output
    
    	HAL_SPI_Transmit(&hspi1, tx_data, 1, HAL_MAX_DELAY);
    
    	//HAL_Delay(5);
    
    	HAL_SPI_Receive(&hspi1, rx_data, 2, HAL_MAX_DELAY);
    
    	HAL_GPIO_WritePin(PIXI_CS_GPIO_Port, PIXI_CS_Pin, GPIO_PIN_SET);	// enable selector output
    
    
    
    	return(rx_data[1]<<16|rx_data[0]);
    
    
    
    }
  • Hi Tim,

    You can send more information to me at kevin.yu@analog.com. However, we currently do not have the materials to replicate the problem. While I can take a look at your setup, I would recommend you use the link   provided above to connect with our tech support for a faster debugging process.

    Thanks,

    Kevin 

Reply Children