实验四 串口通信

本文详细介绍了STM32通过串口1进行双向通信的实验,包括硬件配置、波特率设置、软件初始化过程、中断服务程序以及发送和接收函数的编写,旨在帮助读者掌握串口通信的基本原理和实践操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验四 串口通信

一、实验目的

学习串口的使用(接收与发送)

二、硬件资源

KEY1(PD15)    -   LED1(PD12)

KEY2(PD14)    -   LED2(PD11)

KEY3(PD13)    -   LED3PD10)

串口1(波特率:115200,PA9/PA10连接在板载USB转串口芯片CH340上面)   

三、实验要求

本实验,STM32通过串口1和上位机通信,STM32在收到上位机发过来的字符串(以回车换行结束)后,直接返回给上位机。下载后,LED0闪烁,提示程序在运行,同时每隔一定时间,通过串口1输出一段信息(学生姓名)到电脑。

四、注意事项

1.电脑端串口调试助手波特率必须是115200.

2.请使用XCOM/SSCOM串口调试助手,其他串口助手可能控制DTR/RTS导致MCU复位/程序不运行

3.串口输入字符串以回车换行结束.

4.请用USB线连接在USB2UART上

五、实验原理

1.硬件电路

  1. 简单双向串口通信有两根通信线(发送端TX和接收端RX)
  2. TX与RX要交叉连接
  3. 当只需单向的数据传输时,可以只接一根通信线
  4. 当电平标准不一致时,需要加电平转换芯片

2.串口参数及时序

  1. 波特率:串口通信的速率
  2. 起始位:标志一个数据帧的开始,固定为低电平
  3. 数据位:数据帧的有效载荷,1为高电平,0为低电平,低位先行
  4. 校验位:用于数据验证,根据数据位计算得来
  5. 停止位:用于数据帧间隔,固定为高电平

六、实验步骤

1.软件实现过程

(1)串口初始化

在这一步中,需要:

① 对该串口使用到的 IO 口进行初始化和使能相应的时钟树,并对端口进行复用映射;

② 中断配置 (主要是一个优先级);

③ 串口初始化配置(奇偶校验、收发配置等);

④ 串口使能;

串口1中断服务程序:

(2)编写发送与接收函数

如果要接收串口3的信息,这样调用:Receive = USART_ReceiveData(USART3);如果要通过串口3发送消息,则:USART_SendData(USART3,data)。

(3)主函数

2、串口收发功能测试

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值