1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > EPSON RX8010SJ RTC 调试笔记 之一 I2C 地址及通讯时序

EPSON RX8010SJ RTC 调试笔记 之一 I2C 地址及通讯时序

时间:2019-11-22 06:16:43

相关推荐

EPSON RX8010SJ RTC 调试笔记 之一 I2C 地址及通讯时序

硬件: EPSON RX8010 SJ

1. EPSON RX8010 SJ 7-bits I2C 地址: 0x32

<特别注意: RX8010SJ 一次I2C 通讯周期须 < 0.95 秒; I2C 通讯速率支持 100K,400K>

2. RX8010SJ I2C 读写通讯时序

2.1 I2C 写指定寄存器地址数据

2.2I2C 读指定寄存器地址数据

2.3I2C 读取没指定寄存器地址数据

3. I2C 通讯示例

3.1 向 0x20 寄存器中写入数据 0xA5

3.2 读取 0x20 寄存器中数据

Nordic TWI 读写 RX8010SJ 寄存器程序

#define RX8010SJ_I2C_SLAVE_ADD0x32// for NORDIC TWI, the I2C address is 7-bits.extern nrf_drv_twi_t m_twi_0;void RX8010SJ_write_register(uint8_t reg_add,uint8_t reg_data){ret_code_t err_code;uint8_t reg_code[] = { reg_add,reg_data };err_code = nrf_drv_twi_tx( &m_twi_0, RX8010SJ_I2C_SLAVE_ADD, reg_code, sizeof(reg_code), false );APP_ERROR_CHECK(err_code);nrf_delay_ms( 5 );}uint8_t RX8010SJ_read_register(uint8_t reg_add){ret_code_t err_code;uint8_t reg_code[] = { reg_add };uint8_t rx_buffer[] = { 0xFF };err_code = nrf_drv_twi_tx(&m_twi_0, RX8010SJ_I2C_SLAVE_ADD, reg_code, sizeof(reg_code),true); APP_ERROR_CHECK(err_code);nrf_delay_ms(1);err_code = nrf_drv_twi_rx(&m_twi_0,RX8010SJ_I2C_SLAVE_ADD, rx_buffer,sizeof(rx_buffer)); APP_ERROR_CHECK(err_code);nrf_delay_ms(10);//NRF_LOG_INFO("RX8010SJ_REG_SEC read Result:0x%02X.",rx_buffer[0]);return rx_buffer[0];}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。