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

ADC采集通过STM32H实现经验分享

[复制链接]
STMCU小助手 发布时间:2023-3-11 21:00
使用HAL_ADC_PollForConversion可以进行一次转换,但是会根据设置的EOC类型决定是完成单通道转换还是Rank序列转换。
: ~/ w  t  r: w1 d  i! @" q

+ V3 v+ ]9 _1 @/ U# v0 p主函数逻辑代码如下:1 N8 D7 y# B$ I9 v" }  I" ^
  1. #include "sys.h"
    ! m# k6 @  u; H) A; R- i3 I
  2. #include "delay.h"
    7 l7 R2 g  S/ x4 N( A6 e
  3. #include "usart.h"9 s' A5 B9 s0 n  G: [
  4. #include "adc.h"
    9 M% _) G: g; f4 y. U

  5. & `2 o+ x; ?* \6 H! u4 F
  6. int main(void)
    " Z# ]& S  R, A
  7. {1 g- @0 J- z' q6 L: g# S' v1 L
  8.     u16 adcx;9 _0 p( D5 d) E# I3 q) d6 s/ ]
  9.     //Cache_Enable();                 //打开L1-Cache
    ) E7 n& _' k$ i- R1 m4 J- z6 Q
  10.     HAL_Init();                           //初始化HAL库
    ' F  q# [: I$ @0 v  k
  11.     Stm32_Clock_Init(200, 2, 2, 2); //设置时钟,400Mhz
    ( M8 u/ C; s# A# \8 C5 R4 o5 C
  12.     delay_init(400);                        //延时初始化( m  j% _6 {0 ~, P# I2 f
  13.     uart_init(115200);                  //串口初始化# z2 g. h1 A$ R" E, j, w& K
  14.     printf("hello\r\n");  Y3 ^  L& `  }: ^/ ^9 a# v; m  `* ^
  15.     MX_ADC1_Init();
    / Q& b& S. o$ m# [0 b
  16.     while (1)) i6 b6 X/ K4 @* F% k# r6 R% m
  17.     {
    2 O! A- p: o" S8 ]; }/ e$ \
  18.         HAL_ADC_Start(&hadc1);                               //开启ADC8 K4 n" @- W. w) ^
  19.         HAL_ADC_PollForConversion(&hadc1, 10);               //轮询转换
      s- M8 Q# `  b- c3 f
  20.         for (int i = 0; i < 8; i++)
    . L2 a5 I0 t" ~: u* S7 V
  21.         {
    0 r4 X8 l  s- j" N  M
  22.             printf("%d\t", (u16)HAL_ADC_GetValue(&hadc1));              //返回最近一次ADC1规则组的转换结果6 S; C! _2 A5 \
  23.         }2 i: h  Y* \4 F6 {
  24.         printf("\r\n");
      i' u7 f% n$ Z: D
  25.         delay_ms(500);
    % }$ U; H7 ^4 y
  26.     }( J# M2 W5 T: s6 D4 o+ N9 L
  27. }
    ' G9 p7 }8 H0 C

  28. $ `, v8 b- m4 ]; {9 C; n
  29. void Error_Handler(void)
    8 b4 r4 w/ I" W  i- ^
  30. {1 g. V/ B9 H. E  z( Q+ p
  31.   /* USER CODE BEGIN Error_Handler_Debug */8 t7 }8 j( b7 c4 s6 P
  32.   /* User can add his own implementation to report the HAL error return state */) ?9 e- p* Z2 h" B7 @

  33. $ Q7 k9 m" n! l" [; {6 O0 G1 E; o
  34.   /* USER CODE END Error_Handler_Debug */
    ; N9 U3 K" B! A8 C' B
  35. }
    % N) S- {. x3 x7 N& G  Q6 K; s* `
复制代码
1 \6 L# Q: d, u4 q- i
实验效果如下,中途将接入到3.3V的PA3切换到了PA2~
8 H1 C9 n  f. |/ p: \. ]0 C! y  O
20200426095855892.png " e' Y* c3 ]9 R  D. N9 w

) y, ~: G6 {# S————————————————+ w/ E: t- {: X) a
版权声明:小盼你最萌哒
7 g, t. d, h7 W$ E7 X5 q
+ N; d7 }: T: g) k- M% S
收藏 评论0 发布时间:2023-3-11 21:00

举报

0个回答

所属标签

相似分享

官网相关资源

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