STM32串口通信

      最后更新:2022-03-23 08:39:37 手机定位技术交流文章

      STM32串口通信

      一、串口

      1.串口概述

      序列是一台计算机中最经常和最直截了当的通信类型,使数据能够在两个或两个以上装置之间发送。
      为了在这两个装置之间进行通信,使用了序列号。
      两个设备不需要一个时钟 。
      完成双重工作 — 两条“电线”连接两个数据交换设备。
      Tx:数据传输数据发送器
      Rx: 数据接收器是一个接收数据的设备。
      在这里插入图片描述
      双方在通过串行口沟通时,必须拥有与“共同通道”“共同通道”相同的通信协议,双方必须与共同土地,即GND相联系。
      序列( USART) 同意数据必须在通信时以“ 框架” 的形式发送序列数据框架, 包括: 开始 + 数据 + 核查 + 停止 。
      其中:
      (1) 从一个周期的固定低空信号开始。
      (2) 数据位数:双方可以商定5 9位数。
      3) 审定:序号采用可经双方商定的奇数混合试验。
      (4) 停止位置:可选0.5 2个高级周期
      同时,为了同步两种通信的接收和发送速度,每秒提供的数据框架数量,称为波特率,通常为9,600,115,200,57600。

      STM32F4x 序列控制器 2

      控制通常与单一计算机的序列端口合并,用户通常仅通过软件设置就使用序列端口与序列端口连接!
      在这里插入图片描述

      SR: 状态登记册,每个位数代表序列控制中一个单独的状态变化。
      RXNE表示接收数据登记册不是空的。值为1表示RDR登记册包含数据,可读。值为0表示RDR登记册中没有数据。
      TXE: 发送数据登记册空1 表示TDR登记册没有数据,可发送 0 表示TDR登记册有无法发送的数据(包括最近发送的数据)

      三. STM32F4xx的逐步实施

      考虑STM32F4x USART1 (Spill 1) 与计算机互动。
      串口转USB原理图
      在这里插入图片描述
      串口原理图
      在这里插入图片描述
      换句话说,当UART1跳过1-3和2-4的上限时,STM32 USART1和PC可以连接USB线(必须燃烧或调试序列端口),并将USART1设定为PC上的调试序列端口。

      (1) 设置 Rx 和 Tx 脚步

      GPIO使用STM32序列中的Tx和Rx。
      在这里插入图片描述
      PA9 –>USART1_Tx
      PA10 –> USART1_RX

      (2) 设置序列初始化
      3) 串口收发函数

      测试代码:

      当USART1提供的数据通过USB连接传输到计算机时,在PC上运行的序列调试协助可接收数据。

      4)串口接收中断

      当发生紧急情况时,通常的CPU执行顺序被中断,中断过程被中断,中断过程从中断的地方恢复。
      在连环申请中,这被称为中断, 并且因为我们不知道数据何时会从另一边到达, 我们没有得到功能。
      串口中断配置:

      如果配置停止, NVIC 必须配置 。

      此配置完成后, 提供给 STM32 的数据导致序列 1 中断 。
      目前还需要第1号序列的中断处理功能。

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

          热门文章

          文章分类