主要介绍如下三部分内容:
keil5软件获取
keil5安装
安装STM32芯片包
软件获取
可以通过搜索引擎搜索关键字“KEIL5下载”,找到其官方网站http://www.keil.com。我们这里使用MDK5.14版本,如果后面出了更高的版本选择性升级即可,不过也没有必要什么都追求最新的,这一个软件用着习惯就行。
登录armkeil官方网站,网站首页有软件下载连接,在这里我们选择MDK-Arm。会让你先注册,注册完成之后就可以开始下载了。
软件安装
安装此软件时一定要注意以下几点:
点击next,一路默认安装即可,注意安装路径中不能有中文字符。
点finish安装完成,之后再安装STM32芯片包,这个也是按照自己的需要选择芯片包的类型,双击默认安装即可。和以前安装KEIL4等软件不同的是,KEIL5需要单独安装芯片包,否则无法选择芯片类型。STM32芯片包需要去KEIL的官网下载,有F0/1/2/6/4/7这几个系列,具体下载和安装哪个系列的包,具体看你的芯片型号。我们给大家的KEIL5软件内提供了STM32F1和F4的芯片包。大家直接双击安装在KEIL5相应的目录即可。
到这一步软件基本上安装完成了,还剩最后注册一步,file-License management。
点击get LIC via internet,到其官网注册,填写你电脑的CID,购买之后就可以从注册邮箱得到LIC,填入下面框中,点击add LIC。这样STM32开发工具软件就安装完成了。
在网上可以看到有很多软件破解方法,虽然不推荐,但却是是我等穷屌丝的福利,下面介绍一下。
在这里要用到keygen这个破解软件,要用到上文提到的CID,Target选择ARM。需要注意的是,要“以管理员身份运行”keil5,把上面Generate得到的30位LIC码填入,add LIC即可。相信你看完上面这张图已经知道该怎么做了吧。
大功告成,下面将要开始我们STM32开发之旅。在这里还是要默默地向开发工具制作者表示谢意。要注意的是如果你创建工程使用的是KEIL5,那么你用KEIL4软件或者更低版本的软件是打不开这个工程的
关键字:STM32 入门系列 开发工具
引用地址:
STM32入门系列-开发工具keil5安装
推荐阅读最新更新时间:2024-11-12 11:51
STM32 ST-LINK Utility使用教程
下载安装 点击读取芯片信息,读取成功后下载 点击下载 下载完成
[单片机]
UC_COS移植到STM32
1 在外设篇里面的点亮液晶屏(17)的基础上移植液晶屏 1 下载GUI解压放到工程的根目录下 图片1 2 将GUI里面的文件夹全部添加到工程文件里面。 图片2 3 把GUI里面每个文件夹里面的文件加入到工程。 1 在添加Config的时候,因为Config里面都是头文件所以需要选择Allfile文件类型然后在选择全部文件添加。 2 字体先不添加,以后编译的时候需要那个字体在添加那个字体。 3 添加不带操作系统的延时函数文件GUI_X.c 4 添加图片文件的时候JPGE文件夹下面还有两个文件夹DOC和Image不需要添加,只需要添加JPGE下面的点C文件。 5 液晶屏驱动文件LCDDriver下面的文件先不
[单片机]
STM32 对外设基地址,总线外设基地址和寄存器基地址的理解
前言 本博文基于STM32F103ZET6和MDK以及V3.5.0库函数; 本博文从Cortex-M3内核的寻址空间映射一直聊到库函数是怎样配置具体的某一个寄存器; 如有不足之处,多多指教; Cortex-M3存储器映射 由于STM32系列芯片为32位处理器,所谓32位处理器,也即是地址总线有32根,可寻址空间为2^32=4GB;如下图 从图片上可以看出,ARM公司已经为芯片生产厂商们划分好了存储映射空间;并且,0x40000000~0x5FFFFFFF这段地址,映射片上外设的寄存器地址;STM32F10x.h这个头文件正是吧STM32的所有寄存器进行地址映射,此文件通过宏定义的方式,将各个寄存器的地址转换为相应的符号名称,如
[单片机]
STM32定时器触发ADC的时序话题
在STM32芯片的ADC应用中,我们往往会利用定时器来触发ADC的启动转换,而能够触发ADC转换的定时器事件往往有多个,有时我们可能很关注这些定时器事件在触发ADC时有哪些时序上的差别。下面以STM32G4芯片为例,来大致聊聊该话题。 这里选择TIM1来触发ADC。我们从手册或CubeMx配置界面不难看到可用来触发ADC的定时器事件可以是定时器TRGO信号和通道CC事件/信号,而TRGO可能来自定时器的使能动作、定时器的更新事件、通道输出比较事件、通道比较输出参考信号以及编码时钟。 这里先重点就Update事件、通道OCx信号和OCxREF信号作为TRGO来触发ADC,看看相应的触发时间点在哪里。 另外,作为ADC的外部触
[单片机]
STM32学习之不同FLASH的芯片启动文件选择规则
F103ZET6的FLASH大小是512K,所以选择startup_stm32f10x_hd.s F103C8T6的FLASH大小是64K,所以选择startup_stm32f10x_md.s 移植需要注意的事项 从ZET6到C8T6,需要更改 1、启动文件 2、C++XU选项卡的 3、
[单片机]
关于stm32的USB和SPI疑似存在干扰的问题
情况是这样的,最近做一个项目,使用的是stm32f103RE单片机,使用到了单片机的usb口和SPI1。USB虚拟成串口向上位机发送数据,已经通过修改官网的例程调试通过,SPI1也能正常工作。但是当把两个功能做在同一个工程中时,发现出现了一些问题:USB想上位机发送一段时间后会停止发送(我的程序是在while中一直发送);USB发送会出现乱码。当我把SPI1的读写函数注释掉之后上述问题有消失了。这个问题纠结了我好几天了,不知道各位高手能不能帮我解答解答。 调试发现程序停在了while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);中,但是之前没有添加USB功能模块
[单片机]
STM32 I2C总线 自我总结学习
前几天在学习STM32的485通信,基本搞清楚了原理,也实际操作成功---后续还将进一步学习---与变频器通信,从而去控制380V电机! 现在打算彻底搞清楚STM32的I2C总线通信----首先是对AT24C02的读写----手上有PCF8574的IO扩展芯片,也是I2C协议的,希望实现多个控制! STM32的I2C有自带的硬件驱动,也可以使用GPIO模拟-----先总结一下硬件驱动下的问题。 ----------------------------------硬件下-----以AT24C02与PCF8574为例--------------- ------第一部分是简单宏定义------- #define
[单片机]
STM32串口中断接收方式详细比较
简介:本例程通过PC机的串口调试助手将数据发送至STM32,接收数据后将所接收的数据又发送至PC机,具体下面详谈 实例一: void USART1_IRQHandler(u8 GetData) { u8 BackData; if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //中断产生 { USART_ClearITPendingBit(USART1,USART_IT_RXNE); //清除中断标志. GetData = UART1_GetByte(BackData); //也行GetData=USART1- DR; USART1_SendByte(GetData);
[单片机]