STM32开发环境搭建

目录

1.  MDK软件安装

1.1  MDK安装(编程环境)

1.2  USB串口驱动安装

1.3  STLINK驱动安装

2.  串口程序下载

2.1  硬件连接

2.2  一键下载方法

2.3  STM32启动模式

3.  ST-LINK程序下载

3.1  ST-LINK与开发板硬件连接

3.2  ST-LINK下载配置过程

3.2.1  驱动安装

3.2.2  编程软件(MDK)配置

4.  库函数和寄存器的区别

5.  Keil问题解决


1.  MDK软件安装

1.1  MDK安装(编程环境)

  • MDK是什么?

RealView MDK 是Keil公司开发的,为基于Cortex、ARM7、ARM9等处理器设备提供的一个完整的开发环境。

  • 参考资料:

ALIENTEK xxSTM32开发板入门资料\MDK5安装手册.pdf

  • 安装过程(略)

1.2  USB串口驱动安装

  • USB作用:

1.可以当串口使用。

2.如果USB串口连接到STM32的串口1(STM32ISP下载只能是串口1)的话,那么可以用来串口下载程序。

3.因为要连接到USB,所以可以用来USB供电。(如果开发板功耗较大,例如带液晶、外部连接多个模块,可能会导致供电不足,建议开发板再接外部电源、适配器来供电

USB串口驱动芯片型号:CH340

串口下载工具:mcuisp(FlyMcu)

  • 安装过程(略)

1.3  STLINK驱动安装

  • STLINK驱动作用:

安装了驱动之后,就可以在windows下配合MDK进行程序下载和调试

2.  串口程序下载

参考资料:

战舰/精英STM32F1开发板:《STM32F1开发指南-库函数版本》-3.4.2 STM32串口程序下载

2.1  硬件连接

特别注意:

STM32的ISP下载,只能使用串口1,也就是对应串口发送接收引脚PA9,PA10,不能使用其他串口(例如串口2:PA2,PA3)用来ISP下载。 

2.2  一键下载方法

环境准备:CH340驱动安装

对于F4板子,波特率(bps)请选择76800(不能过高),对于F1板子,波特率可以任意,这是F1和F4的唯一区别。 

常见问题:

  1. 驱动安装不成功?
  2. “调入文件失败”-hex文件路径要正确
  3. “无法打开串口COM1.Not Support Setting(bps/byte size etc)!”确保选中的串口号是CH340虚拟出来的。
  4. 确保“编程时写选项字节”没有勾上。
  5. 确保左下方选的“DTR低电平复位,RTS高电平进bootloader”
  6. 确保PA9,PA10的跳线帽连接了USB串口电路。

2.3  STM32启动模式

STM32直接通过两个引脚Boot0和Boot1设置启动模式

参考资料:

M3《STM32中文参考手册V10》2.4小节 表6

M4《STM32F4中文参考手册》2.4小节 表3

 一键下载原理:

一键下载电路,则利用串口的DTR和RTS信号,分别控制STM32的复位和B0,配合上位机软件(mcuisp),设置:DTR的低电平复位,RTS高电平进BootLoader,这样,B0和STM32的复位,完全可以由下载软件自动控制,从而实现一键下载。

3.  ST-LINK程序下载

本人买的时候是ST-LINK,视频中有JLINK的讲解,所以这里就写ST-LINK的程序下载。

3.1  ST-LINK与开发板硬件连接

参考视频教程(57秒):https://www.bilibili.com/video/BV1Pi4y157zu

3.2  ST-LINK下载配置过程

3.2.1  驱动安装

首先,需要下载ST-Link 资料包,下载地址为: http://openedv.com/posts/list/0/62552.htm 解压资料包,可以看到,在资料包里面,我们提供了 ST-Link 驱动包: ST-Link 官方驱动.zip 首先,大家解压资料包:

 解压后,驱动包里面包含两个可执行 exe 文件: dpinst_x86.exedpinst_amd64.exe  64位操作系统就执行dpinst_amd64.exe32位操作系统就执行dpinst_x86.exe安装完成后安装界面会提示:

驱动安装成功之后,大家把 ST-Link 通过 usb 连接到电脑,然后打开设备管理器,可以看 到会多出一个设备:

注意 2 点:

1, 各种 windows 版本设备名称和所在设备管理器栏目可能不一样,例如 WIN10 插上 STLINK 后显示的是 STM32 STLINK。

2, 如果设备名称旁边显示的是黄色的叹号,直接点击设备名称,然后在弹出的界面 点击更新设备驱动 至此,ST-Link 驱动已经安装完成。接下来大家只需要在 mdk 工程里面配置一下 ST-Link 即可。

3.2.2  编程软件(MDK)配置

参考视频教程(57秒):https://www.bilibili.com/video/BV1Pi4y157zu

4.  库函数和寄存器的区别

本质上是一样的。我们可以在库函数模板里面,直接操作寄存器,因为官方库相关头文件有寄存器定义,但是不能在寄存器模板调用库函数,因为没用引入库函数相关定义。

了解寄存器基本原理的目的是为了让我们对STM32相关知识有比较深入的理解,这样在开发过程中方可得心应手。底层代码配置出了问题需要调试的话,必须对寄存器有一定的了解才能找到问题,因为调试代码,底层只能查看寄存器相关配置。

5.  Keil问题解决

利用STM32创建工程,用Keil5打开后报如下错误:

One or more Device Family Pack Devices are not present

解决方法:

在官网中下载并打开安装(任意路径)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值