请选择 进入手机版 | 继续访问电脑版

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

【经验分享】STM32CubeMX—串口空闲中断+DMA接收

[复制链接]
STMCU小助手 发布时间:2021-11-15 21:01
STM32CubeMX—串口空闲中断+DMA接收

1)、串口一配置。

2)、开启中断模式

3)、生成工程代' w% Q! R# T& R8 K

! S+ F  k7 {/ }' K. S

& j% {( w  @+ N% _% l( {

在stm32g0xx_it.c中添

  1. <p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">uint8_t recv_end_flag=0;</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">void USART1_IRQHandler(void)0 l4 L, }+ ]- |) w
  2. {
    ; f) U2 Q. l! r5 e) j
  3.   /* USER CODE BEGIN USART1_IRQn 0 */
    # d" H. i+ e. N
  4.     recv_end_flag = 1;
    $ q& ~: O$ N& a. j
  5.     __HAL_UART_CLEAR_IDLEFLAG(&huart1);
    + c# b* g8 B4 o8 @
  6.   /* USER CODE END USART1_IRQn 0 */0 Q0 `8 R* ^' X1 s: F- @
  7.   HAL_UART_IRQHandler(&huart1);
    ! P: j' Q4 X" b9 V# I, |; q+ g
  8.   /* USER CODE BEGIN USART1_IRQn 1 */</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">  /* USER CODE END USART1_IRQn 1 */</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">}</font></font></font></p>
复制代码
2 U7 b. b! E9 J# t+ D7 P7 `- w

在main.c中加上

  1. <p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">#include"stm32g0xx_it.h"</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">extern uint8_t recv_end_flag;</font></font></font></p>
    4 b9 M0 S; S4 _/ Y
  2. <p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">MX_GPIO_Init();5 E" q6 W1 X2 a
  3.   MX_DMA_Init();
    5 K4 H( Q! d/ A7 K: ?/ d0 x
  4.   MX_ADC1_Init();$ x3 _' l' L, F! X' b5 f
  5.   MX_USART1_UART_Init();
    . c* B' e4 G; J. j
  6.   /* USER CODE BEGIN 2 */
    ! G: ^9 S9 {9 T. `! ~9 z
  7.     __HAL_UART_ENABLE_IT(&huart1, UART_IT_IDLE);
    * H9 \8 [; L/ Z0 \1 t- ], U
  8.     HAL_UART_Receive_DMA(&huart1,rx_buffer,sizeof(rx_buffer));
    8 `2 S$ M  x( i- T) \+ m9 @
  9.   /* USER CODE END 2 */</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">  /* Infinite loop */* z$ M0 ^# t/ f, U+ U
  10.   /* USER CODE BEGIN WHILE */: [4 [; w: u2 E5 r7 _, T: H
  11.   while (1)1 [0 E/ y' [- I$ ^$ e
  12.   {</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">        HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);
    0 A" ^7 Q( h3 [. l" E( @2 a, _8 I
  13.         HAL_Delay(200);
    : r( x% t0 q2 d
  14.         HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_SET);</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">        HAL_Delay(200);
    * G* w9 @' q- A9 j% u$ K* e+ V6 q0 O4 G
  15.         if(recv_end_flag ==1){. P7 M4 ]* l6 p3 a6 R4 o

  16. 4 B% n1 Q- o5 n: R
  17.         }# J2 C- `& P% S6 `0 d- K. S
  18.     /* USER CODE END WHILE */</font></font></font></p><p style="line-height: 26px;"><font color="rgb(77, 77, 77)"><font face="-apple-system, " "=""><font style="font-size: 16px">    /* USER CODE BEGIN 3 */0 u" U8 @* V( g
  19.   }
    " g1 I2 b6 K4 H- ?  a+ ~
  20.   /* USER CODE END 3 */- z7 u* W! v  v7 x2 V
  21. }</font></font></font></p>
复制代码
' V9 ?/ m% m7 H: R5 }1 y0 D# M0 s
: N6 G3 G3 _0 H" x2 B6 v/ V! `* U
收藏 评论1 发布时间:2021-11-15 21:01

举报

1个回答
lugl 回答时间:2022-12-27 08:19:52
有好多乱码呢,可否整一下,看的人感受好一点。
( J9 ]$ I4 R6 Z- G% [2 [0 h

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版