【STM32】4—UART串口(查询模式)

      最后更新:2022-04-28 12:49:06 手机定位技术交流文章

      目录

      0 实验预期效果

      1 相关原理图​

      2 硬件配置

      3 软件配置

      USART相关知识

      STM32CubeMX的设置

      4 代码编写

      函数理解

      串口发送

      串口接收

      代码编写

      0 实验预期效果

      完整序列数据的接收和交付。

      1 相关原理图

      2 硬件配置

      DAPLINK、STM32F407VET6:

      立正,TXD -PA10!

      !!

      GND —— GND

      5V —— 5V

      3 软件配置

      USART相关知识

      USART 简介、 功能描述和博客框图: [STM32] STM32F407 组合 - Max_ Shi - CSDN Blogs_stm32f407 组合

      STM32CubeMX的设置

      1 鼠标点击USATR1;
      MODE应该设为“同步”组织。
      波特的速率是115,200比特/秒。传输数据有8比特长度,无校准,1站,接收和发送均是如此。
      USART1_RX/USART_TX 4GPIO 脚架
      5NVIC设置栏规定了接收休息时间。

      4 代码编写

      函数理解

      HAL库 UART 这个博客在功能库中描述: [STM32] STM32F407 序列通信 _Max_Shy _CSN 博客_stm32f407 西瓜-CSDN关于Stm32系列通信和应用整合的博客(HAL图书馆)

      串口发送

      HAL_UART_Transmit():

      第一个参数是要使用的串口句柄地址,比如要使用U(S)ART1,参数就设置为U(S)ART1的句柄地址&huart1;
      第二个论点是从数据缓冲区转移的第一个地址。
      交付的数据长度是第三个参数,可使用()大小法直接获取。
      第四个选项是以毫秒计的超时。 如果达到时间限制, 方法返回 HAL_ TIMEOUT。 如果HAL_ MAX_ DELAY 设置好了, 处理器将等到数据传输后再继续到下个语句 。

      串口接收

      HAL_UART_Receive(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout)

      此函数与 HAL_UART_ Transmit () 函数一样,有四个参数:
      第一个参数是要使用的串口句柄地址,比如要使用U(S)ART1,参数就设置为U(S)ART1的句柄地址&huart1;
      第二个论点具体说明了接收数据的缓冲区的最初地址。
      所接受数据的长度是第三个论点,所接受的缓冲长度可根据()大小方法直接确定。
      第四个参数是所用时间,以毫秒计,如果超过指定时间,函数返回 HAL_TIMEOUT;如果设定为 HAL_MAX_DELAY,处理器将等到接受的数据集数量之后再执行下个语句。

      代码编写

      波特的小时工资是115 200美元

      [参考博客: [STM32Cube_06] 与 USAART (查询模式)_Mculover66 博客-CSDN 博客发送和接收数据

      [STM32] STM32F407 序列通信 _Max_Shy _CSN 博客_stm32f407

      西瓜-CSDN关于Stm32系列通信和应用整合的博客(HAL图书馆)

      历史史上最完整的STM32 HAL图书馆课程(I):UART的博客——CSDN博客——stm32cubeide

      西瓜-CSDN关于Stm32系列通信和应用整合的博客(HAL图书馆)】

      [这份材料是个人学习记录,不用于商业用途] 哦,我的上帝!

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/22966.html

          热门文章

          文章分类