1、在ST官网下载STM32CubeIDE而不是STM32CubeMX,并且STM32CubeIDE是免费的。(STM32CubeIDE不支持中文路径,不然编译会出错)

2、如果你用的是keil开发环境那么 STM32CubeIDE =(STM32CubeMX + Keil)STM32CubeMX只是一个配置代码生成器

3、STM32CubeIDE 软件下载链接:https://www.st.com/zh/development-tools/stm32cubeide.html#tools-software

4、STM32CubeMX 软件下载链接:https://www.st.com/zh/development-tools/stm32cubemx.html

5、下载完成后开始安装,可以修改安装路径,其余全部按照默认即可(本次只安装 STM32CubeIDE )

6、安装完成后打开软件,设置自己的工作环境路径,点击Launch(路径不能有中文,有中文会编译错误)

7、点击 Start new STM32 project 创建一个新的工程项目,输入硬件上对应的芯片型号,点击Next,输入工程名称 BASIC_GPIO,点击Next 弹出对话框,点击Yes。

8、创建完成之后,以下界面就是创建的新工程

9、开始配置工程参数:1)配置SYS调试方式,2)配置系统时钟RCC,3)配置GPIO端口

10、配置调试方式(debug方式根据自己的硬件选择合适的选项,本次使用的是CMSIS DAP debug ,用的是野火指南者开发板选择 JTAG ( 5 pins )

11、配置系统时钟RCC(采用外部晶振8MHz,最高主频为72MHz)

12、配置GPIO端口(本次硬件为野火指南者)以LED灯为例,硬件电路图如下

13、可以对每一个GPIO参数进行修改(在图上对着对应引脚鼠标左右点击可以配置,具体操作自己多点几下就明白了)

14、因为配置了GPIO外设端口,在以下位置修改生成对应的H文件和C文件

15、点击保存会弹出是否生成代码,点击是生成响应的代码,在以下位置可以看到生成代码

16、在位置1处右击鼠标选择 Build Project 编译工程项目程序,可以看到编译后的代码情况

17、现在开始编写代码控制LED灯的状态(本次使用的是HAL库 <<HAL一般指硬件抽象层。硬件抽象层是位于操作系统 内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植>> )

18、GPIO用的是HAL库,大部分函数都是以HAL开头的,在main程序中编写以下代码,并编译:(编辑代码的时候可以用代码补全功能快捷键: ALT+/ )添加的代码一定要在/* USER CODE BEGIN */和/* USER CODE END */之间,不然保存或者编译会把代码删除掉。

19、编译通过,开始调试程序:通过软件调试来查看Debug_num值的变化,和GPIO寄存器值的变化

20、在位置1(参看上边第15步)右击鼠标->Debug As -> STM32 Cortex-M C/C++ Application

21、由于本次使用的是CMSIS DAP Debug(秉火D普通DAP仿真器)STM32CubeIDE默认不支持DAP的,但是通过ST-Link(OpenOCD间接支持),重点::::::《选择连接到远程GDB服务器端口》

22、配置完成之后,显示没有没有ST-link

22、出现错误显示没有ST-Link,是电脑没有安装相应的驱动

23、安装ST-LinkOCD驱动,下载链接:https://gnutoolchains.com/arm-eabi/openocd/  下载完成后解压打开文件夹

24、在空白处按住Shift键右击鼠标打开PowerShell窗口,以下命令按回车:./openocd -f interface/cmsis-dap.cfg -f target/stm32f1x.cfg  如果不成功多试几次,在执行前最好把单片机和电脑都连接好。

25、回到STM32CubeIDE中,重新编译程序,点击瓢虫的那个按钮,到以下界面

26、根据LED灯的接口查看对应的GPIO端口的ODR寄存器,可以看到数值的变化,同时观察开发板的LED灯状态。

27、单击全速运行按钮,查看开发板LED灯闪烁状态。

28、由于本次初始化的时候默认设置端口是低电平,也就是灯默认是亮的状态,所以在LED_BLUUE闪烁的时候另外另个灯常亮,如何修改GPIO端口默认输出的是高电平还是低电平,可以在以下位置修改。

STM32CubeIDE下载安装-GPIO基本配置操作-Debug调试(基于CMSIS DAP Debug)的更多相关文章

  1. MySQL下载安装、基本配置、问题处理

    一 mysql介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是 ...

  2. 二、Laravel手动下载安装及初始化配置(此处以Laravel5.2为例)

    1.下载安装Laravel5.2的几种方法 —— 一键安装包下载: —— http://www.golaravel.com/download/ —— github下载 —— https://githu ...

  3. JAVA、JDK等入门概念,下载安装JAVA并配置环境变量

    一.概念 Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言,具体介绍可查阅百度JAVA百科,这里不再赘述. Java分为三个体系,分别为: Java SE(J2SE,Java2 Platf ...

  4. window下tomcat的下载安装和环境配置

    一.下载安装tomcat 去官网:http://tomcat.apache.org/  下载自己所需要的版本,解压在没有中文的文件夹路径下. 直接打开压缩包下面,进入bin目录,双击startup.b ...

  5. burpsuite下载安装及基本配置

    jdk安装 根据电脑安装对应jdk版本 点此下载jdk 下载完成得到如下exe文件 配置Java环境变量 计算机右键-->属性-->高级系统设置-->环境变量 点击环境变量--> ...

  6. JDK8下载安装及环境配置

    Java基础知识 Java的三种版本 JavaSE :标准版,主要用于开发桌面程序,控制台开发等等 JavaME:嵌入式开发,主要用于开发手机,小家电等等,目前使用的比较少 JavaEE:企业级开发, ...

  7. my SQL下载安装,环境配置,以及密码忘记的解决,以及navicat for mysql下载,安装,测试连接

    一.下载 在百度上搜索"mysql-5.6.24-winx64下载" 二.安装 选择安装路径,我的路径“C:\Soft\mysql-5.6.24-winx64” 三.环境配置 计算 ...

  8. linux下载安装常用的配置,jdk,mysql,tomcat,redis

    1.特别强调,本教程适合于VMware Workstation创建的虚拟机linux配置. 2.ssh---linux连接的工具 https://pan.baidu.com/s/1MGIr5WOkkH ...

  9. 下载安装JDK,配置环境变量

    Hello,JDK; 在开始学习JAVA之前,第一件事情肯定是被告知:先下载JDK.就像我的一个朋友问我的一样"JDK是个什么鬼?我学的不是JAVA么,为什么要下载JDK?". J ...

随机推荐

  1. 【网络协议】TCP/IP:数据链路层

    物理层负责把计算机中的0.1数字信号转换为具体传输媒介的物理信号(电压的高低.电波的强弱.光的闪灭) 数据链路层协议定义了(通过通信介质互连的设备间的)数据传输规范 (常见的通信介质有同轴电缆.双绞线 ...

  2. matlab中find 查找非零元素的索引和值

    来源:https://ww2.mathworks.cn/help/matlab/ref/find.html?searchHighlight=find&s_tid=doc_srchtitle f ...

  3. Ubuntu通过iptables防止ssh暴力破解

    步骤 安装iptables-persistent用于保存iptables规则 配置iptables规则 实时更新iptables规则以拦截IP访问 安装iptables-persistent sudo ...

  4. Python 自动化测试全攻略:五种自动化测试模型实战详解

    随着移动互联网的发展,软件研发模型逐步完善,软件交付质量越来越受到软件公司的重视,软件测试技术特别是自动化测试技术开始在软件系统研发过程中发挥着越来越重要的作用. 与传统的手工测试技术相比,自动化测试 ...

  5. 1.入门篇十分钟了解Spring Cloud

    文章目录 Spring Cloud入门系列汇总 为什么需要学习Spring Cloud 什么是Spring Cloud 设计目标与优缺点 设计目标 优缺点 Spring Cloud发展前景 整体架构 ...

  6. 设计完美windbg断点

    说到现场调试,断点是最重要的.通常,在生产环境中解决一个非常复杂的问题需要在本地.非生产环境中调试我自己的一台测试机器.我通常会调试有问题的进程或代码,以便更好地了解它是如何工作的,以及在我进入时需要 ...

  7. V4L2摄像头应用编程(转)

    Video for Linuxtwo(Video4Linux2)简称V4L2,是V4L的改进版.V4L2是linux操作系统下用于采集图片.视频和音频数据的API接口,配合适当的视频采集设备和相应的驱 ...

  8. 多测师讲解jmeter _安装和配置环境(00)_高级讲师肖sir

    1.下载jmeter包,我们已经下载了有现成的: 2.安装jjdk默认安装或自定义安装 默认安装的路径: 如下图 3.第三步:安装完成后配置JDK的环境变量  位置:计算机→属性→高级系统设置→高级→ ...

  9. CentOS8平台php日志的定时切分

    一,编写bash脚本: [root@yjweb crontab]# vi split_php_logs.sh 代码: #!/bin/bash # 备份php/php-fpm的日志 # 昨天的日期 fi ...

  10. Java Map转成xml标签字符串

    一个简单的java实现,供参考: package com.trilogy.session.data; import java.lang.reflect.Field; import java.util. ...