STM32G030F6 ADC+DMA多通道非连续采样无法正常工作?
STM32G0B1VE的CAN过滤器个数问题
STM32G0B1adc+dma采样数据错位
有没有stm32g071 Discovery kit的micropython的固件
STM32G0B1CBT6 Flash 不能写擦除,更不要说写入?fal库示例代码哪里有,分享一下,谢谢
STM32G031G6U6 PA8无法输出高低电平
STM32G071CBT6技术支持
基于GCC编译器的initcall在STM32如何实现?
stm32cubeide新用户无法注册
关于stm32g系列usart5的问题
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函数用法有专门详细的介绍吗?
理解。 关于这些顺序性操作的函数 你可以直接阅读相关函数说明。