⚠️
大家好. .谢谢光临论坛。令人兴奋的消息!我们现在在移动的过程中,我们的新论坛平台,将提供更好的功能和包含在主对话框的网站。所有文章和帐户已经被迁移。我们现在只接受交通新论坛,请发布任何新的线程//www.xmece.com/support。我们将修复bug /优化搜索和标签在接下来的日子里。
2职位/ 0
最后发表
Roie DAHAN
离线
最后看到:1年4周前
加入:2018-11-19 16:32
读取FIFO I2C

你好,

我想读一个32字节FIFO(使用I2C)

FIFO寄存器地址是常数(0 x09),需要重读测深仪发射最后停止时相同的地址。

请明白我错过吗?

谢谢

空白user_i2c_multi_byte_read_FIFO (uint32_t reg_address、uint8_t * rd_data uint32_t num_bytes)
{

int j = 0;

GLOBAL_INT_DISABLE ();

user_i2c_send_address (reg_address);

(j = 0;j < num_bytes;j + +)
{
WAIT_WHILE_I2C_FIFO_IS_FULL ();/ /等待如果Tx FIFO
SEND_I2C_COMMAND (0 x0100);/ /设置为<大小>读访问时间
}

/ /关键部分的结束
GLOBAL_INT_RESTORE ();

/ /接收的数据
(j = 0;j < num_bytes;j + +)
{
WAIT_FOR_RECEIVED_BYTE ();/ /等待接收的数据
rd_data [j] = (0 xff & GetWord16 (I2C_DATA_CMD_REG));/ /接收到的字节
}

WAIT_UNTIL_I2C_FIFO_IS_EMPTY ();/ /等待Tx FIFO是空的
WAIT_UNTIL_NO_SLAVE_ACTIVITY ();
}

设备:
PM_Dialog
离线
最后看到:3天3小时前
工作人员
加入:2018-02-08 11:03
嗨Roie DAHAN,

嗨Roie DAHAN,

i2c_eeprom图书馆已经实现api的使用。你能请i2c_eeprom_read_data试()和i2c_eeprom_write_data () ?

谢谢,PM_Dialog