Keil如何进行stm32的程序开发

使用Keil进行stm32的程序开发
本章的上-•节向读者介绍了Keil MDK的安装流程与在Keil MDK的uVision4集成开发环境下进行stm32工程的建立方法。本节我们就來看看如何使用Keil MDK开发工具进行stm32应用程序的开发。
在此之前有必要向大家介绍几个名词,Keil、MDK、uVision4、Real View, RVCT、JLINK还有RVDS,这些名同分别表示什么,有什么从属关系呢?相信很多读荞并没有明确的概念,现在简单的说明一下:Keil:这个大家应该最为熟悉,Keil其实足一家公司的名字,而这家Keil公司由两家私人公司联合运营,分别是德国慕尼黑的Keil Elektronik GmbH和美国德克萨斯的Keil Software组成。大家很熟悉的keil C51就是从Keil Software手中诞生的。但是在2005年,Keil公司被ARM公司收购。值得一提的是,Keil 公司只有区区20多名员工,却仍然做出了伟大的作品。
MDK: MDK全称Microcontroller Develop Kit,意为微控制器开发套件。ARM收购Keil公司的意图在子进军微控制器(也就足我们常说的申片机)领域,MDK就足这种意阁下的产物。但我们一般仍称之为Keil MDK 而不是ARM MDK, Keil MDK作为一个套件,包含了一系列软件模块。包括Keil公司的IDE环境‛ u Vision‛,ARM公司的编译器RVCT, Flash烧写软件模块等。
uVision4: uVision4是Keil公司的IDE环境‛ u Vision的第四个版本,从根本上来说uVision4 是一个开发环境,并不必须包含编译器、仿真、烧写等模块。比如AVR单片机的一个开发环境WinAVR (又称GCCAV
R)就不包含仿真调试器,也不包含烧写模块。值得一提的是,家喻户晓的Keil C51正是基于uVision2开发环境,所以uVision4的界而和HVision2非常的相似,很有利于广大习惯于uVision2 开发环境的开发人员转向使用uVisiond进行stm32的开发。
RealView:是ARM公司编译工具的名称。其首字母就是下文提到的RVCT中的’ R’。
RVCT:全称为RealView Compilation Tools,意为KealView编译工具。是ARM公司针对自身ARM系列CPU 开发的编译工具,其主耍由:
•ARM/Thurnb ?| :织器aniiasm
•连接器arm 1 ink
•格式转换T其fromelf
•库管理器armar
•C和C++应用程序库
•工程管理
飢成,这残梭块都被嵌入到了粜成Keil P Visionl开发环境里(但绝不仅足Keil uVisionl)。值得-•提的是,ARM公司作为ARM处理
器的设计秆,其编译工其RVCT的性能与表现足无与伦比的,没脊任何一套编译T具能取代其成力首选。
RVDS:全称为RealView Developer Suite,意为RealView 发转件。圮ARM公司为方便用户在ARM芯片上进行应用软件开犮而推出的-
整袞集成开发工具。该袞工具包括软件开发袞件和硬件仿.真工具,足软硬件结合的套件。RVDS的价格十分的高W.但功能也十分的强人,祛本不会在捋通企业和个人川户手屮出现
J-Link: J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合TAR EWAR,ADS, KEIL. WTNARM, ReaHiew等集成开
发环境支持所有ARM7/ARM9/Cortex内核芯片的仿真,通过RDI接C1和各粜成开发环境无缝迮接,操作方便、连接方便、简单易学,足学习开发ARM敁好敁实用的幵发工其。笔者使用的就足J-Link仿與器,并且推荐各位读者使用J-Link仿與器进行stm32工程的幵发。
0K,名词解释完毕,相信各位读者肴完之后,以后不会再乗持‚我使用Keil编评器……‛或奍‚我正在下
智库是什么RVDS……’’这种肴似内行本质外行的古论了W
本书选用Keil MVision4作为本书中工程实例的开发环境,原因在于其软件操作方式简单,功能齐全,有Keil C51开发经历的读者朋
友可以很快上乎。而K作力ARM公司旗下很正苗红的IDE,相估ARM公司足不会让自家孩子在外边献丑的。
葛洲坝水电站一般情况下,我们会使用IDE做以下事情:
1、编写程序代码。
2、编译程序。
3、烧写程序。
4、调试程序,包括杏看变量、内存、寄存器,吋间跟踪分析、甚至可以调用虚拟打印窗和虚拟逻辑分析仪用以显示程序输出。
5、输出需要的文件如Hex、Bin、Lib等……
我们就遵循以上儿条思路,来看看我们的Keil uVisioM如何实现这些功能。
首先请读者准备好-块至少拥有一个®小系统的stm32硬件环境,J-Link仿真器,然后依照上一节的办法建立一个stm32的工程,建立完毕后W将如下代码作为main, c文件的内容:
# include "stm32fl()x lib. h〃 u32 Stin32IdIIigh = 0;
u32 Stm32IdMcd = 0;
u32 Stm32IdLow = 0;
void Rcclnitialisation(void):
三颗枸杞豆教案
int main(void)
Kcclni t ialisat ion();
Stm32IdLow = *((u32*)0xlFFFF7E8);
Stm32IdMed = *((u32*)0xlFFFF7EC);
Stm32IdHigh = *((u32*)0xlFFFP7F0);
whiled);
}
void Rcclnitialisation(void)
{
ErrorStatus HSEStartllpStatus;
RCC DelnitO;
RCC_IISKConfig(RCCJISE_ON):
IISEStartUpStatus = RCC Wai tForHSEStartUpO ;
if (IISEStartUpStatus = SUCCESS)
{永磁电机设计
RCC_IICLKConfig(RCC_SYSCI.K_Divl):
RCC一PCLK2Config(RCC. HCLK Divl):
RCC PCLKIConfig(KCC IICLK Div2);
FLASII_SetLatency (HLASII_Latency_2):
FLASH_PrefetchBufferCmd(FLASH PrefetchBuffer Enable):
RCC_PLLConfig(RCC PLLSourceJISE_Divl, RCC PLLMul_9):
RCC_PLLCmd(KNABLE):
whi le(KCC Celt-lagStatus(KCC_HLAG PLLKDY) == RESET);
RCC_SYSCLKConfig(RCC_SYSCI.KSource_PLLCLK):
while(RCC GetSYSCLKSourceO != 0x08):
}
}
键入如上代码完成G按下Ctrl + S进行保存。然后我们來看看在幵始代矾編译调试之前炁耍进行哪些设诨E作。
1、右键点击project区工程组中的顶部‛ MyFirstJob ‚,在弹出的右键菜单中选择‛ Option for Target ‘MyFirstJob’ .......... ‛项弹出设S窗口,如下图所示:
在弹出的设S窗u Option for Target ‘MyFirstJob’中,谪读荞执行如下操作:
(1)切换到Debug 标签,选择Use: Cortex M/R J-LINK/J-Trace,勾选Load Application at Startup, Run to mainO等,如下图所
示:
[DAP.MSTI/ DLL |p5Tr/32nO3AB
CWog DLL:
Poramdcr
|TARMSTM
DLL |pSTM32F103RB
Z2
NT
Simulation恐龙危机1攻略
(2)切换到 Utilities 标签,选择 Use Target Driver For Flash Programming ,并选择Cortex M/R
J-LINK/J-Trace >点击Settings,在弹出的窗LI 中点击Add 按钮,根据读卉內身的stm32型M 做出如下选择:
•如果使用的是 stm32f 103x4 或 S tm32f 103x6 系列,则请选择 STM32F10X Low-density Flash ; •如果使用的姥 stm32fl03x8 或 stm32fl03xb 系列,则谘选择 STM32F10X Med-density Flash ;
•如果使用的是 stm32fl03xc 、stm32fl03xd 或 stm32fl03xe 系列,则请选择 STM32F10X High-density Flash :
这里的High 、Med 、L ⑽分别对应了 S tm32中各种型号中的大、中、小容虽Flash 型号,笔者使用的是S tm32fl03rbt6,所以应该选择STM32H0X
.ini xi
Fik Edrt View Project Flash D^bug Peripherals T QO I$ 5VCS Window Help
Pro>ect
汶 U 就(Cortex-M/R J<1N»C -J-Trra 3
|
f n f s t b o c 2]J b b r .J 23J 323r l w A  K J
a r a 广 Use
厂 Lmfi Speed to Real -Time
ScWngg | Lead at Sarrup
P Rjnio marX)
数理统计学的奠基人b^cijatico He:
Restore Debug Sesscn Settings  P Breakponts
P Toobax
P V/afich 、Wow3 4 ^e^onnarxx Ana^cr
\»etr<ry >3^办
CPU DLL: Parameter  |SAF!r/CMlDLL | P
Auntomeni) hti^uaeen Re:
-J
Restore Debug Session Scttng^ (7 BreakponU Toobax
P W«lch Wndw»
Memory l>so^y
Onvcr DLL
Parameter:
|SA 只 MCM3 DLL I ㈨
I Cancei | Dafauts |
Oobg OLL;
Panamdcr

本文发布于:2024-09-22 01:52:46,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/570787.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:公司   开发   环境   进行   工程   使用   工具
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议