你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
举报
xmshao 发表于 2024-9-19 18:10 我查看了相关代码,你提到的两个API函数并没有处理DMA请求。我是这样理解的:
huahuahnu 发表于 2024-9-20 09:43 恩,表述有误,是终止DMA发送或者接收,看前面函数后缀有IT的都是处理中断方式的,后缀是DMA的就是处理DM ...
理解。 关于这些顺序性操作的函数 你可以直接阅读相关函数说明。
夜深了,睡不着
晚上好啊,兄弟们
第三季度啦,兄弟们
STM32G070RBT6TR ADC采集定点电压误差较大,有没有优化方向
LIS2MDL X轴数据读取问题
无法完全整片擦除 STM32H Nucleo
周末卡点打卡
使用touchgfx控件modalWindow,显示会有条纹
stm32cubemx和数据手册对不上
STM32G0b1 USB device cdc显示设备描述符请求失败
HAL_I2C_Slave_Seq_Transmit_IT函数的主要功能就是在I2C从设备模式下,顺序地将数据从I2C从设备 发送 到主设备。
它并没有直接处理DMA请求,只是检查了当前I2C的状态,如果当前处于接收状态,则禁用接收,包括可能正在进行的DMA接收。
另一个API函数HAL_I2C_Slave_Seq_Receive_IT的做法类似。如果当前I2C从设备处于发送状态,则需要禁用发送并中止可能正在进行的DMA发送。
简单点说,API函数根据当前I2C的状态切换传输方向。如果是要做发送,当检测到当前处于接收状态时,需要禁用接收中断并中止任何正
在进行的DMA接收传输;如果是要做接收,当检测到当前处于发送状态,需要禁用发送中断并中止任何正在进行的DMA发送传输。
最后,重新启用与当前操作相关的中断,以便继续处理相关中断请求。
恩,表述有误,是终止DMA发送或者接收,看前面函数后缀有IT的都是处理中断方式的,后缀是DMA的就是处理DMA的,但只有这两个函数IT里要去判断DMA,就觉得有疑惑。
对于Seq系列的API函数用法有专门详细的介绍吗?
理解。 关于这些顺序性操作的函数 你可以直接阅读相关函数说明。