历史上的今天

今天是:2024年10月06日(星期日)

2018年10月06日 | stm32的库文件的用法解释

发布者:不羁少年 来源: eefocus关键字:stm32  库文件  用法解释 手机看文章 扫描二维码
随时随地手机看文章

1、我们需要加那些文件进来才能跑动一个程序:

首先我们要对库文件有一定的了解,其中STM32F10xR.LIB是封装好了的.C文件,它包括stm32f10x_conf.c  stm32f10x_adc.c    stm32f10x_gpio.c等等,要用这些C函数,直接包含头文件stm32f10x_conf.h  stm32f10x_adc.h    stm32f10x_gpio.h就行了,但是头文件也能用stm32f10x_lib.h直接包含就行了,所以我们看到的keil中只用添加GROUP中的SOURCE中的四个文件就行了


 

stm32的库文件的用法解释

其中的stm32f10x_vector.s是启动文件,有的版本是startup_stm32f10x_hd.s,这个事根据版本和芯片的型号来定得名称,总之他的功能就是启动代码。其中stm32f10x_lib.h是在main.c中包含的,stm32f10x_it.c是中断的相关程序,暂时没用到。以上图片是没有编译的时候的,如果编译之后会见到.C文件下面会有很多的.H头文件

stm32的库文件的用法解释

也可以在C文件上点击右键,隐藏这些.H头文件。

下面我们来看看,火牛开发板的程序都添加了那些东西进来用于跑通一个流水定的程序:

stm32的库文件的用法解释

从这里看,有库文件LIB其中他只含有要用到的5个.C文件。在添加文件的过程中不用添加头文件,因为你添加了相应的C文件之后,头文件会在编译的之后自动包含进来,只要你将头文件放在正确的位置,现在说说如何添加正确的位置能让KEIL找到头文件,先看下图

stm32的库文件的用法解释

在火牛的这个跑马灯的程序中要改变头文件的位置可以通过改变inc文件夹的位置,到时候找到这个位置就行了,按照上图的位置找到,并且重新编译一遍就能指向新的位置了。

如果想另外添加头文件新的位置时的话就用下图

stm32的库文件的用法解释

归纳两点:a:首先就是添加启动文件,用户自己编写的.C文件,函数库中的C文件

                 b:然后就直接指定.h文件的位置,让编译器在编译的时候能找到他们就行了。


2、下面主要说说每个C文件的含义和每个头文件的含义:

a、首先是stm32f10x_map.h  ,这个文件其实在新版本中改变了名字,现在的名字是stm32f10x.h,它stm32f10x.h则定义了启动设置,以及所有寄存器宏定义

b、core_cm3.h这个加进来可以先不管,初学者用不到他,他是内核的相关知识

c、stm32f10x_conf.h用于包含

#include "stm32f10x_adc.h" 

#include "stm32f10x_bkp.h" 

#include "stm32f10x_can.h" 

#include "stm32f10x_crc.h" 

#include "stm32f10x_dac.h" 

#include "stm32f10x_dbgmcu.h" 

#include "stm32f10x_dma.h" 

#include "stm32f10x_exti.h"

#include "stm32f10x_flash.h" 

#include "stm32f10x_gpio.h"

#include "stm32f10x_i2c.h" 

#include "stm32f10x_iwdg.h" 

#include "stm32f10x_pwr.h" 

#include "stm32f10x_rcc.h"

#include "stm32f10x_rtc.h" 

#include "stm32f10x_spi.h"

#include "stm32f10x_tim.h" 

#include "stm32f10x_usart.h"

#include "stm32f10x_wwdg.h" 

#include "misc.h"等等这些文件,以免在主函数中写太多包含的头文件不够简洁,然而在主函数main当中再用 stm32f10x.h来包含stm32f10x_conf.h,这样在主函数中直接include就相当于包含了以上的那么多的头文件,这个就相当于是传递的功能了。

d、stdint.h 定义了 int16_t 、 uint32_t 、 int64_t 等整型,在需要确定大小的整型时可以使用它们代替 short 、 unsigned long long 等

e、system_stm32f10x.h,微控制器专用系统文件

不得不承认火牛开发板配套的程序所加载的库文件确实是太乱了,很多库文件要自己去看其中的内容才能知道他的用法和意义


关键字:stm32  库文件  用法解释 引用地址:stm32的库文件的用法解释

上一篇:stm32固件库文件描述
下一篇:STM32单片机按键消抖和FPGA按键消抖大全

