当前位置:首页 > 单片机 > 单片机
[导读]环境:STM32F10x 3.5固件库。下载地址http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32f10x_stdperiph_lib.zipMDK4.23 编译器一、第一步新建工程 取名 NewProject图1二、选择芯片型号

环境:

STM32F10x 3.5固件库。下载地址

http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32f10x_stdperiph_lib.zip

MDK4.23 编译器

一、第一步新建工程 取名 NewProject

图1

二、选择芯片型号

图2

三、点否,不加载启动文件(后面我们自己手动添加)

图3

四、在工程下新建STM32LIB,OBJ,LIST,APP四个文件夹(文件名可自定)。

在STM32LIB文件夹下新建M3文件夹。

复制STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3CoreSupport下

core_cm3.c core_cm3.h两个文件到M3文件夹中。

复制:

STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3DeviceSupportSTSTM32F10x下

stm32f10x.h system_stm32f10x.c system_stm32f10x.h 两个文件到M3文件夹中。

复制:

STM32F10x_StdPeriph_Lib_V3.5.0ProjectSTM32F10x_StdPeriph_Template下

stm32f10x_conf.h 一个文件到M3文件夹中。

复制:

STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3DeviceSupportSTSTM32F10xstartuparm下 startup_stm32f10x_hd.s一个文件到M3文件夹中。

我用的芯片256k的FLASH。所以选择startup_stm32f10x_hd.s。

说明:

cl:互联型产品,stm32f105/107系列

vl:超值型产品,stm32f100系列

xl:超高密度产品,stm32f101/103系列 超大容量 512-1024K

ld:低密度产品,FLASH小于64K

md:中等密度产品,FLASH=64 or 128

hd:高密度产品,FLASH大于128-512

复制:

STM32F10x_StdPeriph_Lib_V3.5.0LibrariesSTM32F10x_StdPeriph_Driver下的inc和src两个文件夹到STM32LIB文件内

到这里需要复制的文件以经复制完了。下面来配置工程:

参图

图4

图5

图6

图7

先配置这些, 还有一项要等到 添加完成文件再配置。

现在向MDK中加载文件如图:

图8

如下图加载

图9

图10

点OK如下图

图11

Main.c文件内容:

1intmain(void)2{34}

继续配置先前没有配置完了部分。

如图12

这里做一定的说明:

为什么在define项中添加STM32F10X_HD,USE_STDPERIPH_DRIVER这两项?

define项是MDK的预宏定义栏。

注意:STM32F10X_HD,USE_STDPERIPH_DRIVER这两项中间是逗号隔开。

在stm32f10x.h中有这以下代码:

#ifdefUSE_STDPERIPH_DRIVER#include"stm32f10x_conf.h"#endif


由此可只 添加USE_STDPERIPH_DRIVER宏定义是为了加载stm32f10x_conf.h文件。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

一、在STM32中,有5个时钟源,为HSI,HSE,LSI,LSE,PLL.①HSI是高速内部时钟,RC振荡器,频率为8MHz;②HSE--高速外部时钟,可接石英或者陶瓷谐振器,或者外部时钟源,频率范围4MHz--15M...

关键字: STM32 stm32f10x 时钟配置

;******************** (C) COPYRIGHT 2010 STMicroelectronics ********************;* File Name: startup_stm32f10...

关键字: stm32f10x 启动代码

MYSQL简单调用MySQL MYSQL_ROW 返回的字段若是 float 如何在 C++程序中 把 字段值赋给 一个 float变量文中此句“MYSQL_ROW   指针是一简单的字符串数组。所有

关键字: mysql 新建工程

USB速度慢的原因有以下几种可能:1、协议问题 全速的USB设备,最大速度12Mb/s,但是如果跑的是HID之类慢速设备的协议,那么速度就没有那么快了,理论上只有1.5Mb/s。2、配置问题 USB配置描述符中有关于接收...

关键字: stm32f10x usb速度慢

Ⅰ、写在前面学习本文之前可以查看我前面的文章:STM32CubeMX介绍、下载与安装STM32CubeMX使用方法及功能介绍本文接着上一篇文章结合基本IO配置实例,讲述关于STM32CubeMX新建工程的过程。最终通过S...

关键字: cubemx STM32 新建工程 基本io

Ⅰ、概述RTC(Real Time Clock)是实时时钟的意思,它其实和TIM有点类似,也是利用计数的原理,选择RTC时钟源,再进行分频,到达计数的目的。该文主要讲述关于RTC的秒中断功能,这个功能类似SysTick系...

关键字: rtc stm32f10x 秒中断

先从最简单的问题开始,用STM32外部中断的方法实现PB.0按键控制PA.0LED灯:先总的说下实现中断的步骤:1,配置NVIC寄存器(函数),设置中断为第几组,占先优先级和次优先级; 函数方法: void NVIC_C...

关键字: gpio stm32f10x 外部中断

        stm32是自带硬件I2C,相比于软件模拟I2c,硬件I2c效率更高。但是据说不稳定,这个我倒暂时还没有体会到。        在最开始使用硬件I2c的时候,程序总是卡死,要不从一开始

关键字: i2c STM32 stm32f10x

SysTick定时器被集成在NVIC中。因此,只要是Cortex-M3内核的单片机,就都有它。这个学习笔记就用SysTick定时器来实现走马灯的功能。SysTick定时器非常简答,只有四个寄存器。这四个寄存器的含义在《C...

关键字: stm32f10x systick 定时器

  Cube固件库是ST现在主推的固件库,并且在它的官网已经找不到原来的标准库可供下载。Cube固件库的构架图如下这种新式构架可以有效的加快软件工程师的工程进度。  新建一个工程项目主要包括以下的步骤:  1、使

关键字: STM32 新建工程 编程 cube固件库
关闭