欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > STM32 ADC+DMA导致写FLASH失败

STM32 ADC+DMA导致写FLASH失败

2024/10/25 0:35:49 来源:https://blog.csdn.net/qq_48211392/article/details/142025195  浏览:    关键词:STM32 ADC+DMA导致写FLASH失败

最近用STM32G070系列的ADC+DMA采样时,遇到了一些小坑记录一下;

一、ADC+DMA采样时进入死循环;

解决方法:ADC-dma死循环问题_stm32 adc dma死机-CSDN博客

将ADC的DMA中断调整为最高,且增大ADCHAL_ADC_Start_DMA(&hadc1, (uint32_t*)adc_buffer, ADC_Buffer_Size); 的ADC_Buffer_Size,原本ADC_Buffer_Size是1,改为5之后就不会进入hard_fault死循环了;

二、ADC+DMA连续转换导致写FLASH失败

网上有人说写FLASH之前需要__disable_irq()禁用中断,写FLASH结束再恢复中断,我这么做了但是还是无法写成功(不开启ADC+DMA连续转换前是可以写FLASH的),于是就把连续转换改成了手动软件触发,每次需要ADC数据的时候就软件触发一次,这样才可以正常写入FLASH,也不知道为什么;

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com