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

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

[复制链接]
STMCU小助手 发布时间:2021-11-23 21:01
  1. static void ADC_Config(void)
    8 |5 O4 _+ k8 [, A. G4 E- t. Z1 L
  2. {5 w8 Y) s7 Z' p1 I7 Z
  3.   ADC_InitTypeDef     ADC_InitStructure;$ m2 _0 f$ B$ j! _$ l0 z

  4. / u3 ?4 g( c' l0 R

  5. & f6 o/ }3 c! Z! N+ w) [8 H
  6.   /* ADCs DeInit */  
    7 S  ^  c7 J8 s: f. r
  7.   //ADC_DeInit(ADC1);
    ( U* e- P6 k" r! ]3 t" B
  8. . n, j+ ^5 Q* Y& o
  9.   /* Initialize ADC structure */$ y$ E% K8 L3 f) [9 i0 O' S6 T
  10.   ADC_StructInit(&ADC_InitStructure);) e- h5 a( M  P, T  B& u$ D6 T0 H& t9 \

  11. ) `( _+ B! B& a5 b
  12.   /* Configure the ADC1 in continuous mode with a resolution equal to 12 bits  */8 i' {) m% `1 i
  13.   ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;0 X. [+ u2 g! b: C6 v. Q, A) w( H
  14.   ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;
    ( J+ E( R$ t" j5 z/ h
  15.   ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;1 ?8 y! Y2 }8 w  U
  16.   ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;6 B% U! H8 D* [* G3 k" |) H, G
  17.   ADC_InitStructure.ADC_ScanDirection = ADC_ScanDirection_Upward;3 l) S& k- e* O# I1 m5 C
  18.   ADC_Init(ADC1, &ADC_InitStructure); ' K2 `# s* q0 b; Z1 n0 K
  19. . |6 [! r; Y& i6 u+ Q" F% n- o+ o
  20.   /* Convert the ADC1 Channel 9 with 239.5 Cycles as sampling time */  
    & _/ s1 d5 r$ h+ W
  21.   ADC_ChannelConfig(ADC1, ADC_Channel_9 , ADC_SampleTime_239_5Cycles);" x' ]5 \+ v/ Z, K# T% q0 H
  22.   /* ADC Calibration */
    1 \" T$ D5 P2 ]! Q. o$ G; g! `
  23.   ADC_GetCalibrationFactor(ADC1);
    , L: `# ~  i9 k8 m" g
  24. 4 @  T! R% s6 X5 r& O" l: R7 k
  25.   /* ADC DMA request in circular mode */, K! M/ i& S* s( C1 K) s2 L
  26.   //ADC_DMARequestModeConfig(ADC1, ADC_DMAMode_Circular);
    ; a  i0 V0 U7 d( W+ R( D
  27. % [0 n) e0 ]: [/ R2 H
  28.   /* Enable ADC_DMA */3 Y+ y& a+ R, M$ S8 h1 Q4 o
  29.   //ADC_DMACmd(ADC1, ENABLE);  / ?5 m$ m. O8 W) n3 }

  30. 0 K: h& M$ m) i* X% x5 W* k' K
  31.   /* Enable the ADC peripheral */- D- J6 i0 I, K9 S) `* E
  32.   ADC_Cmd(ADC1, ENABLE);     ( {9 O6 e0 v, [) ~9 m) ^6 h8 e
  33. : G) Z" v' R# z& u4 M' C9 }5 E! M
  34.   /* Wait the ADRDY flag */0 J, W' n: I5 f: E
  35.   while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_ADRDY)); 6 g& p  b: F0 u+ o

  36. 4 a+ ]% R# |6 s8 K( _
  37.   /* ADC1 regular Software Start Conv */ % w$ F' f# V- E5 |* z
  38.   ADC_StartOfConversion(ADC1);
    ; e. h' L' C) `) d+ W. s$ g3 s

  39. : ]9 s8 P; x* g2 f0 O+ ~/ l
  40. }/ A2 }/ u, y$ K$ W- \: j
  41. + U1 I1 x! o& ^' b8 _3 V4 q+ i
  42. while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));//等待转换结束
    & [5 J1 e1 {; t0 O" g$ w
  43.       _adc=ADC_GetConversionValue(ADC1);
复制代码

& D$ }+ y2 C, z/ O/ s1 P
% B& s, c4 N; @/ |) M
0 Q" }, y9 O' s9 s! v8 H+ T2 y" X
8 ?  O7 t5 r; m0 ~& [# z) \
收藏 评论0 发布时间:2021-11-23 21:01

举报

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