您的位置 首页 培训

STM32笔记(三)ADC、DMA、USART的归纳操练

我们在这里设置ADC为连续转换模式,常规转换序列中有两路转换通道,分别是ADC_CH10(PC0)和ADC_CH16(片内温度传感器)。因为使用了自动多

  咱们在这里设置ADC为接连转化形式,惯例转化序列中有两路转化通道,别离是ADC_CH10(PC0)和ADC_CH16(片内温度传感器)。由于运用了主动多通道转化,数据的取出作业最适合运用DMA方法取出,so,咱们在内存里拓荒了一个u16 AD_Value[2]数组,并设置了相应的DMA模块,使ADC在每个通道转化完毕后发动DMA传输,其缓冲区数据量为2个HalfWord,使两路通道的转化成果主动的别离落到AD_Value[0]和AD_Value[1]中。
  然后,在主函数里,就无需手动发动AD转化,等候转化完毕,再取成果了。咱们能够在主函数里随时取AD_Value中的数值,那里永远都是最新的AD转化成果。
  假如咱们界说一个更大的AD_Value数组,并调整DMA的传输数据量(BufferSize)能够完成AD成果的循环行列存储,然后能够进行各种数字滤波算法
  接着,取到转化成果后,依据V=(AD_Value/4096)*Vref+的公式能够算出相应通道的电压值,也能够依据T(℃) =(1.43 – Vad)/34*10^(-6) + 25的算法,得到片内温度传感器的丈量温度值了。
  经过从头界说putchar函数,及包括”stdio.h”头文件,咱们能够便利的运用规范C的库函数printf(),完成串口通讯
  相关的官方例程,能够参阅FWLib V2.0的ADCADC1_DMA和USARTprintf两个目录下的代码。

本代码比如是根据万利199的开发板EK-STM32F完成,CPU=STM32F103VBT6

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/peixun/256561.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部