stm32从keil安装到程序烧录

本文详细介绍STM32L151C8T6开发板的配置流程,包括所需工具如KEIL5、STM32L1芯片包等的下载与安装步骤,ST-LINKV2驱动程序的安装方法,以及如何新建工程并进行程序的编写、编译和烧录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.准备工具

(1)一块stm32板,我用的是芯片型号是stm32L151C8T6;
(2)keil5软件,可以到官网下载:https://www.keil.com/download/product/ ,也可以直接下载网友的版本,我这里用的是keil5.15版本;
(3)stm32L1芯片包,到官网下载自己的芯片对应的包,https://www.keil.com/dd2/Pack/ ,我这里下载的是:Keil.STM32L1xx_DFP.1.2.0;
(4)keil注册机,用于破解,百度去下;
(5)ST-LINK V2烧录器,淘宝可以买,需要下载安装驱动,到官网下载:http://www.stmcu.org.cn/document/list/index/category-76
(6)芯片库文件,下载对应芯片的固件库文件,stm32基本都是库操作,到官网下载:http://www.stmcu.org.cn/document/list/index/category-76 ,我这里用的STM32L1xx_StdPeriph_Lib_V1.3.1;
(7)串口调试助手,百度下载;

2.安装keil5

网上很多说不能把keil4与kei5安装在同一目录,但我试了是可以的;而且安装后keil5中51和ARM的芯片资源都能选择,所以这里我是直接把keil5安装在以前的keil4文件夹;安装路径一定要是英文,而且以后写的程序的保存路径也最好是英文;

(1)跟所有软件一样:下一步----我同意----下一步
1392333-20180609112605254-468078407.jpg
(2)这里选择自己的软件安装路径,然后下一步
1392333-20180609112952272-1679459332.png
(3)这里每一项都填空格就可以了
1392333-20180609113321217-287100424.png
(4)去掉勾选,点击OK,等待右下角更新完成,然后退出
1392333-20180609114156294-1274817440.jpg
(5)安装完成后打开keil,使用注册机先进行注册,方法自己百度
1392333-20180609152329949-1582677746.jpg
(6)注册完之后,安装自己的芯片包,直接双击芯片包,安装路径一般是默认的,点击下一步安装即可,至此keil安装完成
1392333-20180609153841481-1779459030.png

这里不推荐使用软件进行.hex文件烧录,没有仿真器稳定,我用的ST-LINK,效果不错,而且不贵,需要带有SWD接口

直接双击驱动程序,点击下一步即可
1392333-20180609154650192-632890014.png

4.新建工程

每个人的分类方法不一样,你也可以按合适你的方法将文件分类存放,直接使用固件库也是可以的

(1)首先在你准备存放程序的目录下创建一个该程序的文件夹,然后在该文件夹里新建另外几个文件夹,最好都是英文路径
1392333-20180609161631144-377211266.jpg
(2)将上图所示的每个文件夹应该存放的文件从固件库中找出来,放到相应的文件夹,如我的
1392333-20180609162532451-144762032.jpg

1392333-20180609164032705-834677364.jpg

1392333-20180609164555642-1164114353.jpg

1392333-20180609164133765-1212888419.jpg

1392333-20180609164201206-1601388811.jpg

1392333-20180609164219088-384492348.jpg
(3)打开keil,新建工程
1392333-20180609165343620-1053393639.jpg

1392333-20180609165707368-1166187767.jpg

1392333-20180609170024656-1125162383.jpg

1392333-20180609170138426-1744382540.jpg

1392333-20180609170845464-47810826.jpg

1392333-20180609171732241-575773567.jpg

1392333-20180609171838651-273710580.jpg

1392333-20180609172249395-2025979193.jpg

5.编写程序,进行编译和烧录

记住这三个按钮

1392333-20180609173148110-736409713.jpg

(1)写好程序后,点击魔法棒,进行相关设置
1392333-20180619154144250-1607656990.jpg

1392333-20180609173546005-67701037.jpg

1392333-20180609174600188-193290843.jpg

(2)点击编译按钮,编译程序

(3)连接ST-LINK,点击魔法棒,进行相关设置
1392333-20180609175433960-1501660418.jpg

1392333-20180609180021736-1106292754.jpg

1392333-20180609180038518-1320444602.jpg

1392333-20180609180815325-426772232.jpg

1392333-20180609180834207-1089246329.jpg

(4)设置完成后,就可以点击下载按钮将程序下载到开发板进行测试了,然后到此就结束了

(5)利用ST-Link烧写.hex文件,先打开STM32 ST-LINK Utility程序,按图操作即可
1392333-20180627173404003-2008324814.jpg

1392333-20180627173426417-1083190698.jpg

(6)利用ST-Link读取Flash中的内容,并导出为.hex文件
1392333-20180627174222597-978285706.jpg

1392333-20180627174236141-1473498969.jpg

转载于:https://www.cnblogs.com/yf4695/p/9158689.html

STM32三种启动模式对应的存储介质均是芯片内置的,它们是: 1)用户闪存 = 芯片内置的Flash。 2)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区 域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。 3)SRAM = 芯片内置的RAM区,就是内存啦。            在每个STM32的芯片上都有两个管脚BOOT0和BOOT1,这两个管脚在芯片复位时的电平状态决定了芯片复位后从哪个区域开始执行程序,见下表: BOOT1=x   BOOT0=0   从用户闪存启动,这是正常的工作模式。 BOOT1=0   BOOT0=1   从系统存储器启动,这种模式启动的程序功能由厂家设置。 BOOT1=1   BOOT0=1   从内置SRAM启动,这种模式可以用于调试。         在系统复位后, SYSCLK的第4个上升沿, BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。         在从待机模式退出时, BOOT引脚的值将被被重新锁存;因此,在待机模式下BOOT引脚应保持为需要的启动配置。在启动延迟之后, CPU从地址0x0000 0000获取堆栈顶的地址,并从启动存储器的0x0000 0004指示的地址开始执行代码。        因为固定的存储器映像,代码区始终从地址0x0000 0000开始(通过ICode和DCode总线访问),而数据区(SRAM)始终从地址0x2000 0000开始(通过系统总线访问)。 Cortex-M3的CPU始终从ICode总线获取复位向量,即启动仅适合于从代码区开始(典型地从Flash启动)。 STM32F10xxx微控制器实现了一个特殊的机制,系统可以不仅仅从Flash存储器或系统存储器启动,还可以从内置SRAM启动。         根据选定的启动模式,主闪存存储器、系统存储器或SRAM可以按照以下方式访问: ● 从主闪存存储器启动:主闪存存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(0x0800 0000)访问它,即闪存存储器的内容可以在两个地址区域访问, 0x0000 0000 或 0x0800 0000。 ● 从系统存储器启动:系统存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(互联型产品原有地址为0x1FFF B000,其它产品原有地址为0x1FFF F000)访问它。(可用于串口下载) ● 从内置SRAM启动:只能在0x2000 0000开始的地址区访问SRAM。 注意: 当从内置SRAM启动,在应用程序的初始化代码中,必须使用NVIC的异常表和偏移寄存器,从新映射向量表之SRAM中。 ————————————————
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值