stm32应用—— USART 串口通讯

stm32应用—— USART 串口通讯

一、通讯的基本概念

1.数据传输的方式

1) 串行通讯

指设备之间通过少 量数据信号线(一般是 8根以下),地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式。就像是单车道的公路,同一时刻只能传输一个数据为的数据。

2) 并行通讯

指使用 8、16、32 及 64 根或更多的数据线进行传输的通讯方式,就像多个车道的公路,可以同时传输多个数据位的数据。

不过由于并行传输对同步要求较高,且随着通讯速率的提高,信号干扰的问题会显著 影响通讯性能,现在随着技术的发展,越来越多的应用场合采用高速率的串行差分传输。

2.数据通讯的方向

1)全双工

在同一时间,两个设备之间可以同时收发数据,如:手机等。

2) 半双工

两个设备之间可以收发数据,但不能在同一时刻进行,如:对讲机等。

3) 单工

在任何时刻都只能进行一个方向的通讯,即一个固定为发送设备,另一个固定为接收设备,如:饭卡和读卡器之间,收音机等。

3.通讯的数据同步方式

1) 同步通讯

收发设备双方会使用一根信号线表示时钟信号,在时钟信号的驱动下双方进行协调,同步数据,即:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。

2) 异步通讯

不使用时钟信号进行数据同步,它们直接在数据信号中穿插一些同步用的信号位,或者把主体数据进行打包,以数据帧的格式传输数据,即:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。

二、USART串口通信(简单介绍)

串口通讯协议简介

1)物理层规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输

2) 协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准

STM32 的 USART 简介

通用同步异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter)是一 个串行通信设备,可以灵活地与外部设备进行全双工数据交换。有别于 USART 还有一个 UART(Universal Asynchronous Receiver and Transmitter),它是在 USART基础上裁剪掉了同步通信功能,只有异步通信。

USART 在 STM32 应用最多莫过于“打印”程序信息,一般在硬件设计时都会预留一 个USART通信接口连接电脑,用于在调试程序是可以把一些调试信息“打印”在电脑端的 串口调试助手工具上,从而了解程序运行是否正确、如果出错哪具体哪里出错等等

三、USART串口通信实践

1.实验环境

1)野火指南者(STM32F103VE)

2) IDE:KEIL5 MDK

3) 实验所用串口:USART1

硬件原理图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/lyjccchong/article/details/110729023