大明狐 发表于 2025-12-11 17:52:53

【解决了】请问STC32G没有设置硬件I2C的收发间隔时间的命令函数吗

今天用AiCube生成STC32G的工程文件想试一下硬件I2C和DMA,查看I2C初始化函数的时候,感觉少了一行命令函数。
对比了一下AI8051U的界面,发现设置I2C_DMA发送/接收字节间隔时间(系统时钟)的函数, 在32G的界面里没有。

查看 stc32g_def.h 文件,发现有相关的寄存器




但是功能函数里没有 DMA_I2C_SetInterval(d); (这一行是从AI8051U的文件里复制过来的)



手工添加上之后试了下,可以起作用。

大明狐 发表于 2025-12-12 11:39:57

之前搞错了,之前截图寄存器的时候,是把头文件改成 STC32G144K246.h 之后(把这个忘了){:doge:}
而 STC32G.h 里没有 DMA_I2C_ITVH 和 DMA_I2C_ITVL 这两个寄存器的声明。
看了下数据手册,确实 STC32G12K128 没有 DMA_I2C_ITVH 和 DMA_I2C_ITVL的信息。

打扰了~~~
页: [1]
查看完整版本: 【解决了】请问STC32G没有设置硬件I2C的收发间隔时间的命令函数吗