stm32CubeMx工程使用GCC编译
软件:
STM32CubeMx 5.0
GCC编译器
STM32 ST Link Utility
下载器:ST Link V2
1 安装gcc编译器
能编译ARM Cortex M核的GCC编译器下载地址为:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
如上图所示,下载windows exe版本的gcc编译器(Linux下也可以下载linux版本的编译器),下载完成在windows环境下按照提示安装,如下图,
注意:安装完毕后需要将“Add path to environment variable”勾选上。
由于windows环境下没有make环境,所以我们还需要安装一个make工具,Make 工具用于 build 工程, 使用 Makefile 编译工程。 版本:gnu-mcu-eclipse-build-tools-2.9-20170629-1013-win64-setup.exe
下载地址:https://github.com/gnu-mcu-eclipse/windows-build-tools/releases/tag/v2.9-20170629-1013 直接双击安装,完成后将安装后的make命令目录添加到windows的path环境变量中,默认安装目录为: C:\Program Files\GNU MCU Eclipse\Build Tools\2.9-20170629-1013\bin\bin,在环境变量中添加安装目录即可。
2 创建STM32CubeMx工程
2.1 首先启动STM32CubeMX,新建工程
2.2 选择MCU型号
如上图所示:通过MCU筛选来找到自己开发板对应的芯片型号,双击后弹出工程配置界面,如下图:
2.3 Pin设置界面配置时钟
2.4 Pin设置界面配置GPIO
2.5 工程生成参数配置
2.6 生成工程
2.7 编译GCC下的裸机工程
点击生成代码后,生成的裸机工程效果如下,在makefile同级目录下打开windows的cmd命令窗口(目录下按shift+鼠标右键,点击在此处打开命令窗口),输入make命令,就可以编译gcc裸机工程了,编译完成后,可以看到生成了elf和bin文件,通过ST Link工具就可以下载bin文件到开发板运行了。(ST Link下载bin文件方法:https://blog.csdn.net/weixin_41931548/article/details/80814472)
stm32CubeMx工程使用GCC编译的更多相关文章
- GCC 编译详解
GNU CC(简称为Gcc)是GNU项目中符合ANSI C标准的编译系统,能够编译用C.C++和Object C等语言编写的程序.Gcc不仅功能强大,而且可以编译如C.C++.Object C.Jav ...
- GCC 编译详解[转]
转自http://www.cnblogs.com/azraelly/archive/2012/07/07/2580839.html GNU CC(简称为Gcc)是GNU项目中符合ANSI C标准的编译 ...
- JNI工程搭建及编译
JNI工程搭建及编译 建立Java工程 在具有C/C++比编译器的Eclipse中进行工程的创建,先创建一个简单的Java project,选项和一般同,这里仅仅需要将要调用的C/C++函数声明为na ...
- gcc编译问题
gcc avl.o hash.o list.o rb.o example.o -o 123.exe 多个.o输出 exe -c和-o都是gcc编译器的可选参数.-c表示只编译(compile)源文件但 ...
- GCC 编译详解 (转)
GNU CC(简称为Gcc)是GNU项目中符合ANSI C标准的编译系统,能够编译用C.C++和Object C等语言编写的程序.Gcc不仅功能强大,而且可以编译如C.C++.Object C.Jav ...
- GCC编译警告选项总结
一 前言 GCC有很多的编译选项,警告选项:指定头文件.库路径:优化选项.本文针整理一下GCC的警告选项,主要依据http://gcc.gnu.org/onlinedocs/gcc/Warning-O ...
- gcc 编译时 include 搜索路径
这是一个不复杂的问题:但是网上很多回答都不全面:偶找了一个比较全面的(测试过): 引用http://blog.csdn.net/fjb2080/archive/2010/01/23/5247494.a ...
- GCC 编译优化指南(转)
GCC 编译优化指南(转) http://www.jinbuguo.com/linux/optimize_guide.html 作者:金步国 版权声明 本文作者是一位开源理念的坚定支持者,所以本文虽然 ...
- GCC编译C代码
C程序的编译过程 常用文件的后缀名: gcc编译c代码 1.gcc 常用编译选项: 2.gcc编译方法 testc.c: #include <stdio.h> int main ...
随机推荐
- idea如何提取变量(拆分变量赋值和声明)
需求描述: 我们时常遇到某个在某个局部作用域声明的变量,想要用在另一个地方,此时就需要在作用域外部声明变量,在作用域中给变量赋值. 在eclipse中这个功能和提取变量在一起,我们可以方便的拆分变量的 ...
- How2j学习java-3下载 ECLIPSE
1.下载并解压Eclipse 下载并解压到e:/eclipse,目录情况如图所示.注: 这个Eclipse是64位的,应该使用本站提供的JDK(64)位,下载地址:JDK. 如果JDK位数和 Ecli ...
- chkconfig 原理 (企业应用)
企业应用:如何让某个服务开机自启动 chkconfig --level 345 serviceName on chkconfig --level 345 serviceName off chkconf ...
- 树莓派Ubuntu Mate 16.04 修改为国内更新源
收藏:https://blog.csdn.net/wang_shuai_ww/article/details/80386708 更换步骤以root身份打开 /etc/apt/sources.list ...
- 【PAT甲级】1049 Counting Ones (30 分)(类似数位DP思想的模拟)
题意: 输入一个正整数N(N<=2^30),输出从1到N共有多少个数字包括1. AAAAAccepted code: #define HAVE_STRUCT_TIMESPEC #include& ...
- c#活动目录操作
c#活动目录操作 https://www.cnblogs.com/ahuo/archive/2007/03/16/676853.html 添加引用 System.DirectoryServices导 ...
- layui弹窗全屏显示
var index =layer.open({ id: 'id', type: 2, area: ['100%', '100%'], fix: false, maxmin: true, shadeCl ...
- 重学Linux - 文件处理命令
文件处理命令 @auther 张念磊 @date 2020/1/29 touch 命令所在路径:/bin/touch 执行权限:所有用户 语法:touch [filename] 功能描述:创建空文件 ...
- oracle查询连续n天登录的用户
-- 查询连续3天登录的用户 1 先创建一个表,如下: create table USER_DATA ( USER_ID NUMBER, LOGIN_TIME DATE ); 2 插入用户登录数据: ...
- 笔记-爬虫部署及运行工具-scrapydweb
笔记-爬虫部署及运行工具-scrapydweb 1. 简介 scrapyd是爬虫部署工具,但它的ui比较简单,使用不是很方便. scrapydweb以scrapyd为基础,增加了ui界面和监 ...