久芯网

《STM32F030x4x6x8xC勘误手册》中DMA 清除CGIF(全局中断)会同时清除TEIF(传输错误标志),解决方案中与GPIOx_OTYPER有什么关

avatar ZzZzZz......... 提问时间: 2023-08-24 14:40:12 / 未解决
《STM32F030x4x6x8xC勘误手册》中DMA部分如下描述,最后一句解决方案什么意思呢?
Workaround
The only way to lock GPIOx_OTYPER with i=15..8 is to lock also GPIOx_OTYPER[i-8].



勘误手册描述:
2.3 DMA
2.3.1 DMA disable failure and error flag omission upon simultaneous
transfer error and global flag clear
Description
Upon a data transfer error in a DMA channel x, both the specific TEIFx and the global GIFx
flags are raised and the channel x is normally automatically disabled. However, if in the
same clock cycle the software clears the GIFx flag (by setting the CGIFx bit of the _IFCR
register), the automatic channel disable fails and the TEIFx flag is not raised.
This issue does not occur with ST's HAL software that does not use and clear the GIFx flag,
but uses and clears the HTIFx, TCIFx, and TEIFx specific event flags instead.
Workaround
The only way to lock GPIOx_OTYPER with i=15..8 is to lock also GPIOx_OTYPER[i-8].

1个回答
  • avatar ZzZzZz.........
    回答时间: 2023-08-24 14:58:52

    勘误手册写错了,将上文对GPIO的内容写到了DMA;猜测DMA解决办法这里,只需要清除相对应的标志就行。

会员中心 微信客服
客服
回到顶部