CubeMX系列教程——15 adc 中断和DMA
这篇文章将使用ADC的中断和DMA功能采集输入的电压,打开上一章的adc工程,开启 ADC的中断功能,配置如下
修改ADC的参数配置,使能ADC的连续转换,生成MDK初始化代代码工程。
在工程中修改如下测试代码,将EOCSelection配置为开启连续转换标识符。默认为生成单次转换完成标识符。如果不修改,会进入adc的err中断回调函数。
在主函数中添加代码,启动ADC的中断,同时在接收完成回调函数中添加测试代码。
查看测试结果,输入 0V时的转换结果
输入3.3V的采集转换结果
接下来介绍如何使用ADC的DMA功能,打开上一章的ADC工程,开启连续转换功能
开启DMA功能,配置DMA参数,点击ADD,选择DMA2 Stream 0,因为是单通道采集,所以取消 memory增长的配置,选择循环模式。
开启DMA中断,并生成MDK
在工程中,修改代码,使能DMAContinuousrequests
在主函数中添加测试代码
查看测试效果,输入0V和3.3V的结果
这里单通道ADC的中断和DMA讲解完毕。