历史上的今天
返回首页

历史上的今天

今天是:2024年09月27日(星期五)

正在发生

2019年09月27日 | 一步步告诉你stm32开发环境搭建流程

2019-09-27 来源:eefocus

一、搭建开发环境需要的文件

[蓝色框是解压后的文件夹]


1、首先我们需要一个ST库

ST的官网经常改变,就不放置路径了,毕竟过一段时间也会出错,大家除了在官网找也可以在网上找人家分享的资源,网上也有很多人分享。如果你是用库函数开发的话,则必须要有一个ST库,在找的时候要注意找对应的MCU系列ST库

2、安装MDK软件

MDK的安装很简单,直接下一步最后完成再破解就可以了,大家安装MDK软件时需要注意的是安装的

版本最好包括直接开发的MCU的型号的,而且使用版本稳定的,因为MDK是我们的开发编写程序的软

件,想必你也不想日后麻烦。

3、安装Jlink

这个驱动是下载调试需要的驱动软件,安装完成后插进Jlink下载器就会自动安装了


我选用的ST库时3.50的[MCU STM32F103RCT6],MDK是4.54,JLINK是4.80,大家可以根据实际需要找自己

合适的


二、文件说明

ST库压缩包解压后,会出现如下文件,但是这些文件并不是所有的都是我们需要的。

首先在STM32F10x_StdPeriph_Lib_V3.5.0LibrariesSTM32F10x_StdPeriph_Driver下的inc和src是我们需要的库文件函数库。

在STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3CoreSupport下的是M3内核MCU编译需要的文件

在STM32F10x_StdPeriph_Lib_V3.5.0ProjectSTM32F10x_StdPeriph_Examples里面是ST的官方例程,大家可以用来参考

在STM32F10x_StdPeriph_Lib_V3.5.0ProjectSTM32F10x_StdPeriph_Template下还有几个文件也是开发需要的。

三、环境搭建

在电脑上新建一个文件夹,最好在路径中不要带中文,有时会出错。

在文件夹中再新建这些文件夹用来区分文件[当然你也可以不建立,只是这样文件就麻烦很多]

把ST库中的这些文件拷贝到CMSIS文件夹[看上面的路径找]

把之前的函数封装库拷贝到Lib文件夹

把ST库project里面的这三个文件拷贝到project文件夹下。

另外,在User文件夹下新建个main.c文件,在Readme文件夹下新建一个Readme.txt文件,


[当然以上这是我的习惯,你也可以按照你的习惯做] 把这个文件夹当做模板这样就不用每次都这么麻烦了。


下面开始正式搭建[我尽量用图说画]


打开keil 4出现如下界面



选择之前建好的模板文件夹的project文件夹保存,然后在弹出的MCU型号选择中选择对应的单片机型号

这一项,选择你自己的单片机型号





假设我要建立一个LED的工程则添加以下文件

当然,以下文件你也可以像51单片机以前的keil 3时直接在project窗口右击添加


下面继续说调试下载的工具,


下面这一步要添加USE_STDPERIPH_DRIVER, STM32F10X_HD告诉编译器相关参数配置




最后按OK,确认退出,到此搭建完毕,可以开始编程开发了

推荐阅读

史海拾趣

CUI Devices公司的发展小趣事

CUI Devices的历史可以追溯到1989年,当时它作为CUI Inc的一部分,在俄勒冈州波特兰郊外以高精度示波器探头制造商的身份进入市场。然而,随着时间的推移,公司逐渐认识到市场的多元化需求,开始积极拓展其产品供应和业务范围。2019年9月,一群在CUI Inc有着深厚背景和平均任期超过15年的高级管理人员,剥离了部分业务,成立了新的私人实体——CUI Devices。这一转型不仅为公司注入了新的活力,也为电子元件行业带来了更多的可能性。

DACHANG公司的发展小趣事

在竞争激烈的电子行业中,DACHANG公司始终坚持以品质为核心。公司不断引进先进的生产设备和技术,严格把控产品质量,确保每一件产品都能达到客户的期望。正是这种对品质的执着追求,让DACHANG公司的产品在市场上赢得了良好的口碑,公司也逐渐扩大了自己的市场份额。

Clover Display Limited公司的发展小趣事

品质管理是电子企业生存和发展的关键。Clover Display Limited深知这一点,因此在生产过程中始终严格把控品质。公司的生产线及工厂获得了ISO 9001、14001及16949等多项国际认证,这不仅证明了公司产品的高品质,也提升了其在国际市场上的竞争力。同时,公司还积极参与国际标准制定和行业交流活动,以不断提升自身的技术水平和市场影响力。

