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

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

[复制链接]
STMCU小助手 发布时间:2021-11-23 21:01
  1. static void ADC_Config(void)! n8 H. v+ V$ Q% Q
  2. {
    / w& L0 z; _  C0 |/ E
  3.   ADC_InitTypeDef     ADC_InitStructure;. `" a$ x1 b- L; d9 L- M: q4 B

  4. 4 U9 d% q2 m" ~* Z
  5. 9 R* t; ^$ w; Z2 s$ [8 q: ]
  6.   /* ADCs DeInit */  
      y  S' E% C6 |2 k% `1 M( \! |$ P+ }
  7.   //ADC_DeInit(ADC1);
    ! y: V5 |" M7 [# x
  8. 5 D* S+ C% R+ e& ^
  9.   /* Initialize ADC structure */
    1 i9 d# x. L5 f
  10.   ADC_StructInit(&ADC_InitStructure);
    8 M3 \' N3 f8 T
  11. : u$ G& W( G$ r5 T- _
  12.   /* Configure the ADC1 in continuous mode with a resolution equal to 12 bits  */& h+ T" \$ {$ r
  13.   ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;
    & Z  M7 w) l% J6 W7 A$ m4 t  u
  14.   ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; - h! Q$ _0 j2 e" o# E! x
  15.   ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;
    8 q- _! Q: a1 Y* B
  16.   ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;( Z* ^/ f: u+ U3 l
  17.   ADC_InitStructure.ADC_ScanDirection = ADC_ScanDirection_Upward;
    ; |( K* j1 O# R5 b
  18.   ADC_Init(ADC1, &ADC_InitStructure); - ?- K% y+ k& r* j
  19. % r; w) |# k, c- D- _% q
  20.   /* Convert the ADC1 Channel 9 with 239.5 Cycles as sampling time */  
    $ y% J& ^+ N% [1 ^1 `* a
  21.   ADC_ChannelConfig(ADC1, ADC_Channel_9 , ADC_SampleTime_239_5Cycles);
    3 k) o1 m% h6 t8 X3 x  k
  22.   /* ADC Calibration */% ?9 }" W- D+ k' M/ i4 ^1 @
  23.   ADC_GetCalibrationFactor(ADC1);# v5 Y) a1 F6 l/ I

  24. ' l$ M- E0 ]& ?) p9 Z
  25.   /* ADC DMA request in circular mode */% b# F9 q0 V& m. _- c
  26.   //ADC_DMARequestModeConfig(ADC1, ADC_DMAMode_Circular);
    8 v6 z  D" A( @$ n+ k: v' S
  27.   s1 G$ r/ s  ?& n' a+ f
  28.   /* Enable ADC_DMA */" ]$ O8 S6 `6 M$ P4 t
  29.   //ADC_DMACmd(ADC1, ENABLE);  5 y- ~/ K/ t9 X. B

  30. 3 ~/ @: y. @+ B  U! b/ n5 ^
  31.   /* Enable the ADC peripheral */- a$ a' p" q5 e5 e
  32.   ADC_Cmd(ADC1, ENABLE);     
    - k" p3 l9 O) {* J- n7 l9 R2 g. x( `5 M

  33. ' U. V) i7 ?8 L. i  b) U1 K2 Z
  34.   /* Wait the ADRDY flag */( I; f0 T' d, r7 z! J! s' `
  35.   while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_ADRDY)); 1 a8 ]9 s# r4 U
  36. * \$ N. G" N2 O( Y0 ]- L4 f" \
  37.   /* ADC1 regular Software Start Conv */ 1 o7 l! j- c+ c# }
  38.   ADC_StartOfConversion(ADC1);( i: {/ ~* |- E
  39. ( _5 c( q; e( I$ A" w, V! T2 }
  40. }
    * l5 ~4 r# k" |9 J) A0 P+ d: R

  41. 0 \7 X! @: {8 U% t+ Y) O
  42. while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));//等待转换结束
    4 q9 B: {9 e: N; \: x* ^
  43.       _adc=ADC_GetConversionValue(ADC1);
复制代码

, C* y+ i' Y  G% `4 h, b
9 W" T0 `5 L$ N/ _  k$ J- o- @" e! f& g- j8 z# O- \
- T+ N5 |; j4 N: V" B
收藏 评论0 发布时间:2021-11-23 21:01

举报

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