我正在使用 FT4222 器件以 I2c 方式对 MAX77651 进行编程。我希望能够在寄存器中写入。
我能够读取寄存器,所以我知道我没有任何硬件问题。要读取寄存器,我会这样进行:我首先发送我想要读取的寄存器,然后我只读取里面的内容。
要写入,我尝试将寄存器发送到我想要写入的位置,然后发送我想要放入寄存器中的数据。但是当我通过阅读之后进行检查时,我没有得到预期的结果。
这是我尝试编写和阅读的程序部分:
uint8 resultat=0x11;
uint8 *p_resultat=&resultat;
int chiffre = 8;
uint16 bytesToWrite2 = 1;
uint16 bytesWritten2=1;
uint8 valeur= 0x06; // Adress of register
uint8 *p_valeur=&valeur;
uint16 slaveAddr = 0x48;
// ***** reading test of 0x06 : expected value : 0xFF
FT4222_I2CMaster_Write(ftHandle,slaveAddr,p_valeur,
bytesToWrite2,&bytesWritten);
chiffre = FT4222_I2CMaster_Read(ftHandle,slaveAddr,p_resultat,1, &bytesRead);
printf("The content of the register %02X is : %02X \n " , valeur , resultat);
printf("reading success if : %d = 0 \n " , chiffre); …Run Code Online (Sandbox Code Playgroud)