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

【经验分享】关于stm32g030c8t6使用过程钟踩过的坑

[复制链接]
STMCU小助手 发布时间:2021-11-10 18:02
最近使用STM32G030来做项目,使用的过程发现有太多的坑了,折腾自己快要崩溃,主要问题还是初始化的过程中初始化失败,导致程序不运行。
8 o6 y, a# y8 F) h7 t. p" {
% x% V, v- J' A& b3 N4 A现在总结下遇到的问题:, {! V; i; M# i) t
1.ADC使用多通道扫描模式用DMA传输数据,HAL_ADC_Start(&hadc1);这个开始必须要放在DMA初始化相关函数的后面。
/ [7 R( T2 N4 ~: s3 k2.开启串口中断后导致程序异常不运行,最后把开启传偶中断函数放在main函数的最前面就可以正常运行
9 [$ e* i$ q( Y5 `: ~1 {3.程序是按顺序上之下运行,初始化时候要考虑好顺序关系。# a3 |4 o  v" j/ k: ]! b

) k: c8 S/ F2 p( x) a/ a( O  k5 @比如按下面的顺序进行初始化才可以正常的运行
% H8 K4 u2 Y- o, j1 C2 {
  1. /* USER CODE BEGIN 1 /+ F$ G) `& n, J3 F7 e1 O
  2. / STM32G0xx HAL library initialization:9 u2 c) X( k- F9 E. p, h+ d3 j
  3. - Configure the Flash prefetch8 F' S5 A. Z' o5 d
  4. - Systick timer is configured by default as source of time base, but user
    % S3 l3 N+ k4 H" s3 R. q# p8 B
  5. can eventually implement his proper time base source (a general purpose8 s- I) G. w) I' [6 _
  6. timer for example or other time source), keeping in mind that Time base, o  k" R! b7 o. q& d
  7. duration should be kept 1ms since PPP_TIMEOUT_VALUEs are defined and; j9 a0 o% J. i7 ^# y9 n$ \+ {
  8. handled in milliseconds basis.5 }- x4 r! p1 U5 a
  9. - Low Level Initialization
    + q" Z" T6 Z2 y7 O; H7 W3 o3 f
  10. */
    $ Q; e! _/ i1 x5 }% x1 {. B5 |

  11. $ S% N( V- A$ z& l
  12. /* USER CODE END 1 */! Y# V6 [9 T9 r2 ?2 G5 G

  13. ! d. h$ u/ k; p; m9 }! `. p8 \1 P
  14. /* MCU Configuration--------------------------------------------------------*/
    # P% l! b( X; X9 D
  15. . C% R' {+ P" r& l
  16. /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
    6 l7 B1 {0 |. I6 O+ z5 y3 b5 H0 ~
  17. HAL_Init();
    + D! o0 @, f$ u+ V
  18. Enable_IT_Uart_Fun();
    , [: S! P# s& o: k

  19. ' z! ~0 p! ^# B( d
  20. /* USER CODE BEGIN Init /
    $ b9 J+ s. S4 O* R; G/ q1 ?
  21. / Configure the system clock to 56 MHz /
    6 s7 M; X1 @1 A7 s. X+ N2 v& y7 x' p
  22. / USER CODE END Init */
    8 V9 ]5 P: z8 Q

  23. ( z& r( B" r8 t6 n2 q: q" v
  24. /* Configure the system clock */
    0 Q( F% d# s; ~; W
  25. SystemClock_Config();) c# D, g/ [( N8 ]6 P9 _. [* c

  26. 4 A9 N+ H2 r7 u5 _
  27. /* USER CODE BEGIN SysInit */
    4 \: _5 n0 |' h9 w0 k7 q4 [/ y
  28. 7 H1 _+ p" I8 T
  29. /* USER CODE END SysInit */5 w* l6 B5 n" H7 Y+ J& [

  30. & P, G  ?- F0 e' e& S
  31. /* Initialize all configured peripherals /
    1 D* h8 F  f: Z8 N! [9 Z& g
  32. MX_GPIO_Init();
    ' \4 K* u) }5 v  H
  33. MX_DMA_Init();: u# c  A4 g/ ~# W/ r
  34. MX_ADC1_Init();) L" K) C6 q  V: W5 X. s5 _( l
  35. MX_USART2_UART_Init();
    # T# K, u7 w; [0 R  t
  36. MX_IWDG_Init();
    # e& g" _, B- Y4 s8 s* T' F
  37. MX_USART1_UART_Init();
    8 k+ A/ |3 L4 g) z  J# D+ m
  38. / USER CODE BEGIN 2 */
    $ F4 m; |- `* l. E+ M
  39. LED_Config();
    - @! v5 k; n) P
  40. Lcd_Init();
    $ k3 R( L  i3 d
  41. Clear_Screen();
    9 W5 w4 _% k3 h! f9 j
  42. Show_Picture();/开机显示logo/; ?9 B/ j, u# E% t" t# k5 S
  43. Wireless_Mode_Config();
    : c: B* Y  v, v: A  d# W6 D

  44. , G! N  a; @3 D2 l
  45. Flash_Init();
    % r6 q8 V1 {2 j5 _; }
  46. if (HAL_ADCEx_Calibration_Start(&hadc1) != HAL_OK)* C$ s; x' w  C9 ~
  47. {9 j5 s7 Q" K/ @6 Q  _6 ?' l' e
  48. /* Calibration Error */
    ( J+ Q) i% ^7 i1 i1 P; C* d
  49. while(1);
    ' q# |% B) s: I7 I9 Z% |
  50. }
    ! \0 H9 y0 ?3 I& B8 y( `
  51. if (HAL_ADC_Start_DMA(&hadc1,(uint32_t )ADC_ConvertedValue,7) != HAL_OK)9 z# I" J. N9 z% O0 e
  52. {
      a: C0 B& B: w7 i& |' z
  53. / ADC conversion start error */+ n2 _! N7 L/ w) g( r5 Q
  54. while(1);
    / M  z/ }% ]. f! r5 E
  55. }9 k2 h# X" _' p) _- u% E
  56. HAL_ADC_Start(&hadc1);
    * p1 b3 h3 O5 B* |- P- h" J1 ^
  57. $ }. k" ^6 _8 |( j% ]- R
复制代码
) k# K6 \( V& i' P0 H' c
' x8 v! F6 @: B2 ], t% O
收藏 评论0 发布时间:2021-11-10 18:02

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版