STM32_1 搭建工程框架
搭建系统框架
-- 创建系统文件夹
-- 拷贝stm32库文件
-- 将文件添加至工程
-- 配置工程环境
1. 创建工程文件夹
找一个工程目录,我就在 stm32/Code 下创建一个模板工程Template,方便以后拷贝。
/Code/template/
-- Libraries/ //库文件
-- startup/ //启动文件
-- ins/ //stm32 标准外设库头文件
-- src/ //stm32 标准外设库源文件
-- Project/ //创建工程放这里
-- Listing/ //存放编译中间文件
-- Output/ //存放输出文件HEX
-- User/ //用户源码
-- Doc/ //帮助文档
2. 拷贝stm32库文件
先从官网下载标准外设库
https://www.st.com/en/embedded-software/stm32-standard-peripheral-libraries.html
选择对应的类型。

是3.5版本的标准外设库,下载。
库文件说明:
1.启动文件 startup_stm32f10x_ms.s
这个是系统的启动文件,汇编语言编写,主要负责初始化堆栈,初始化中断向量表,初始化系统时钟调用main函数等
2.system_stm32f10x.c / system_stm32f10x.h
主要初始化系统时钟
3.stm32f10x.h
stm32 标准外设库 头文件
4.core_cm3.c / core_cm3.h
stm32 内核函数库

5.inc / src
标准外设库源文件 头文件

6.stm32f10x_it.c / stm32f10x_it.h
stm32专门为中断向量写的2个文件
7.stm32f10x_conf.h
管理外设头文件

将库文件添加至工程
1.创建工程

配置工程

加入C语言微库,可以调用printf等c库函数

添加头文件,用于编译识别,每增加一个头文件就要来声明一下路径

定义芯片内存和驱动库
--打开stm32f10x.h
开头处:

结尾处:


配置完成,点击编译
STM32_1 搭建工程框架的更多相关文章
- 准备.Net转前端开发-WPF界面框架那些事,搭建基础框架
题外话 最近都没怎么写博客,主要是最近在看WPF方面的书<wpf-4-unleashed.pdf>,挑了比较重要的几个章节学习了下WPF基础技术.另外,也把这本书推荐给目前正在从事WPF开 ...
- MyEclipse8.5快速搭建SSH框架
来源于:http://jingyan.baidu.com/article/a378c960a78125b3282830cc.html MyEclipse8.5快速搭建SSH框架 使用版本: Strut ...
- [JavaEE] SSH框架笔记_eclipse搭建SSH框架详解
SSH框架是最常用的框架之一,在搭建SSH框架的时候总有人遇到这样,那样的问题.下面我介绍一下SSH框架搭建的全过程. 第一步:准备工作. 下载好eclipse,Struts2,Spring,Hibe ...
- 手工搭建ABP框架(1) - Web项目
为了防止不提供原网址的转载,特在这里加上原文链接: http://www.cnblogs.com/skabyy/p/7295533.html ABP是 ASP.NET Boilerplate Proj ...
- IDEA搭建SSMM框架(详细过程)
IDEA搭建SSMM框架(详细过程) 相关环境 Intellij IDEA Ultimate Tomcat JDK MySql 5.6(win32/win64) Maven (可使用Intellij ...
- 详解intellij idea搭建SSM框架(spring+maven+mybatis+mysql+junit)(上)
SSM(Spring+SpringMVC+MyBatis)框架集由Spring.SpringMVC.MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架. 其中spring是一个轻 ...
- 如何搭建hibernate框架
我写这篇博客,主要是想让大家能够快速上手hibernate,本人建议学习框架,应该一个框架一个框架学习,别一上手就三大框架整合,学习之类的.这里只是单独搭建hibernate框架,让大家 能够更好的上 ...
- 使用Maven搭建SSM框架(Eclipse)
今天学习一下使用Maven搭建SSM框架,以前都是用别人配置好的框架写代码,今天试试自己配置一下SSM框架. 这里我的参数是Windows7 64位,tomcat9,eclipse-jee-neon- ...
- 用用OGRE1.74搭建游戏框架(转载)
用OGRE1.74搭建游戏框架(一) 新版的OGRE出来了,不知什么原因抛弃了CEGUI.国内的教程好像也更新比较少了,在官网上还是发现不少资料的,现在参考官网上的一些资料来搭建一个游戏的框架. 参考 ...
随机推荐
- nodepad++通过正则表达式,删除带有特殊字符的某一行
我是VS项目不小心生成了x64平台的sln文件,想把sln文件中带有x64的给删除,一共搜索到500多行,怎么办呢,一个一个删除太费劲儿了. 通过nodepad++ 的正则表达式替换: 我是想删除带X ...
- 远程计算机或设备将不接受连接,IE无法上网
遇到一个奇葩问题,IE浏览器突然不能上网了,但是其他浏览器可以,QQ什么的也都正常,只有IE是出现:远程计算机或设备将不接受连接 这个问题,网上找了很多答案都没用,什么设置WINS,允许远程访问,取消 ...
- MARKS:路由器桥接
仅供参考…… 测试使用环境:Tplink & Tenda渣渣路由器.其他环境或不同. 设置注意事项:副路由器网段设置和主路由一致.主路由不需要开启WDS.副路由器开启WDS(连接ok,状态即显 ...
- Quarzt定时调度任务
简介 Quarzt是一个项目中定时执行任务的开源项目,Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独 ...
- Windows下设置Ubuntu引导项
最近在进行一些实验环境的配置,最终通过双系统实现了多系统的管理,而不仅限于虚拟机的方式.以此方式成功安装了Windows8.1 Pro和Windows 10,原文在此. 在此基础上进一步安装了 Ubu ...
- Angular4.0--创建类实例
src/app/hero.ts文件: export class Hero { constructor( public id: number, public name: string) { } } sr ...
- bzoj3106 [cqoi2013]棋盘游戏
Description 一个n*n(n>=2)棋盘上有黑白棋子各一枚.游戏者A和B轮流移动棋子,A先走. l A的移动规则:只能移动白棋子.可以往上下左右四个方向之一移动一格. ...
- Spark Streamming 基本输入流(二) :Socket
Spark Streamming 可以通过socket 进行数据监听. socket的输入方可以通过nc 或者自己开发nc功能的程序. 1.系统自带的nc su root a yum install ...
- PHP------面向对象的特性
面向对象的特性 一.面向对象有三大特性: 封装.继承.多态.(非常重要,第一要记住!!!!!!!!!!) 二.封装 封装就是用来做类的,把一个类封装起来.做类不能随便的做.我们做类不能随便去写一个类, ...
- JavaScript小游戏--2048(程序流程图)