|
我想使用硬件I2C实现如下操作: 写入设备地址(8位写地址)——写入寄存器地址(不产生STOP)——写入设备地址(8位从地址)——读取多个寄存器 使用F4系列单片机时,可以通过使用HAL_I2C_Mem_Write函数,并将其中的Size参数设置为零,然后调用读取函数实现。 但是H7的HAL库中HAL_I2C_Mem_Write的Size不能为0,即使修改HAL库,跳过Size检测部分,并且检测当Size为0时,在发出设备地址,寄存器地址后,重置I2C外设寄存器并退出函数,依然无法实现跟F4单片机同样的效果,通过逻辑分析仪查看,发现总线一直被占用,后续读取无法正常进行。 请问有没有别的方式实现我想要的效果。或者我只能使用寄存器直接操作。 |
STM32F103RET6使用cubeMX生成FarFs挂载SD卡,并开启DMA
【2026.10.18】每日签到:STM32H735G-DK评测.接收串口字符并显示在LCD—text中
【2026.10.17】每日签到:STM32H735G-DK评测.TouchGFX在LCD—text中显示动态字符
stm32cubemx 6.18.0 以太网lwip怎么配置
【速览】CubeMX2发布了,目前支持C5系列,支持MDK6
使用STM32H743IIT6,读写MCU内部Flash固定地址与固定长度的区域,出现随机性HardFault错误,请问是什么原因?
VSCODE编译stm32时一直显示正在配置
都是怎么学习TouchGFX的?
STM32H7A3VGH6Q D1、d2、E1、E2是SMPS功能对应的引脚,裸片量测D2与C1、D1对应的地没有短路现象,PCB板量测也没有短路,但芯片贴到板上D2 VLXSMPS就会与地短路。不知是啥原因。是否芯片型号与批次不对?
mmt 工具如何管理NAND和LCDinterface 设备
微信公众号
手机版
你的这个需求是很常规的。
不论I2C 读还是写,涉及到额外内存地址或寄存器地址指定时 都有个写过程。
无须基于size=0做操作。
上午我找H743开发板 利用H7系列I2C库函数对24系列芯片进行读写访问,没有什么不畅。
谢谢
[md]因为F4可以所以就用的size=0操作了。谢谢你。
嗯。
我也看到了。后面系列这个地方不接受size=0这个选项,直接报错退出。
其实也的确不需要。