stm32f103核心板串口通信入门

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

使用固件库,目前比较多的例程是使用固件库编写的。固件库编写方式,特点是简单易于理解,资料多。新手适合用这种方式入门。

使用寄存器,想要深入理解CortexM3内核或是需要为了获得更好的可移植性,学习寄存器编程会比较有帮助。但是从专业的角度上看,寄存器更贴近底层,对外设的工作原理和运行机理会有更深的理解。优点:①具体参数更直观 ②程序运行占用资源少。 缺点:①开发速度慢 ②程序可读性差 ③维护复杂。开库开发方式则正好弥补了寄存器开发的缺点。

二、stm32串口通信

1. 前期准备

硬件

stm32f103c8t6核心板
在这里插入图片描述

推荐使用stm32f103ve开发板,核心板操作较为困难,容易出现线路连接不良、连接失误等各种意外。同时,开发板可以从网上找到直接可用的资料代码,大大节省时间,提高效率。

ST-link接口
在这里插入图片描述
USB-TLL转换线
在这里插入图片描述
在这里插入图片描述
以及数量足够的杜邦线

软件

STlink驱动

可自行百度下载

USB转串口驱动、野火多功能调试助手

USB转串口驱动在这里 提取码:l5fi
野火多功能调试助手在这里 提取码:rysf

MDK Keil5

连接

  • ST-Link 与核心板:选择st-link选择3.3v口,与核心板相对应连接
  • USB-TTL与核心板:TXD接A10,RXD接A9
    (注意!这里一定是反着接,容易犯错!)
  • ST-Link与USB-TTL分别接到电脑上

连接成功后如下图、
在这里插入图片描述

2.编写程序并烧录

设计程序

要求STM32系统给上位机(win10)连续发送“hello windows!”,当上位机给stm32发送“Stop,stm32”后,stm32停止发送。
代码如下:
stm32f10x_it.c

#include "stm32f10x_it.h"
#include "bsp_usart.h"
void NMI_Handler(void){
   }
void 
  • 6
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值