tpgf 发表于 2025-2-6 13:32

I3C与I2C的区别

1.支持热插拔,动态获取slave地址

2.更高的数据传输速率

3.连接方式





===============================

IIC DMA 与IIC 传输的速率对比
1. 加入DMA



2.未加DMA



结论:看起来小批量的数据传输 无论是否加入DMA 对结果没有很大影响

模拟IIC 再写入多页的的设备时需要注意

void IIC_Write_Multi_Reg(uint8_t SlaveAddress,uint8_t RegAddress,uint8_t *Data,int num)
        {
          IIC_Start();
                IIC_Send_Byte(SlaveAddress);   //发送器件地址,写数据
                IIC_Wait_Ack();
                IIC_Send_Byte(RegAddress);                                //发送低地址
                IIC_Wait_Ack();
                IIC_Send_Byte(RegAddress%256);                                //发送低地址
                IIC_Wait_Ack();
                for(int count =0;count<num;count++)
                {
                        IIC_Send_Byte(*Data);
                        IIC_Wait_Ack();
                                printf("%02x ,",*Data);
                                if((count+1)%12==0 ) printf("\r\n");   
                        Data++;
                        //满页操作
                        if((count+1)%8==0)   /* Note :每页写完之后要等该页数据存储完毕之后再进行下页的存储*/
                        {
                                IIC_Stop();
                                HAL_Delay(10);
                                IIC_Start();
                                IIC_Send_Byte(RegAddress);                                //发送地址
                                IIC_Wait_Ack();
                IIC_Send_Byte(RegAddress%256);                                //发送低地址
                IIC_Wait_Ack();
                        }
                }
                IIC_Stop();
                HAL_Delay(10);
        }

1.注意发送的高地址和低地址,需要加入发送地址的两位来确认

2.注意再一页数据写完之后 要等数据完成存储,即结束一个IIC ,使之存储起来,再重新发送数据,此时的地址不用发生偏移
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/qq_43519774/article/details/144829135

chenjun89 发表于 2025-2-6 18:07

目前还没有用过I3C,不知道性能如何。

AdaMaYun 发表于 2025-2-18 15:46

I3C性能一般优于IIC

LOVEEVER 发表于 2025-2-23 20:46

.注意发送的高地址和低地址,需要加入发送地址的两位来确认
页: [1]
查看完整版本: I3C与I2C的区别