Post Go back to editing

Run and RAMPUPDATE bit are not get enable why these happen?

Category: Software
Product Number: ad9106
Software Version: Latest

Hello,

I am try to generate sawtooth and DDS through sine waveform, after configuration all the register i am trying to enable the RUN and RAMUPDATE bit in 1E and 1D register.

0x001E=0x0001 and 0x001D=0x0001

I am trying write this value, but value is not written in this register why these happening. Another register is update properly but these two registers are not gotten written.

After write I am trying to read the register, I get 0000 data.

HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_RESET);
HAL_SPI_Transmit(&hspi4, (uint8_t*)&Write_addr[64], sizeof(data), 10);
HAL_SPI_Transmit(&hspi4, (uint8_t*)&data2, sizeof(data2), 10);
HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_SET);
printf("write =0x%04X, data=0x%04X\n\r",Write_addr[64],data2);
HAL_Delay(10);

HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_RESET);
HAL_SPI_Transmit(&hspi4, (uint8_t*)&Write_addr[65], sizeof(data), 10);
HAL_SPI_Transmit(&hspi4, (uint8_t*)&data2, sizeof(data), 10);
HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_SET);
printf("write reg =0x%04X, data=0x%04X\n\r",Write_addr[65],data2);
HAL_Delay(10);
data=0;
HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_RESET);
HAL_SPI_Transmit(&hspi4, (uint8_t*)&Red_add[64], sizeof(data), 10);
HAL_SPI_Receive(&hspi4, (uint8_t*)&data,sizeof(data), 10);
HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_SET);
printf("Read reg =0x%04X, data=0x%04X\n\r",Red_add[64],data);
HAL_Delay(10);

HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_RESET);
HAL_SPI_Transmit(&hspi4, (uint8_t*)&Red_add[65], sizeof(data1), 10);
HAL_SPI_Receive(&hspi4, (uint8_t*)&data,sizeof(data1), 10);
HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_SET);
printf("Read reg =0x%04X, data=0x%04X\n\r",Red_add[65],data1);
HAL_Delay(10);
AD910x_start_pattern();
HAL_Delay(10000);

AD910x_stop_pattern();

I am unable to understand why these happened, can you please help me.