stm32初学者必会操作----usart串口调试工具

本文详细介绍STM32初学者如何使用USART串口进行设备调试,包括接线指导、编码配置步骤及常见问题解决,适合新手快速掌握串口调试技巧。

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

stm32初学者必会操作----usart串口调试工具

今天笔者介绍stm32初学者必会的工具 usart的串口设备。
usart很重要,可以传输数据,可以检查代码的错误位置,查看输出数据。
下图就是笔者的蓝牙串口
串口设备

下面来介绍串口使用的步骤

1. 首先是接线–笔者这里使用的是stm32f103rct6
USART1_RXTXD
USART1_TXRXD

串口用到是USART1 —PA9 、 PA10;

芯片与串口设备交错相连
注意:串口正负极不要接反。

PA8--

2. 然后就是编码
1.打开GPIOA 、USART1
RCC->APB2ENR |= RCC_APB2ENR_IOPAEN | RCC_APB2ENR_USART1EN;
2.配置对应的GPIOA引脚,我们这里用的是PA9、PA10;

这里4:浮空输入。 b:复位推挽输出

GPIOA->CRH = (GPIOA->CRH & 0xfffff000) | 0x4b0;
3. USART1配置
USART1->BRR = SystemCoreClock / 115200;//此为波特率,要看您的串口设备
USART1->CR1 = USART_CR1_TE | USART_CR1_UE | USART_CR1_RE;

注意:如果是APB1ENR 的波特率要改为:SystemCoreClock/2/115200;

4. 输出
USART1->DR = '1';
直接上代码

下面展示一些 内联代码片

#include <stdio.h>
#include <stdlib.h>
#include <stm32f10x.h>
#include <string.h>

int fputc(int ch, FILE *fp)
{
	if (ch == '\n')
		fputc('\r', fp);
	
	USART1->DR = ch;
	while ((USART1->SR & USART_SR_TXE) == 0);//等待发送完毕
	return ch;
}

int main(void)
{
	RCC->APB2ENR |= RCC_APB2ENR_IOPAEN |  RCC_APB2ENR_USART1EN;
	
	GPIOA->CRH = (GPIOA->CRH & 0xfffff00f) | 0x4b0;
	
	USART1->BRR = SystemCoreClock / 115200;
	USART1->CR1 = USART_CR1_TE | USART_CR1_UE| USART_CR1_RE;

	while (1)
	{
		printf("hello world!\n");
		for(int i = 0 ; i < 20000; i++);
	}
}

在这里插入图片描述
在这里插入图片描述
注意:如果是蓝牙串口输出时一定要注意输出的速度,如果太快了 将会导致电脑蓝牙崩溃,笔者崩了好多次,相关经验在博客中写出了

如果有什么问题尽管来博客私信: 点击.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sf9090

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值