推荐阅读

ADC多通道采集是在ADC单通道DMA传输的基础上写的,代码如下:volatile u16 adcconverdata[2]={0,0};static void ADC_GPIO_Config(void){ GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1|GPIO_Pin_2;//添加PA2的GPIO初始化代码GPIO_InitStructure.GPIO_Mode=G...
翻译自——spectrum,Jeremy Hsu 中文和英文密码的差异对现在流行的Web服务有很大的安全影响。 无论语言和文化有何不同,中、英文互联网用户都能在通过使用“123456”等密码变体时找到共同点。但最近研究发现,从比较两种语言密码模式来看,中文密码具有显著而独特的特点,对中国以外的互联网安全具有重大影响。 令人惊讶的是,由于使用中文用户的密码只...
  工业机器人的使用越来越广泛,即使是普通群众,对工业机器人也愈来愈了解。就普通人而言,对工业机器人的认识大多停留在感性认识层面,对工业机器人的相关技术却未必了解。为此,本文中小编将对工业机器人的7大技术予以介绍。如果你对工业机器人具有兴趣,不妨继续往下阅读哦。   技术参数是不同工业机器人之间差距的直接表现形式,不同的机器人...
来源:学习军团·解放军新闻传播中心融媒体作者:解放军报记者 韩 成 通讯员 于 晨“机器人技术正在深刻改变着人类的生产和生活方式,中国空间站机械臂也助力我们完成了两次出舱任务。”9月中旬,在北京亦庄开幕的2021世界机器人大会上,神舟十二号飞行乘组3位航天员聂海胜、刘伯明、汤洪波从中国空间站传来“太空点赞”。被表扬的主角,是我国自主研...

史海拾趣

问答坊 | AI 解惑

计算机无线网络技术在港口集装箱作业环境中的应用

摘要: 对计算机无线网络通讯技术在港口野外工作环境的应用进行了详细的讨论 , 并给出具体的解决技术方案. 使得港口经营业务管理信息系统 (MIS) 在语音、视频和数据三合一的无线网络通讯平台上 , 将移动计算机终端拓展到港口码头前沿的作业现场. 本 ...…

查看全部问答∨

请教一个元件问题

差分输入用的VISHAY 的孪生JFET管2N5565 的管身上有写HOT是什么意思?[]…

查看全部问答∨

一种新颖的电子式PS压力传感器

本帖最后由 jameswangsynnex 于 2015-3-3 20:00 编辑 一看到传感器字样,想是以后用的到,先收藏,呵呵 概述 ---PS压力传感器是一种利用半导体膜片结构制成的电子式压力传感器,它可将空气压力这一物理量变换成电信号, 并能够高精度、线性地检测 ...…

查看全部问答∨

如何检测485总线是否能满足应用

在工业控制中,485是应用比较多的一种总线,但在实际施工中,有些环境对485总线的干扰比较大,用什么设备或如何检测485总线是否能满足应用呢? 能否制造出一种类似 fluke 的网络网线产品设备来检测呢? 原理是什么? 大家都帮着想想。 [ 本帖最 ...…

查看全部问答∨

谁来指导下我的毕设该怎么写啊?

我很努力的做毕设,倒了最后看见我的毕设题目却盲目了... 题目是《基于STR750的硬件设计》还有一个人是软件设计 题目要求是:要求学生学习嵌入式开发硬件平台知识、软件知识。对已有的技术资料进行消化整理,以STR750为核心硬件完成一款有创意的 ...…

查看全部问答∨

高分求解linux 输入法的问题

高分求解linux 输入法的问题 http://community.eeworld.net/Expert/TopicView3.asp?id=5341375…

查看全部问答∨

[急求]请教一个好像是485的问题。

我的工程应用: (电脑)--(板-无线模块)           (无线模块)---(板子1)--(板子2)..... 上位机接了一个232转485的板子,上面再插了个深圳买的无线模块。然后离电脑300米的仓库顶上也接了一 ...…

查看全部问答∨

一个关于延时的程序问题?(C,左值)没看懂,请高手指教。

这段程序,俺不知道为什么会有延时功能,按俺的想法,是没办法实现了。菜鸟一只,先谢谢各位了 程序如下://-------------------------------------------------- // Description  : Hold program for 0 ~ 65535 ms // Input Value ...…

查看全部问答∨

基于电容数字转换器 AD7746的物位测量系统

  [ 本帖最后由 蓝雨夜 于 2011-6-28 15:31 编辑 ]…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved