STM32开发环境搭建(stm32开发环境搭建)
{img_1:ahr0chm6ly93d3cua2vpbdm0ns5jb20vemjfdxnlcnmvdxbsbb2fklziwmjmvmdgmdgvmdgvmjmjymza4mdexnjkwodyyynzq3zq3sq3sq3 oppc3 ote3 oppcczlmpppwslmppwzw =/
STM32使用什么开发环境?
? 希望这个答案你能满意并希望采纳O(∩_∩)O如何在MDK下搭建stm32项目
1。解压stm32f10x_stdperiph_www.gsm-guard.net并从ST官网免费下载。 ? List子文件夹,存放编译过程中生成的中间文件。
3。将源代码复制到Demo文件夹
3.1 将整个stm32f10x_stdperiph_lib\STM32F10x_StdPeriph_Lib_V3.1.2Libraries文件复制到Demo文件夹。这是ST的标准库,以源代码形式提供。
3.2 将库中演示代码IOToggle 中的文件复制到Demo\User 文件夹中。
4。新建Keil MDK工程
4.1 启动Keil MDK,点击菜单New uVision Project,然后按照向导操作
4.2 选择CPU类型为STM32F103ZE(这是安富利STM32开发板使用的CPU类型)
4.3 提示是否复制启动代码时,请选择否。(我们使用最新库中的启动代码,而不是Keil软件自带的旧版本启动文件)
4.4 根据需要修改Target名称根据您自己的需要。 (名称可以任意)
4.5 为了方便代码管理,在该Project下创建多个Group(名称可以任意)
用户:存放用户编写的源代码
RVMDK:存放启动文件(汇编文件)
StdPeriph_Driver:存储 ST 标准库文件
CMSIS:存储 CMSIS 接口文件(这也是库的一部分)
4.6 创建 Group 后,我们开始添加文件一。
5。修改源代码。我们将修改 main.c 文件并将其替换为我们自己的股票代码程序。
6。配置项目,点击“选项”按钮
6.1 切换到输出。
选择对象文件夹。
选中“创建十六进制文件”旁边的框。
6.2 带列表的开关。
选择 Listings 文件夹
6.3 切换到 C/C++? ),我们选择 Cortex-M3 J-Link 调试器
,然后在 Run to main 之前打勾
6.4 Switch to Utilities
选择调试器类型,我们选择 Cortex-M3 J-Link
点击设置按钮,添加Flash编程算法,我们选择STM32高密度器件,Flash容量512K字节
7.配置工程完成。下面开始编译。
8。编译OK,开始调试。
9。教程结束了。
我已经说得很清楚了。如果还有什么问题可以再问我或者联系我。
基于keil MDK编程stm32的问题。 。 。嵌入式系统开发环境搭建
您好,1.【安装STM32库】将下载的stm32f10x_stdperiph_www.gsm-guard.net解压,得到三个文件夹:“Libraries”、“Project”、“Utilities”。将这三个目录复制到“Keil uVision4”安装目录下,并覆盖并合并该目录下的文件。 2、【新建工程】 1、打开“Keil uVision4”,在Project菜单中选择New Project,选择要保存工程的位置,在弹出的“Select Device for”中选择STM32单片机的型号目标”对话框,如“STM32F103C8”,单击“确定”,然后在弹出的“复制启动代码”对话框中单击“否”。
2。在项目“Target 1”上,点击右键菜单“目标target1的选项”进行相关设置,在【输出】选项卡中点击“参数”,点击“创建HEX文件”,点击“选择对象的文件夹”,设置临时生成的obj文件的存放目录,当然可以不选;
3.在【C/C++】选项卡中,在“Preprocessor Sysmbols”的Define框中进行如下定义:USE_STDPERIPH_DRIVER,STM32F10X_MD
其中,USE_STDPERIPH_DRIVER表示使用ST提供的库,该库包含在“system_stm32f10x.c”文件中包含的“stm32f10x.h”文件中,其定义如下:
#ifdef USE_STDPERIPH_DRIVER #include "stm32f10x_conf .h"#endif [C/C++]选项中添加的USE_STDPERIPH_DRIVER宏就有这个功能。它用于包含“stm32f10x_conf.h”。这个文件称为“库配置文件”,用于配置你需要的文件使用库,例如,如果需要使用GPIO,则应在该文件中添加#include "stm32f10x_gpio.h"。这个文件可以在STM32库给出的例程中找到。 Get(C:\Keil\ARM\Project\STM32F10x_StdPeriph_Examples) 另外,例程中需要复制“这两个文件是“tm32f10x_it.c”和“stm32f10x_it.h”。这两个文件用于完成STM32中重中断服务程序。将以下三个文件复制到自己工程的用户目录下备用:“stm32f10x_conf.h”、“stm32f10x_it.c”、“stm32f10x_it.h” STM32F10X_MD表示使用的是STM32F10X系列CPU以及该CPU的Flash代码密度CPU 为中等(中密度设备)。请参阅与所使用的CPU相关的CPU手册。你可以得到它。
然后在选项卡底部的“Include Paths”中设置include使用的路径,如下图: 其中.\user路径是用来保存你定义的头文件的路径 4. 【调试】选项卡,选择“Cortex-M/R J-Link/J-Trace”,然后点击“设置”按钮,在新打开的对话框中选择【Flash Download】选项卡,点击“添加”按钮即可添加编程Flash,本例选择的CPU为STM32F103C8,其Flash为Medium-densis,片上Flash型号为“STM32F10X Med-densent Flash On-chip-Flash 128K”。最后,单击“确定”保存设置。 5. [Utilities]选项对于卡中的“Use Target Device for Flash Programing”,选择与[Debug]选项卡中相同的调试器“Cortex-M/R J-Link/J-Trace”; 6、然后再次点击左侧“目标1”“右键”,在菜单中选择“管理组件”,然后在“项目组件”选项卡的“组”中新建3个组,命名为“用户”、“libs”和“cmsis”分别为 1。保存用户自己的C文件、stm32f10x_stdperiph_lib库、cortex-m3启动文件等。
users:
Keil\ARM\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\ system_stm32f10x.c ( stm32f10x_它.c 该文件定义了各种中断的中断服务。服务函数)
libs:
Keil\ARM\ Libraries\ STM32F10x_StdPeriph_Driver\src\*.*
cmsis:
Keil\ARM\ Libraries\ CMSIS\ CM3\ CoreSupport\core_cm3.c
Keil\ARM\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.c
keil\ARM\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_md.s
(该文件与CPU的Flash的代码密度有关,本例中的STM32F103C8为Medium-densis,所以选择xxx_md.s)
ubuntu下如何开发stm32
环境:
ubuntu 13.10
stm32f103zet6
1。 STM 32 GCC安装
stm32属于arm cortex-m系列拇指指令集,所以arm的arm-none-eabi就足够了。首先,下载
下载地址:
https://www.gsm-guard.net/gcc-arm-embedded/+download
下载 www.gsm-guard.net2
解压到目录会生成gcc-arm-none-eabi文件夹
将编译器添加到用户环境中:
在最后一行添加:
因为我之前已经添加了树莓派编译器,所以实际上是这样的:
两个编译环境用冒号分隔;
注销后测试:
如果能检查编译器的版本,就说明没问题。
2。工程环境搭建
创建一个新的项目文件夹及其目录
下载并安装官方库:
1。 stm32的寄存器并不像51avr等单片机那么少。你可以编写自己的库并记住寄存器,所以ST公司提供了官方库。为了避免重复发明轮子,我们直接使用它的库。库版本为STM32_USB-FS-Device_Lib_V4.0.0。该库具有 USB 支持。下载方法:在st官网搜索stm32f10x。
2。解压并将解压后的文件夹复制到新创建的libs中。
3。在项目根目录下新建Makefile.common文件。这是一个常见的 makefile。
编译库文件:
进入libs文件夹,新建Makefile:
编译库:
会在lib目录下生成libstm32.a。这是编译好的静态库。
创建工程并编译ld文件
这个 ld 文件告诉编译器在编译期间将代码放在哪个地址。根据芯片的内存和闪存容量进行调整。
在项目根目录下新建linker.ld文件
根据芯片型号选择对应的RAM FLASH大小。
在项目根目录下新建Makefile:
在src中添加测试源码,主要是startup.c和main.c。
然后进入项目主目录,make即可。
Linux下如何搭建stm32开发环境
Linux对于开发者来说确实是一个非常好的系统,开发者应该很熟悉。平时我们在Windows下开发stm32是非常方便的。有很多工具、IDE等支持,而且同样的操作系统,Linux开发STM32一点也不差。
Linux下开发stm32的方法有很多种:
1。使用 makefile
2。使用 eclipse
3。使用stm32cubemx+sw4stm32
4....
有高手先用一下吧,我对makefile了解甚少,想不通。其次,可以在windows下使用eclipse进行开发。 Eclipse有linux版本,所以应该可以,但是我没有尝试过。这里我要讲的是第三种。当然,除了这些之外,像Mbed这样的在线开发工具,只要有互联网连接,就可以在任何平台上进行开发。
stm32cubemx 相信大家都已经很熟悉了。 st.推出的基于hal库的图形化配置和代码生成工具我不记得它是从哪个版本开始的。该工具增加了对 Linux 的支持。 St大力发展Linux用户的野心清晰可见。另外st还与ac6合作推出了stm32 ode,即sw4stm32,一款可以开发stm32的免费集成开发工具。 sw4stm32是基于eclipse开发的。打开后的界面和eclipse基本一样。它还支持windows和linux版本。这也说明第二种方法是可行的。现在我们开始实际搭建开发环境:
1。准备
下载stm32cubemx:http://www.gsm-guard.net/content/st_com/en/products/development-tools/software-development-tools/stm32 -software-development-tools/stm32-configurators-and-code -generators/stm32cubemx.html
下载sw4stm32:http://www.gsm-guard.net/Downloading+the+System+Workbench+for+STM32+installer
这两个软件都需要j**一个运行环境(JRE),所以需要先安装JRE,这里不再赘述。百度一次全部。
2。安装
其实这两个软件的安装方法和windows下的安装很相似。解压并双击即可安装。不过,由于我使用的是Linux系统,所以允许我安装它并使用命令行。安装。
安装步骤: 完成1.完成前面的下载后,得到两个文件:
www.gsm-guard.net Install_sw4stm32_linux_www.gsm-guard.net
首先解压压缩文件包,
Unzipen。 www.gsm-guard.net
获取
Readme.html
SetupSTM32CubeMX-4.15.0.exe
www.gsm-guard.net
SetupSTM32Cu beMX-4.15 .0.linux
四个文件, exe后缀是Windows下的安装文件。这是非常熟悉的。 .linux后缀是Linux系统的安装文件。使用此文件在此处安装。 (前面说过,直接双击安装即可)。直接执行文件:
./SetupSTM32CubeMX-4.15.0.linux
(如果出现错误,请检查文件是否有执行权限,执行前添加权限)
效果如图:
此时会弹出图形安装界面,
这个界面大家都很熟悉了。和Windows下是一样的。只需按照提示一步步安装即可。您甚至可以一路走到下一个。如果双击安装,则直接进入这一步,后续步骤将被省略!
至此,安装完成。在安装文件夹中找到STM32CubeMX文件并双击,或者通过命令行启动该文件。你可以打开STM32CubeMX软件,看到熟悉的界面。使用方法和Windows下完全一样,
安装相应的库后,就可以创建项目了。不过我们还没有开发环境,所以现在安装开发环境: SW4STM32软件:
执行命令
chmod+x install_sw4stm32_linux_www.gsm-guard.net
为install_sw4stm32_linux_64bits-v1添加执行权限.www.gsm-guard.net,可能需要超级权限。切换到root用户或者在要执行的命令前加上sudo,然后文件就有执行权限了(前面多了一个x,颜色也变了)
然后执行文件
./install_sw4stm32_linux_www.gsm-guard.net
开始安装,然后一路next。您可以选择自定义的安装路径。在此期间,您可能需要输入root用户密码。安装过程与Windows基本相同
当出现这个界面时,恭喜你,安装完成! ! !
这个界面和eclipse一模一样。喜欢eclipse的人会比较习惯这个,不过直接在eclipse下安装插件会更方便。
现在STM32CUBEMX和SW4STM32已经安装完毕,我们来构建一个项目来测试一下。我手头正好有一块Nucleo-F429ZI开发板,所以就用这块板来测试。您应该熟悉使用 Cube 创建新项目。这里就不详细描述了
一般习惯不勾选Generate Under Root,这样文件结构更合理
生成工程后,有这样的文件,然后用sw4stm32:
选择File->Import->General->Exist Project into Workspace
选择刚才生成的项目的文件夹,Finish
编译项目,没有错误,没有警告,然后添加几行测试代码:
然后编译运行,可以看到板上LD2蓝色LED以1Hz的频率闪烁。如果在电脑上打开串口助手,就可以收到板子发送的测试信息,如下图
至此,说明Linux下编写stm32程序的环境已经完全搭建完成。并成功创建了第一个可以运行的测试程序。接下来就可以愉快的开发自己的stm32应用了
附源码链接:http://www.gsm-guard.net/zero99/blog/16-06/386318_752b3.html?=blog
以上是小编对搭建STM32开发环境(搭建stm32开发环境)及相关问题的解答。我希望它对你有用!