串行通信原理

一、STM32串口简介

串口设置的一般步骤:
1、  串口时钟使能, GPIO 时钟使能
2、  串口复位
3、GPIO 端口模式设置
4、  串口参数初始化
5、开启中断并且初始化 NVIC (如果需要开启中断才需要这个步骤)
6、  使能串口
7、编写中断处理函数
1. 串口时钟使能
串口是挂载在 APB2 下面的外设,所以使能函数为:RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1);
2. 串口复位
void USART_DeInit(USART_TypeDef* USARTx);// 串口复位
(比如我们要复位串口 1 ,方法为: USART_DeInit(USART1); //复位串口 1)
3. 串口参数初始化
void USART_Init(USART_TypeDef* USARTx, USART_InitTypeDef* USART_InitStruct)
第二个入口参数是一个 USART_InitTypeDef 类型的结构体指针,这个结构体指针的成员变量用
来设置串口的一些参数。一般的实现格式为:
USART_InitStructure.USART_BaudRate = bound; // 波特率 ;
USART_InitStructure.USART_WordLength = USART_WordLength_8b;// 字长为 8 位数据格式

分类

一、处理器与外部设备通信的两种方式
1、并行通信
传输原理:数据各个位同时传输
优缺点:传输速度快,但占用引脚资源多
2、串行通信
传输原理:数据安慰顺序传输
优缺点:占用引脚资源少,但是速度较慢
二、按照数据传输方向分类:
1、单工:数据传输只支持数据在一个方向上传输
2、半双工:允许数据只支持数据在一个方向上传输,但是,在某个时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;
3、全双工:允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接受和发送能力。

三、串行通信的通信方式

1、同步通信:带时钟同步信号传输

                     SPI,IIC通信接口

2、异步通信:不带时钟同步信号

                       UART(通用异步收发器),单总线

常见的串行通信

 

实例 

一、硬件

将P4的RXD和TXD用跳线帽与PA9和PA10连接起来

二、软件部分

1、调用SYSTEM组下的usart.c资源

2、main函数

 

串口 

一、STM32的串口通信接口

1、UART:通用异步收发器

2、USART:通用同异步收发器

二、硬件连接

RXD:数据输入引脚,数据接收

TXD:数据发送引脚,数据发送

 

三、STM32UART异步通信方式特点:全双工异步通信。
分数波特率发生器系统,提供精准的波特率——发送和接受共用的可编程波特率,最高可达4.5Mbits/s。
可编程的数据字长度(8位或者9位)。
可配置的停止位(支持1或者2位停止位)。可配置的使用DMA多缓冲器通信。
单独的发送器和接收器使能位。
检测标志:①接收缓冲器②发送缓冲器空③传输结束标志
多个带标志的中断源,触发中断。
其他:校验控制,四个错误检测标志。


四,STM32串口异步通信需要定义的参数:
①起始位
②数据位(8位或9位)
3奇偶校验位(第9位)
④停止位(115,2位)
5波特率设置
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值