搭建STM32开发环境——STM32CubeMX,Keil5

本文介绍了如何搭建STM32开发环境,使用STM32CubeMX和Keil5生成及配置代码,实现LED灯的点亮,并利用Keil的逻辑分析仪观察GPIO波形。通过详细步骤,包括固件库安装、工程配置、代码生成、编译下载以及波形观察,帮助读者理解STM32的初步应用。

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

一、搭建STM32的开发环境

1.安装STM32CubeMX
下载地址:
https://www.st.com/en/development-tools/stm32cubemx.html

2.安装完成后,打开STM32CubeMx,选择help–>manage embedded…安装固件库
在这里插入图片描述
下面第一个按钮是从本地安装(已经在本地下载了对应的固件库),Install now是通过网络下载,一般不推荐这种方式。

二、利用工具实现LED灯的点亮

1.分析相应的原理图
在这里插入图片描述
2.使用CubeMX生成相关代码
①选择New Project,然后选择芯片类型,这里我所用的是STM32F103C8
在这里插入图片描述
②配置系统调试接口sys,选择Serial Wire
在这里插入图片描述
③配置引脚功能
在芯片上找到对应的引脚,点击它,选择对应的功能。此处选择的引脚PA5为输出模式。
在这里插入图片描述

④接着选择GPIO,GPIO相关设置
在这里插入图片描述

GPIO output level:有low和high两种选择,一般选择low
GPIO mode:推挽输出和开漏输出两者模式,两者模式的区别在于推 挽输出中1代表VCC,0表示GND;开漏输出中1代表高阻态,0代表GND。
GPIO Pull-up/Pull-down:输入需要上下拉,输出一般没有上下拉
Maxinum output speed:最大的输出速度,一般选择low就可以了。

配置好后,选择Project Manager在这里插入图片描述
设置工程名字,Project Name,并且Toolchain/IDE选择MDK-ARM,Version选择V5
在这里插入图片描述
选择GENERATE CODE,就会生成相应的代码,并且会弹出一个对话框,点击Open Project,就会使用Keil5打开工程。
3.使用Keil进行编译下载
在keil中进行编译
4.实验现象
连接对应管脚的LED就被点亮了。
在这里插入图片描述

三、利用keil的软件仿真的逻辑分析仪功能观察GPIO的波形图

1、首先,设置options for target:
Target页的设置:
在这里插入图片描述

Debug页的设置:
在这里插入图片描述

按照以上步骤设置后点击OK,完成设置

2、点击Debug,进入调试界面:

3、选择逻辑分析仪
在这里插入图片描述

4、选择要观察的引脚:
在这里插入图片描述
添加要观察的引脚:
在这里插入图片描述
每一个引脚都要相应的设置bit。

5、运行程序:
在这里插入图片描述

四、编写代码

1.创建新工程并编写代码
首先创建新的工程,
在这里插入图片描述
创建完工程后,添加 asm 汇编文件,并添加如下的代码

;RCC寄存器地址映像             
RCC_BASE            EQU    0x40021000 
RCC_CR              EQU    (RCC_BASE + 0x00) 
RCC_CFGR            EQU    (RCC_BASE + 0x04) 
RCC_CIR             EQU    (RCC_BASE + 0x08) 
RCC_APB2RSTR        EQU    (RCC_BASE + 0x0C) 
RCC_APB1RSTR        EQU    (RCC_BASE + 0x10) 
RCC_AHBENR          EQU    (RCC_BASE + 0x14) 
RCC_APB2ENR         EQU    (RCC_BASE + 0x18) 
RCC_APB1ENR         EQU    (RCC_BASE + 0x1C) 
RCC_BDCR            EQU    (RCC_BASE + 0x20) 
RCC_CSR             EQU    (RCC_BASE + 0x24) 
                              
;AFIO寄存器地址映像            
AFIO_BASE           EQU    0x40010000 
AFIO_EVCR           EQU    (AFIO_BASE + 0x00) 
AFIO_MAPR           EQU    (AFIO_BASE + 0x04) 
AFIO_EXTICR1        EQU    (AFIO_BASE + 0x08) 
AFIO_EXTICR2        EQU    (AFIO_BASE + 0x0C) 
AFIO_EXTICR3        EQU    (AFIO_BASE + 0x10) 
AFIO_EXTICR4        EQU    (AFIO_BASE + 0x14) 
                                                           
;GPIOA寄存器地址映像              
GPIOA_BASE          EQU    0x40010800 
GPIOA_CRL           EQU    (GPIOA_BASE + 0x00) 
GPIOA_CRH           EQU    (GPIOA_BASE + 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值