<nav id="HauGa"></nav><keygen id="HauGa"></keygen>
<span id="HauGa"><sup id="HauGa"><strong id="HauGa"></strong></sup></span>

      1. <acronym id="HauGa"><dd id="HauGa"><table id="HauGa"></table></dd><figcaption id="HauGa"></figcaption><strong id="HauGa"></strong><q id="HauGa"><tbody id="HauGa"></tbody></q></acronym>

            <bdo id="HauGa"><strike id="HauGa"></strike></bdo>

            电子资讯网 > 控制/MCU > 正文

            STM32单片机固件库建立工程的方法及步骤

            2020年11月28日 14:43 ? 次阅读

            使用STM32的小伙伴知道,操作STM32可以用官方固件库直接操作芯片,也可以直接操作寄存器。

            无论使用哪种方式,最终都是在操作寄存器。

            今天,小编给大家介绍使用ST官方的固件库建立的工程。

            1,新建项目,在新建工程的目录下新建几个文件夹:

            A,CORE (用来存放启动文件)

            B,STM32F10x_FWLib (用来存放ST官方的库函数文件)

            C,USER (用来存放我们的mian.c,以及system_stm32f10x.c等)

            2,打开ST官方的固件库,在对应的文件夹添加一下文件:

            CORE:添加 STM32F1xx固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport 下的core_cm3.c,core_cm3.h

            添加 STM32F1xx固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm 下的所有文件

            STM32F10x_FWLib: 复制 STM32F1xx固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver 下的inc,src文件夹

            USER:添加 STM32F1xx固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x 目录下的stm32f10x.h,system_stm32f10x.c,system_stm32f10x.h

            添加 STM32F1xx固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template 目录下的main.c,stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h

            3,在工程目录右键,选择Manage Components

            STM32单片机固件库建立工程的方法及步骤

            4,建立三个Groups:USER,CORE,FWLIB.点击OK.

            5, 在新建立的三个Groups中分别添加:

            USER:main.c,stm32f10x_it.c,system_stm32f10x.c.

            CORE:core_cm3.c,startup_stm32f10x_md.s,

            FWLIB:STM32F10x_FWLib/src 下面的所有文件

            6,此时点击编译,会出现很多错误。我们点击魔术棒,点击c/c++选项。然后点击Include Paths右边的按钮

            弹出一个添加path的对话框,然后我们将图上面的3个目录添加进去。

            PS:keil只会在一级目录查找,所以如果你的目录下面还有子目录,记得path一定要定位到最后一

            级子目录。然后点击OK.

            7,此时点击编译,仍会出现很多错误,我们点击魔术棒,在c/c++下 define 处添加STM32F10X_MD,USE_STDPERIPH_DRIVER

            PS:STM32F10X_MD

            这个宏定义是根据使用的芯片的容量来填写的。

            大容量:STM32F10X_HD

            中容量:STM32F10X_MD

            小容量:STM32F10X_LD

            8,我们打开main.c文件,用以下代码覆盖文件:

            #include “stm32f10x.h”

            GPIO_InitTypeDef GPIO_InitStructure;

            int main(void)

            {

            SystemInit();

            RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);

            GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_2;

            GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

            GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;

            GPIO_Init(GPIOD, &GPIO_InitStructure);

            while (1)

            {

            GPIOD-》BSRR = 0x00000005;

            GPIOD-》BRR = 0x00000005;

            }

            }

            #ifdef USE_FULL_ASSERT

            void assert_failed(uint8_t* file, uint32_t line)

            {

            while (1)

            {

            }

            }

            #endif

            9,点击编译,大功告成

            下载发烧友APP

            打造属于您的人脉电子圈

            关注电子资讯微信

            有趣有料的资讯及技术干货

            关注发烧友课堂

            锁定最新课程活动及技术直播

            电子资讯观察

            一线报道 · 深度观察 · 最新资讯
            收藏 人收藏
            分享:

            评论

            相关推荐

            如何采用STM32单片机读取可变长度数据到内存

            STM32的串口有监测总线是否处于空闲的功能,我们可以使用这个功能,当数据传输完总线变成空闲状态时产...

            发表于 2020-11-28 14:33 ? 4次阅读
            如何采用STM32单片机读取可变长度数据到内存

            如何采用STM32单片机中断向量控制器NVIC来...

            先占优先级的概念等同于51单片机中的中断。假设有两中断先后触发,已经在执行的中断先占优先级如果没有后...

            发表于 2020-11-28 16:17 ? 27次阅读
            如何采用STM32单片机中断向量控制器NVIC来...

            stm32单片机按键控制的用法解析

            1 /* 2 ::按键控制 3 PA8接LED,PE2接按键 4 */ 5 ...

            发表于 2020-11-28 16:14 ? 42次阅读
            stm32单片机按键控制的用法解析

            STM32单片机串口DMA解析

            STM32有两个DMA控制器(DMA2只存在于大容量产品中),DMA1有7个通道,DMA2有5个通道...

            发表于 2020-11-28 15:40 ? 25次阅读
            STM32单片机串口DMA解析

            STM32单片机对TFTLCD的驱动设计

            TFTLCD使用80并口,80 并口有如下一些信号线: CS: TFTLCD 片选信号。 ...

            发表于 2020-11-28 14:42 ? 54次阅读
            STM32单片机对TFTLCD的驱动设计

            STM32单片机半主机模式的应用

            若出现如下编译错误:Error: L6915E: Library reports error: __...

            发表于 2020-11-28 15:43 ? 59次阅读
            STM32单片机半主机模式的应用

            STM32单片机PID算法的原则及应用方法

            一、总体原则 PID调试一般原则 a.在输出不振荡时,增大比例增益P。 b.在输出...

            发表于 2020-11-28 15:31 ? 70次阅读
            STM32单片机PID算法的原则及应用方法

            STM32单片机定时器的时钟源设置

            名为TIMx的有八个,其中TIM1和TIM8挂在APB2总线上,而TIM2-TIM7则挂在APB1总...

            发表于 2020-11-28 15:30 ? 35次阅读
            STM32单片机定时器的时钟源设置

            如何将STM32单片机中的函数调用到入口参数

            STM32—数组作为被调用函数的入口参数时,要两个条件, 1:数组首地址 2:数组长度 ...

            发表于 2020-11-28 15:05 ? 54次阅读
            如何将STM32单片机中的函数调用到入口参数

            STM32F105系列单片机对USB设备电路的设...

            当STM32F105配置为USB设备时, PA9/OTG_FS_VBUS是用来检测presense ...

            发表于 2020-11-28 15:10 ? 85次阅读
            STM32F105系列单片机对USB设备电路的设...

            STM32单片机SysTick系统滴答功能解析

            其实,SysTick能实现的功能,都可以由TIM来实现。SysTick无非就是定时中断的功能,它完全...

            发表于 2020-11-28 14:27 ? 56次阅读
            STM32单片机SysTick系统滴答功能解析

            如何采用STM32单片机来产生PWM输出

            STM32的定时器除了基本定时器TIM6和TIM7之外,其他的定时器都可以用来产生PWM输出,其中高...

            发表于 2020-11-28 16:27 ? 217次阅读
            如何采用STM32单片机来产生PWM输出

            如何升级STM32单片机的代码

            bootloader设置: static void check_boot_mode(void)...

            发表于 2020-11-28 15:53 ? 78次阅读
            如何升级STM32单片机的代码

            STM32单片机的PWM输入捕获模式设计

            (TIM_GetITStatus(TIM3,TIM_IT_CC1)==SET)//{ic1=TIM_...

            发表于 2020-11-28 14:50 ? 92次阅读
            STM32单片机的PWM输入捕获模式设计

            STM32单片机的FSMC对TFT的驱动

            开始只是谈到别人对FSMC的理解,注意这里只讨论FSMC控制TFT,也就是在FSMC的NOR\PSR...

            发表于 2020-11-28 14:22 ? 70次阅读
            STM32单片机的FSMC对TFT的驱动

            STM32单片机对NAND Flash的读写以及...

            NAND Flash的容量较大。整片Flash分为若干个块(Block),每个Block分为若干个页...

            发表于 2020-11-28 15:47 ? 466次阅读
            STM32单片机对NAND Flash的读写以及...

            STM32单片机对Systick心跳定时器的设计

            用途: 1.产生操作系统的时钟节拍 2.便于不同处理器之间程序移植 SysTick...

            发表于 2020-11-28 15:44 ? 80次阅读
            STM32单片机对Systick心跳定时器的设计

            如何采用STM32单片机实现IAP功能

            IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运...

            发表于 2020-11-28 15:33 ? 82次阅读
            如何采用STM32单片机实现IAP功能

            STM32单片机的独立看门狗和窗口看门狗的特点及...

            IWDG是一个独立看门狗,具有独立于系统的时钟,与片外看门狗更为相似,使用片内独立的阻容时钟发生电路...

            发表于 2020-11-28 15:28 ? 117次阅读
            STM32单片机的独立看门狗和窗口看门狗的特点及...

            如何在STM32单片机中加入RDP功能

            沿用之前CM3核的STM32F10X系列的加入RDP功能,之后在Segger的Unsecured C...

            发表于 2020-11-28 15:22 ? 87次阅读
            如何在STM32单片机中加入RDP功能

            如何利用STM32单片机串口发送字符串

            最近由于要调试一个SMS发送短信的模块,该模块需要发送一系列AT指令,且需要字符串发送,但是STM3...

            发表于 2020-11-28 16:01 ? 92次阅读
            如何利用STM32单片机串口发送字符串

            STM32单片机中的独立看门狗与窗口看门狗有哪些...

            1.关于看门狗的解释不再说明,窗口看门狗简而言之即只能看某个窗口期即某段时间内才能够喂狗。32的独立...

            发表于 2020-11-28 15:55 ? 76次阅读
            STM32单片机中的独立看门狗与窗口看门狗有哪些...

            如何采用STM32中的控制定时器Tim1实现计数...

            STM32中的高级控制定时器(Tim1)是由一个16位的自动装载计数器组成,它由一个可编程预分频器驱...

            发表于 2020-11-28 15:25 ? 121次阅读
            如何采用STM32中的控制定时器Tim1实现计数...

            如何使用STM32单片机实现DMA的同时发送和接...

            在SPI通信中,可以同时开启发送和接收DMA请求,自动数据的发送和接收,完成数据的交换 基本步...

            发表于 2020-11-28 15:26 ? 111次阅读
            如何使用STM32单片机实现DMA的同时发送和接...

            STM32单片机优先级的定义

            先占优先级也就是抢占优先级,概念等同于51单片机中的中断。假设有两中断先后触发,已经在执行的中断先占...

            发表于 2020-11-28 15:09 ? 87次阅读
            STM32单片机优先级的定义

            如何计算单片机的波特率

            在这个公式上,共有三个变量,其中两个我们是知道的,Fck和Tx/Rx波特率这两个是已知的,USART...

            发表于 2020-11-28 16:15 ? 122次阅读
            如何计算单片机的波特率

            STM32单片机的USART接收数据问题解决方案

            先使用USART中断函数接收数据,判断是否接收到每帧数据的起始标记字符。如果接收到就关闭USART中...

            发表于 2020-11-28 15:36 ? 87次阅读
            STM32单片机的USART接收数据问题解决方案

            如何采用STM32单片机产生PWM

            STM32产生PWM是非常的方便的,要需要简单的设置定时器,即刻产生! (1)使能定时器时钟:...

            发表于 2020-11-28 15:36 ? 134次阅读
            如何采用STM32单片机产生PWM

            如何构建STM32单片机keil的开发环境

            在工程文件下,新建Startup、Headers、User、Libraries、CMSIS、List...

            发表于 2020-11-28 14:52 ? 105次阅读
            如何构建STM32单片机keil的开发环境

            STM32单片机USB速度慢的原因解析

            全速的USB设备,最大速度12Mb/s,但是如果跑的是HID之类慢速设备的协议,那么速度就没有那么快...

            发表于 2020-11-28 15:06 ? 164次阅读
            STM32单片机USB速度慢的原因解析

            STM32单片机的EXIT中断解析

            工程概要说明:定义一个按键(可自己定义),每按键一次,响应中断一次,在中断函数中LED提示灯变化一次...

            发表于 2020-11-28 15:04 ? 118次阅读
            STM32单片机的EXIT中断解析

            STM32单片机GPIO寄存器的功能解析

            对于GPIO端口,每个端口有16个引脚,每个引脚的模式由寄存器的四个位控制,每四位又分为两位控制引脚...

            发表于 2020-11-28 14:54 ? 176次阅读
            STM32单片机GPIO寄存器的功能解析

            STM32单片机对ADS1246芯片的驱动

            ADS1246的SPI时序,这个是需要提一下的,一般来说,SPI协议在上升沿锁存数据,下降沿更新数据...

            发表于 2020-11-28 14:39 ? 111次阅读
            STM32单片机对ADS1246芯片的驱动

            STM32单片机的can总线的配置

            CAN_InitStructure.CAN_TTCM=DISABLE;//禁止时间触发通信模式 ...

            发表于 2020-11-28 14:31 ? 200次阅读
            STM32单片机的can总线的配置

            STM32单片机的SYSTick定时器的设置

            SysTick 是一个24 位的倒计数定时器,当计到0 时,将从RELOAD 寄存器中自动重装载定时...

            发表于 2020-11-28 14:27 ? 97次阅读
            STM32单片机的SYSTick定时器的设置

            STM32单片机FSMC的使用解析

            LCD有如下控制线: CS:Chip Select片选,低电平有效 RS:Registe...

            发表于 2020-11-28 14:17 ? 96次阅读
            STM32单片机FSMC的使用解析

            STM32单片机如何实现规则多通道转换

            DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR...

            发表于 2020-11-28 16:22 ? 135次阅读
            STM32单片机如何实现规则多通道转换

            STM32单片机的断言机制函数assert_pa...

            这个宏定义的作用就是检查参数PERIPH,判断参数PERIPH是否为GPIOX(A.。.G)基址中的...

            发表于 2020-11-28 16:10 ? 119次阅读
            STM32单片机的断言机制函数assert_pa...

            如何采用STM32单片机实现SPI的驱动

            void SPI_cfg(void){ SPI_InitTypeDef SPI_InitStr...

            发表于 2020-11-28 15:56 ? 128次阅读
            如何采用STM32单片机实现SPI的驱动

            STM32单片机对红外接收系统的设计

            红外接收头一般是接收、放大、解调一体头,一般红外信号经接收头解调后,数据“0”和“1”的区别通常体现...

            发表于 2020-11-28 15:32 ? 116次阅读
            STM32单片机对红外接收系统的设计

            STM32单片机的IAP向量问题解决方案

            // 1:复制用户代码中的中断向量表到SRAM首地址 // 2: 开启SRAM的重映射功能,将...

            发表于 2020-11-28 15:24 ? 110次阅读
            STM32单片机的IAP向量问题解决方案

            STM32单片机的ADS1115通过模拟I2C驱...

            收获:对于I2C通信协议的理解更加深刻,对ADS1115也能进行单通道的使用。I2C的开始、发送/读...

            发表于 2020-11-28 16:49 ? 127次阅读
            STM32单片机的ADS1115通过模拟I2C驱...

            STM32单片机SPI的使用原理解析

            GPIO_InitTypeDef GPIO_InitStructure; //配置SPI2管脚...

            发表于 2020-11-28 16:35 ? 104次阅读
            STM32单片机SPI的使用原理解析

            STM32单片机重映射USART设计

            外部中断(EXTI)中与AFIO有关的寄存器是AFIO-EXTICR1、2、3,它们是用来选择EXT...

            发表于 2020-11-28 16:27 ? 79次阅读
            STM32单片机重映射USART设计

            STM32单片机的ADC多通道采样

            这里使用的是3362电位器(10K),即用STM32来测量PB0和GND两端的电压,这样的电路设计比...

            发表于 2020-11-28 16:12 ? 132次阅读
            STM32单片机的ADC多通道采样

            STM32单片机的CPU运行性能的算法测试

            此算法是基于操作系统的,理论上不限于任何操作系统,只要有任务调度就可以。本文将以FreeRTOST为...

            发表于 2020-11-28 16:01 ? 316次阅读
            STM32单片机的CPU运行性能的算法测试

            如何将STM32单片机的JTAG口作为GPIO使...

            针对F4系列,STM32F4库函数中,已经取消了GPIO_*PinRemapConfig()函数,对...

            发表于 2020-11-28 16:43 ? 115次阅读
            如何将STM32单片机的JTAG口作为GPIO使...

            STM32单片机的usb上电和断电函数的定义

            usb_pwr.c 这个文件看文件名就知道跟功耗有关了,有很多的状态:上电、掉电、挂起、恢复。

            发表于 2020-11-28 16:35 ? 106次阅读
            STM32单片机的usb上电和断电函数的定义

            STM32单片机对CAN过滤器的设置方法

            在使用STM32的CAN控制器进行数据收发,当用到位屏蔽模式的时候,就要设置过滤器了,这个关系到是否...

            发表于 2020-11-28 16:25 ? 123次阅读
            STM32单片机对CAN过滤器的设置方法

            如何通过STM32驱动nRF24L01发送数据

            最近在一个项目中用到了nRF24L01这个无线2.4G收发芯片,项目中有主机和分机,默认都是使用数据...

            发表于 2020-11-28 15:53 ? 104次阅读
            如何通过STM32驱动nRF24L01发送数据

            STM32单片机ADC的模拟看门狗的测试

            ADC的模拟看门狗用于检查电压是否越界。他又上下两个边界,可分别在寄存器ADC_HTR和ADC_LT...

            发表于 2020-11-28 16:49 ? 149次阅读
            STM32单片机ADC的模拟看门狗的测试

            STM32单片机对正交编码器的驱动

            STM32正交编码器驱动,引入(突变)带进位的位置环和速度环

            发表于 2020-11-28 16:12 ? 70次阅读
            STM32单片机对正交编码器的驱动

            如何利用STM32单片机发送字符串

            一、STM32有自己的字符发送函数。 void PC_SendChar(uint8_t Dat...

            发表于 2020-11-28 15:26 ? 123次阅读
            如何利用STM32单片机发送字符串

            基于STM32单片机的USB时钟配置设计

            RCC_DeInit();//将外设RCC寄存器重设为缺省值 /*EnableHSE*/ ...

            发表于 2020-11-28 15:20 ? 108次阅读
            基于STM32单片机的USB时钟配置设计

            STM32单片机的低功耗模式待机唤醒设计

            将程序下载到开发板上后,LED灯会不断地亮灭,当按下KEY2键超过3s时,LED灯灭,标志着单片机进...

            发表于 2020-11-28 14:40 ? 117次阅读
            STM32单片机的低功耗模式待机唤醒设计

            STM32的ADC单次转换设计

            //先配置IO口: ADC_InitTypeDef adcInitStruct; ///...

            发表于 2020-11-28 15:40 ? 111次阅读
            STM32的ADC单次转换设计

            STM32的ADC编程方法总结

            这里的ADC转换也来使用DMA---这个也是STM32的ADC转换最常见的方式。 第一步是了解...

            发表于 2020-11-28 15:30 ? 201次阅读
            STM32的ADC编程方法总结

            STM32单片机在KIEL4配置开发中的设置

            开发环境:KIEL4,芯片STM32F103VCT6:釼C3.5 1.配置开发环境。 2....

            发表于 2020-11-28 15:01 ? 79次阅读
            STM32单片机在KIEL4配置开发中的设置

            STM32单片机TIM模块定时器向上溢出的输出比...

            首先有一点需要注意:FWLib固件库目前的最新版应该是V2.0.x,V1.0.x版本固件库中,TIM...

            发表于 2020-11-28 16:20 ? 143次阅读
            STM32单片机TIM模块定时器向上溢出的输出比...

            STM32单片机如何通过定时器的控制输出PWM

            STM32F103ZET6里共有8个定时器,其中高级定时器有TIM1-TIM5、TIM8,共6个。 ...

            发表于 2020-11-28 15:56 ? 168次阅读
            STM32单片机如何通过定时器的控制输出PWM

            在keil中仿真stm32单片机

            发表于 2020-11-28 06:54 ? 803次阅读
            在keil中仿真stm32单片机

            STM32串口SPI主从通信源程序

            发表于 2020-11-28 03:08 ? 603次阅读
            STM32串口SPI主从通信源程序

            在keil中仿真stm32单片机

            发表于 2020-11-28 01:20 ? 207次阅读
            在keil中仿真stm32单片机

            电流检测哪种方法好用?

            发表于 2020-11-28 20:37 ? 6346次阅读
            电流检测哪种方法好用?