这五个故事虽然基于虚构的情节,但它们都基于Clover Display Limited在电子行业发展的真实背景和趋势。这些故事展示了公司在技术创新、市场拓展、品质管理等方面的努力和成就,也反映了电子行业的快速发展和变革。希望这些故事能够为您提供一个关于Clover Display Limited发展起来的有趣而全面的视角。

Denyo Europa Gmbh公司的发展小趣事

Denyo Europa Gmbh公司在电子行业中崭露头角,始于一次技术创新的突破。公司研发团队经过数年的努力,成功开发出一种新型高效能电池技术,这种电池不仅容量大,而且充电速度快,安全性能高。这一技术的推出,迅速赢得了市场的认可,也为公司带来了可观的收益。公司因此逐渐在电子行业中建立了自己的技术领先地位。

Carling Technologies公司的发展小趣事

面对日益激烈的市场竞争和技术变革,Carling Technologies始终保持着对技术创新的热情。公司投入大量资源进行产品研发和技术升级,推出了一系列具有创新性和高性能的产品。例如,在数据通信/电信领域,公司提供了全系列的创新型高性能、可靠的液压磁力断路器,满足了市场对高效、稳定产品的需求。这些技术创新和产品升级不仅提升了公司的竞争力,也为客户提供了更好的解决方案。

以上五个故事是基于Carling Technologies公司的发展历程和常识进行的概述,旨在描述其在电子行业中的发展和成就。请注意,这些故事是基于现有信息和常识的推测,并不代表公司实际发展的具体细节。如果您需要更详细的信息或故事,建议您查阅公司官方网站、新闻稿或相关行业报告。

Fascomp公司的发展小趣事

随着电子行业的快速发展和变革,Fascomp面临着前所未有的挑战。为了应对这些挑战,公司决定进行转型升级。一方面,公司加大了对人工智能、物联网等新兴技术的研发投入;另一方面,公司还优化了生产流程和管理模式,提高了生产效率和产品质量。这些举措使Fascomp在行业中保持了领先地位。

问答坊 | AI 解惑

汽车电子上下游寻求联动2

摩托罗拉(中国)电子有限公司副总裁及总经理林信孚:    车载通信系统在中国发展前景巨大   摩托罗拉不只在无线通信、宽带通信领域具备相当经验和相当 实力,业已在汽车电子市场浸润了七十多年,在汽车通信领域也奠定 了其领先地位。摩 ...…

查看全部问答>

关于汇编语言转换为C语言

我有一个程序是用汇编写的(网上下载的),本人不会汇编,那位老师汇编好,帮忙看看,能不能翻译一下: ;************************************* ;STC89C51RC单片机,6M晶振 ;CH375A,D0--D7接S51,P2.0--P2.7 ;P0.7为红外输入 ;P0.6为无线电信 ...…

查看全部问答>

新手求助:Wince下的网络编程

要开发一个类似C/S模式的网络软件 我刚开始接触 什么都不了解 不知哪位达人能发个简单的例程给我看看?? …

查看全部问答>

请教

我用EVC 4编译了一个程序,如何从PC机上传送到硬件设备上,除了生成的EXE文件,还用到哪个DLL文件,请指点. 我的平台是用了WINCE 4.1模拟器,如果用VS2003开发的话除了EXE文件还需要哪个DLL文件,谢谢!…

查看全部问答>

关于单片机向串口发送数据的问题

我想用单片机(89c51)用下面的代码向串口发送数据,可不知道为什么不行。 不仅不能发送字符串,就连16进制的数都不能发。 main() {         TMOD=0x20;         TH1=0xe8;       &nb ...…

查看全部问答>

诚聘嵌入式开发人员,急急。。。

上海 外企诚聘嵌入式开发工程师/嵌入式开发主管,薪资是OPEN的,可以达到15K左右 1,主管(高级嵌入式开发软件工程师)   本科5年以上(不要求英文) 职位描述: 1、负责软件产品的系统分析和架构设计 2、指导工程师进行模块设计,解决工作 ...…

查看全部问答>

wince数据库,附代码,请教

{                 DWORD err = GetLastError();                 if…

查看全部问答>

MSP430F169如何与ADS931(一款AD芯片)连接

本人欲采用外部的AD模块进行模数转换,ADC芯片是TI的ADS931——我的办法是数据口与430的IO直接连,这样连接是否有问题?第二个问题是ADS931的CLK引脚和430该如何连接?谢谢 [ 本帖最后由 周星星在哈工程 于 2011-8-23 14:58 编辑 ]…

查看全部问答>

msp430单片机18B20测温程序

msp430单片机18B20测温程序 #include \"msp430x22x4.h\" typedef unsigned char uchar; typedef unsigned int  uint; #define DQ1 P2OUT |= BIT4 #define DQ0 P2OUT &= ~BIT4 #define DQ_in   P2DIR &= ~BIT4 #define DQ_o ...…

查看全部问答>