你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32F0库函数初始化系列:ADC

[复制链接]
STMCU小助手 发布时间:2021-11-23 21:01
  1. static void ADC_Config(void)
    % S. P5 v: z! H/ l' x* I
  2. {7 f. j& m0 u9 T( n
  3.   ADC_InitTypeDef     ADC_InitStructure;
    % i  {3 R- Z) p2 [" ?
  4. $ L* A6 m0 R# Z2 ^7 h
  5. & ]3 f3 s9 }+ p0 v5 Y$ Q1 ?
  6.   /* ADCs DeInit */  
    6 t$ F5 J, r8 u3 Q# S& m
  7.   //ADC_DeInit(ADC1);
    & T! k2 A2 a2 v6 D" R/ w

  8. ' Y- K3 _, @8 {. V
  9.   /* Initialize ADC structure */  Z5 o/ I3 [  q% U$ j! Y3 [
  10.   ADC_StructInit(&ADC_InitStructure);
    / R0 ?0 h. I9 H+ w3 }  `3 h5 a
  11. * D, X0 g7 r+ b
  12.   /* Configure the ADC1 in continuous mode with a resolution equal to 12 bits  */
    $ {0 P6 q) @+ |$ m9 h! d5 R
  13.   ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;7 V) p, T. k* ~' g2 O2 @/ t8 c
  14.   ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; 9 D/ r1 K+ g0 b  }* F" f
  15.   ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;
    5 U0 i& K# C! s7 z& r. e
  16.   ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
    3 N7 ^) @$ L* k, ~/ x/ v4 ~$ K
  17.   ADC_InitStructure.ADC_ScanDirection = ADC_ScanDirection_Upward;
    2 ^7 i- U- r& t1 B9 {" D1 }4 z
  18.   ADC_Init(ADC1, &ADC_InitStructure);
    ) j5 ^! K% E* [3 {. k

  19. " ~& j* J- k4 N: g$ ~, F' V
  20.   /* Convert the ADC1 Channel 9 with 239.5 Cycles as sampling time */  , H- M) ^# u  M3 ~% y  ?  ^
  21.   ADC_ChannelConfig(ADC1, ADC_Channel_9 , ADC_SampleTime_239_5Cycles);5 ~" M+ P4 y/ j1 R5 \1 k" `5 v
  22.   /* ADC Calibration */1 _, T7 [( p  g/ F+ ]
  23.   ADC_GetCalibrationFactor(ADC1);
    ( [2 g' ?; \+ {0 V- [

  24. 1 L9 F2 a8 k( X; Y  ]
  25.   /* ADC DMA request in circular mode */$ D8 Q1 d3 C& ?4 B* r3 b
  26.   //ADC_DMARequestModeConfig(ADC1, ADC_DMAMode_Circular);1 g) A4 Y6 i, ?! W, r
  27. % {& \& q1 p9 q; M/ K. F% @" X0 r7 d
  28.   /* Enable ADC_DMA */
    9 z2 G% G+ k3 o* o, ~
  29.   //ADC_DMACmd(ADC1, ENABLE);  
    3 g% T" `" J+ v+ @2 `% k: i
  30. 3 [" N/ b2 k! f8 A1 ?# G
  31.   /* Enable the ADC peripheral */& [  `7 E2 s! F1 ]- l5 s
  32.   ADC_Cmd(ADC1, ENABLE);     ) Y+ Q4 s4 O, p% v3 j
  33.   p; W: L6 ^: L  R. Q
  34.   /* Wait the ADRDY flag */  w& P* h- O  Q2 o# q- ]7 |
  35.   while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_ADRDY)); # g+ T2 N) @' V) k

  36. 5 W' c4 F2 ]9 R1 j6 A
  37.   /* ADC1 regular Software Start Conv */
    4 l4 m$ Y7 c& r# X6 W
  38.   ADC_StartOfConversion(ADC1);& _% r: T1 r- b- r/ q& b

  39. 4 O8 L# @9 A) d
  40. }
    4 {3 b+ p1 G" A) R8 b; ?3 |
  41. ( }& g6 K* G; W
  42. while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));//等待转换结束
    . e0 c+ ?( `* R  Y
  43.       _adc=ADC_GetConversionValue(ADC1);
复制代码
. a5 Y, c, `& g# d

1 E: L+ o4 K% g- W0 r8 `1 y, w6 r6 x( ?; v$ b4 r' P; P% Q

3 P; {/ l$ K. m- T& `. D9 O# q
收藏 评论0 发布时间:2021-11-23 21:01

举报

0个回答

所属标签

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版