栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

stm32串口的学习

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

stm32串口的学习

 

起始位为0 数据开始发送

数据的长度为5678位:

校验位:奇校验: 数据中的1的个数+上校验位中的个数为计数,如果数据中1的个数为基数那么校验位为0,如果数据位中的1的个数为偶数,那么校验位变为1,总之是使得所有的1的个数为1就好了,然后校验位去凑

串口的配置:

配置是照片那个:GPIO时钟,串口的时钟,引脚复用的时钟

配置GPIO结构体

 配置串口的结构体

串口的发送

APB2 上有USART1 使用的频率是72MHz

APB1 上的 UART  使用的是2分频 36MHz

初始化串口:

 结构体的定义要放到函数的最前面

打开GPIOA的时钟,使能

打开UART的时钟,使能

打开引脚复用的时钟,使能

定义GPIO结构体: 只需要定义一次

配置输入TX  PA_9

配置GPIO的结构体: 模式 推挽输出   引脚 PA9,速度 50Mzh

初始化结构体

配置输入RX  PA_10

配置GPIO的结构体:  模式 浮空输入 引脚PA10  ,速度50MHz

初始化结构体

配置串口结构体:

定义串口结构体:

配置结构体: 波特率:115200 硬件流 :没有用到 模式 :输入或输出 校验位 :无 校验 停止位:一位  字节长度 :8位

初始化串口结构体

打开串口

单片机发送字符到上位机上

while中

串口发送字符

 while{串口判断标识符}

串口发送字符

自己封装函数:

函数的参数: 串口发送字符串的参数;

函数的里面  就是发送字符串的函数,判断标识符是否发送成功

串口发送字符串:

自己封装函数:

函数的参数: 需要用到指针方便指针的移位

利用dowhile

这里判断标志位是整个判断是否完成

重定义利用c语言printf 发送字符串

需要用到stdio.h  需要在魔术棒勾选

int  fputc(int ch, FILE *)

{

        发送字符  这里参数需要强制转化

}

 重定向  输入

只需要用到接收寄存器非标值位;

然后返回  接收函数

 

重定向 这两个函数后:直接就可以用print的函数直接发送数据到串口上去了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/779486.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号