找回密码
 立即注册
查看: 89|回复: 4

I2C 主机控制寄存器(I2CMSCR)中MSCMD[3:0]:主机命令问题?

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:18
  • 最近打卡:2025-07-31 16:26:40

18

主题

30

回帖

288

积分

中级会员

积分
288
发表于 2025-7-6 11:36:53 | 显示全部楼层 |阅读模式
截图202507061135319224.jpg
这两种命令,主机接收完数据,发送应答信号或者非应答信号,
在数据手册中,说的是返回的应答信号,是不是应该改为发送应答信号。

回复

使用道具 举报 送花

3

主题

247

回帖

-795

积分

等待验证会员

积分
-795
发表于 2025-7-6 11:43:00 | 显示全部楼层
I2C主机控制寄存器(I2CMSCR)中的MSCMD[3:0]位用于定义I2C主机的操作模式。这些位决定了主机在I2C总线上的行为,包括启动、停止、发送和接收数据等操作。具体来说,MSCMD[3:0]的值对应不同的命令,例如:
0000:无操作
0001:启动传输
0010:发送地址(写)
0011:发送地址(读)
0100:发送数据
0101:接收数据
0110:停止传输
0111:重复启动

正确配置MSCMD[3:0]对于确保I2C通信的正常进行至关重要。如果配置不当,可能导致通信失败或数据传输错误。因此,在使用I2C接口时,应仔细查阅相关文档,确保对MSCMD[3:0]的设置符合应用需求。

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:18
  • 最近打卡:2025-07-31 16:26:40

18

主题

30

回帖

288

积分

中级会员

积分
288
发表于 2025-7-6 12:36:51 | 显示全部楼层
国芯人*** 发表于 2025-7-6 11:43
I2C主机控制寄存器(I2CMSCR)中的MSCMD[3:0]位用于定义I2C主机的操作模式。这些位决定了主机在I2C总线上的 ...

回答不对啊
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:513
  • 最近打卡:2025-07-31 08:58:47
已绑定手机

87

主题

5532

回帖

1万

积分

超级版主

DebugLab

积分
10123
发表于 2025-7-6 16:13:13 | 显示全部楼层
数据手册不存在错误,两种说法是一样的
从机(给主机)发送数据 = 主机接收(来自从机的)数据
然后
主机(给从机)返回应答信号或非应答信号 = 主机(给从机)发送应答信号或非应答信号
主机给从机发送应答信号表示还要接收数据,主机给从机发送非应答信号表示数据接收完毕,一般后面跟STOP
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:18
  • 最近打卡:2025-07-31 16:26:40

18

主题

30

回帖

288

积分

中级会员

积分
288
发表于 2025-7-6 17:37:23 | 显示全部楼层
Debu*** 发表于 2025-7-6 16:13
数据手册不存在错误,两种说法是一样的
从机(给主机)发送数据 = 主机接收(来自从机的)数据
然后

谢谢
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-8-1 03:27 , Processed in 0.110878 second(s), 72 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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