STM32串口通讯—— USART通信实践

串口通讯

1.串行通讯与并行通讯

串行通讯:指设备之间通过少 量数据信号线(一般是 8根以下),地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式。就像是单车道的公路,同一时刻只能传输一个数据为的数据。
并行通讯:指使用 8、16、32 及 64 根或更多的数据线进行传输的通讯方式,就像多个车道的公路,可以同时传输多个数据位的数据。
串行通讯的通讯距离和抗干扰能力要优于并行通讯,并且成本更低,而并行通讯的传输速率要优于串行通讯。

2.全双工,半双工和单工通讯

全双工通讯:设备之间可以同时收发数据。 半双工通讯:设备之间可以收发数据,但是不能够同时进行。
单工通讯:单方向的进行数据的发送和接收,即一个设备要么作为发送设备,要么作为接收设备。

3.同步通讯和异步通讯

同步通讯:收发双方使用同一个信号线作为时钟信号,在时钟信号的驱动下双方进行协调,同步数据。
异步通讯:不采用时钟信号进行数据同步,而是在数据信号中穿插一些同步用的信号位来实现同步。

寄存器与基于固件库的编程方式差异:

寄存器:需要深入掌握芯片,需要更多的时间;

固件器:简单易上手,利用已有的芯片和资料依瓢画葫芦编程;

USART串口通信实践

1.实验环境
① 野火指南者(STM32F103VE)
② IDE:KEIL5 MDK
③ 实验所用串口:USART1
硬件原理图
在这里插入图片描述

2.实验要求
1)设置波特率为115200,1位停止位,无校验位。

2)STM32系统给上位机(win10)连续发送“hello windows!”,上位机接收程序可以使用“串口调试助手“,也可自己编程。

3)当上位机给stm32发送“Stop,stm32”后,stm32停止发送。

准备

资料包里找到CH341SER.EXE,点击安装运行
在这里插入图片描述
在官方资料库中找到USART1接发文件夹下的keil工程文件
在这里插入图片描述

打开工程后,点击USER,打开stm32f10x_it.c文件,修改如下
在这里插入图片描述

int i=0;
uint8_t u
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值