找回密码
 立即注册
查看: 23|回复: 1

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

[复制链接]
  • 打卡等级:以坛为家III
  • 打卡总天数:616
  • 最近打卡:2025-12-16 09:31:43

35

主题

440

回帖

4053

积分

荣誉版主

积分
4053
发表于 5 天前 | 显示全部楼层 |阅读模式
今天用AiCube生成STC32G的工程文件想试一下硬件I2C和DMA,查看I2C初始化函数的时候,感觉少了一行命令函数。
对比了一下AI8051U的界面,发现设置I2C_DMA发送/接收字节间隔时间(系统时钟)的函数, 在32G的界面里没有。

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



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


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

能体会到发现一个不理解的现象然后找原因然后要么解决掉问题要么被问题解决掉的那种快乐是我的幸运
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:616
  • 最近打卡:2025-12-16 09:31:43

35

主题

440

回帖

4053

积分

荣誉版主

积分
4053
发表于 4 天前 | 显示全部楼层
之前搞错了,之前截图寄存器的时候,是把头文件改成 STC32G144K246.h 之后(把这个忘了)
而 STC32G.h 里没有 DMA_I2C_ITVH 和 DMA_I2C_ITVL 这两个寄存器的声明。
看了下数据手册,确实 STC32G12K128 没有 DMA_I2C_ITVH 和 DMA_I2C_ITVL的信息。

打扰了~~~
能体会到发现一个不理解的现象然后找原因然后要么解决掉问题要么被问题解决掉的那种快乐是我的幸运
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-12-16 17:56 , Processed in 0.104598 second(s), 50 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表