STM32(HAL库)之串口篇

引脚及其功能:

Tx:数据发送引脚,负责向外发送数据

Rx:数据接收引脚,负责从对侧接收数据

串口收发数据格式:

串口以数据帧格式发送数据,数据帧由起始位,数据位,停止位组成。

数据帧中数据为可加校验位:校验位的校验方法主要分为奇校验和偶校验。

奇校验要求发送数据为中包括奇数个1,偶校验要求数据位中包括偶数个1。

波特率:

每秒钟传输位的数量称为波特率,例如9600波特率 = 每秒钟传输9600个位

收发双方应约定使用相同波特率进行数据传输

UART/USART:

UART:通用异步收发器,特点为支持异步工作模式,也就是通常意义上的串口

USART:通用同步/异步收发器,特点为支持同步和异步工作模式,它多加了CK(时钟线)

常用代码:

发送函数:

HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart,uint8_t *pData,uint16_t Size,uint32_t Timeout);

作用:通过该函数串口向外发送数据

参数huart:串口句柄的指针(&huart1),由HAL库自主生成

参数pData:填写要发送的数据的指针

参数Size:填写要发送数据的数量,以字节为单位

参数Timeout:超时时间(ms),若发送超过超时时间,则停止发送并且返回发送超时的状态,一般不填写超时时间,以HAL_MAX_DELAY作为填入值,表示一直等待到发送结束

返回值:返回数据的发送结果,HAL_OK成功,HAL_ERROR失败,HAL_BUSY串口忙,HAL_TIMEOUT发送超时

例:

接收函数:

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

作用:该函数通过串口接收数据

huart:填写句柄的指针

pdata:指向接收缓冲区的指针,接收缓冲区用来存放接收的数据

size:接收数据的数量,以字节为单位

Timeout(略)

返回值(略)

例:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值