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

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

[复制链接]
STMCU小助手 发布时间:2021-11-23 21:01
  1. static void ADC_Config(void)8 C( y6 w1 d) P  I- `/ b/ E
  2. {
      D& }5 Z9 g) ]5 c
  3.   ADC_InitTypeDef     ADC_InitStructure;
    & {. l# \6 ]# Z  ]" z3 x. g- r* m
  4. . V! y' {% j; U: v% ]5 b

  5. ! t4 M/ P& R2 z/ u3 h
  6.   /* ADCs DeInit */  ! _' B. z+ l" h$ a8 J
  7.   //ADC_DeInit(ADC1);
    - S9 S5 M5 Z( Q* E2 D6 O* x$ n

  8. $ q! ^! _2 S& y! Y
  9.   /* Initialize ADC structure */7 n0 p$ _+ z: G" I
  10.   ADC_StructInit(&ADC_InitStructure);
    * f8 b4 q2 `: s
  11. * L3 y( X# x& k: {' u
  12.   /* Configure the ADC1 in continuous mode with a resolution equal to 12 bits  */  f& ?1 C3 K( N$ I" u6 ~
  13.   ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;
    ' W' j; y2 V# p' V
  14.   ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;
    8 s, X6 a! o1 ~
  15.   ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;9 G) q7 F  C: A5 g4 l8 a
  16.   ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;. w2 t- R/ b2 n7 w% q' f! v
  17.   ADC_InitStructure.ADC_ScanDirection = ADC_ScanDirection_Upward;
    5 B# o- k* c- Z; u# q, Q. h+ d& a
  18.   ADC_Init(ADC1, &ADC_InitStructure);
    3 @# I% o: e* K* ]+ u; |7 B) O+ x

  19. " E$ l8 s- Z1 A9 m
  20.   /* Convert the ADC1 Channel 9 with 239.5 Cycles as sampling time */  
    " C. `) @! o+ c) O  Q. g5 o
  21.   ADC_ChannelConfig(ADC1, ADC_Channel_9 , ADC_SampleTime_239_5Cycles);% D1 M1 e8 n% C" S! B. a
  22.   /* ADC Calibration */, i! E/ g% _  m5 `
  23.   ADC_GetCalibrationFactor(ADC1);1 Q) c( r+ R+ I# A2 k" o" K) f
  24. , g- Y8 l$ h* Q9 o& m
  25.   /* ADC DMA request in circular mode */- z/ m$ g; f2 q1 F( {( H
  26.   //ADC_DMARequestModeConfig(ADC1, ADC_DMAMode_Circular);
    ) S! v5 H" i5 z" ~
  27. , I; Y& g9 a4 x1 e1 e7 Z( Y
  28.   /* Enable ADC_DMA */) x7 m, ]# k6 y+ V! [# V, P
  29.   //ADC_DMACmd(ADC1, ENABLE);  9 _) p& W5 o. t; ?2 Y! [/ Z

  30. ! E+ N8 K  a  W
  31.   /* Enable the ADC peripheral */! [( ^  U) U$ m0 t
  32.   ADC_Cmd(ADC1, ENABLE);     : j5 T" V* R1 S8 Z. o

  33. 1 }  G& t9 K! V! ~
  34.   /* Wait the ADRDY flag */  @& Q1 H: I& h  o
  35.   while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_ADRDY));
    / r0 G: Q7 v$ M) }; N+ {, r
  36. ( h) n" X3 N- B6 X7 v
  37.   /* ADC1 regular Software Start Conv */ * a/ m1 K8 c2 N( f4 z
  38.   ADC_StartOfConversion(ADC1);5 y$ F- H, Y2 x

  39.   d' l) n9 X% a5 e
  40. }' r& _; o# w& I' l) h

  41.   r3 v/ U$ ]4 M+ L
  42. while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));//等待转换结束
    ' X# j, d4 E% R2 [! {) E" ^0 q' A! e
  43.       _adc=ADC_GetConversionValue(ADC1);
复制代码

, e6 G4 }- ]; D+ {7 b6 n6 H3 r& s/ _

% n& Y, ~" L# s; w" |* e5 x, p$ Q1 Z7 l
收藏 评论0 发布时间:2021-11-23 21:01

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版