单片机/MCU论坛
直播中

VCX

5年用户 20经验值
私信 关注
[问答]

华大的MCU,OD2101:i2c转uart芯片,I2C收发数据不对

主芯片通过I2C向od2101发送数据,od2101作为从机,从机地址为0x5c,通过I2C向从机寄存器0x03写数据0xfd,然后再从此寄存器读出数据,但读出的数据却是0x2d,目前不知道为什么读出的是0x2d,向各位大神请教,如下是部分代码:

#define WR   0x00  
#define RD   0x00
#define UARTBUF 0x01  
#define I2CBUF  0x02  
#define CTRL  0x03  
        

uint8_t recv_buf[50]={0};        
uint8_t recv_data;        
uint8_t recv_data1;        
        Usart_SendStr(UARTCH0, "OD2101_testn");
    recv_data = 0xfd;//( recv_data & 0xf0 ) | 0 ;
        I2C_MasterWriteData(I2C1,I2C_DEVADDR,CTRL,&recv_data,1);/*·¢ËÍ¿ØÖÆ×Ö
        Usart_SendStr(UARTCH0, "OD2101_test1n");
I2C_MasterReadData(I2C1,I2C_DEVADDR,&recv_data1,CTRL,4);
printf("recv_data1=%xn",recv_data1);
  • 微信截图_20190220201647.png
已退回10积分

回帖(1)

sgrtf661

2019-2-25 12:25:03
需要技术支持 找我  QQ 409946461
举报

更多回帖

发帖
×
20
完善资料,
赚取积分