sw4stm32开发stm32

本文介绍如何使用sw4stm32这款官方免费IDE进行stm32的开发,包括下载安装、创建项目、编译调试等内容,并提供stlink和jlink的配置方法。

sw4stm32开发stm32

作为开发stm32最常用的IDE就是MDK和IAR,然后这两款IDE是付费的,同时仅仅能在windows平台上使用,为了能打破这一限制有些人使用了Eclipse+gcc搭建了stm32的开发环境,其过程较为复杂。现在st官方推出了官方的一款免费IDE——sw4stm32,同样也是基于Eclipse,下面就来讲一下下载安装过程已经配置stlink和jlink仿真器。

1.下载安装

1.1下载

sw4stm32可以在下面链接下载
http://www.ac6-tools.com/downloads/SW4STM32/
我们最新版本的windous平台exe安装,如下图
下载安装

1.2安装

安装比较简单,直接双击安装。注意需要Java 运行环境 JRE。
完成安装后运行如图所示,关闭欢迎页面即可看到熟悉的Eclipse界面
这里写图片描述

2.创建项目

2.1stm32cubemx生成

关于项目创建,这里我们采用官方推荐的stm32cubemx软件直接生成工程,目前最新版的stm32cubemx已经支持直接生成sw4stm32工程,配置如下
这里写图片描述
注意其他选项同生成mdk或IAR项目类似。

2.2项目导入

打开sw4stm32,选择一个文件夹作为项目的工作空间目录,将上一步生成的项目复制到工作空间。
这里写图片描述
打开sw4stm32,选择file-import,出现下图对话框,选择如图方式,点击下一步
这里写图片描述
在这里选择工程的文件夹,图中出现感叹号是因为我已经导入完成了。
这里写图片描述
点击finsh完成后,即可完成工程导入,如下图所示
这里写图片描述

3.编译调试

3.1编译

编译的方法比较简单,点击快捷按钮区域的build按钮即可编辑,这里编译不会出任何错误,因为cubemx生成的工程都配置ok的

3.2stlink调试

官方支持的stlink调试,所有配置起来比较简单,直接点击debug下拉框的Debug Configurations,弹出如图所示界面
这里写图片描述
在AC6 STM32 Debugging右击新建一个配置,我们在name输入:STM32F103ZE Debug stlink,这里配置基本都选用默认,不过Debugger标签下的Configuration Script改为User Defined (因为这里我们要修改这个配置脚本)。点击apply完成设置,点击close关闭。

这时候我们打开如图所示配置脚本文件进行修改

这里写图片描述

这里主要是25、26行的修改,修改后的文件如下:

# This is an STM32F103ZE board with a single STM32F103ZETx chip
#
# Generated by System Workbench for STM32
# Take care that such file, as generated, may be overridden without any early notice. Please have a look to debug launch configuration setup(s)

source [find interface/stlink.cfg] 

set WORKAREASIZE 0x8000

transport select "hla_swd"

set CHIPNAME STM32F103ZETx

# Enable debug when in low power modes
set ENABLE_LOW_POWER 1

# Stop Watchdog counters when halt
set STOP_WATCHDOG 1

# STlink Debug clock frequency
set CLOCK_FREQ 4000

# use hardware reset, connect under reset
# connect_assert_srst needed if low power mode application running (WFI...)
# reset_config srst_only srst_nogate connect_assert_srst
reset_config none separate 
set CONNECT_UNDER_RESET 1

source [find target/stm32f1x.cfg]

现在连接stlink到开发板,点击debug即可进入调试。

3.3jlink调试

由于官方没有提供jlink的配置,所有这里我们需要自己安装jlink插件,首先点击help-install new software ,输入http://gnuarmeclipse.sourceforge.net/updates,如下图所示
这里写图片描述
稍等片刻就会出现可选安装列表,我们只需要选择安装GDB SEGGER J-Link Debugging,上图中没有是因为我已经安装完成了。
完成安装后,我们就可以再次打开调试配置界面,这时候就会出现一个jlink的配置项,新建一个调试配置,参考如下图所示的配置,完成后连接jlink到开发板,点击调试。
这里写图片描述

4.其他

4.1调试出错

之前一直存在进入调试,但无法下载到目标版的情况,后来发现生成的工程中stm32f1xx_hal_msp.c的74-76行如下

/**DISABLE: JTAG-DP Disabled and SW-DP Disabled 
    */
  __HAL_AFIO_REMAP_SWJ_DISABLE();

将这句注释掉就好了。

4.2关于软件界面汉化

和Eclipse汉化方法相同,在install new softwar添加
http://download.eclipse.org/technology/babel/update-site/R0.15.1/neon
选择下载中文语言包就可以了,基于Eclipse 的版本为Version: Neon.3 Release (4.6.3)。汉化仅仅是看着习惯而已,大部分都仍然是英文的,所以完全可以不进行汉化。

4.3关于使用标准库

HAL的工程创建比较简单,而标准库则需要移植标准库TrueSTUDIO工程模板。
暂时就这些内容,后续再进行补充

### SW4STM32 开发环境搭建步骤 SW4STM32 是一款基于 Eclipse 框架的集成开发环境(IDE),专为 STM32 微控制器开发而设计。该环境依赖 Java 运行时环境(JRE)来运行,因此在安装 SW4STM32 之前,必须确保系统中已安装合适的 JRE。 #### 安装 Java 运行环境 1. **下载 JRE** 从 [Oracle 官网](https://www.oracle.com/java/technologies/javase-jre8-downloads.html) 下载适用于 Linux 的 JRE 安装包。由于 Oracle 的下载页面可能需要注册账号,也可以考虑使用 OpenJDK 作为替代方案。 2. **安装 JRE** 下载完成后,使用以下命令解压并安装 JRE: ```bash tar -xvf jre-8uXXX-linux-x64.tar.gz sudo mv jre1.8.0_XXX /usr/lib/jvm/ ``` 3. **配置环境变量** 编辑 `~/.bashrc` 文件,添加以下内容以设置 Java 环境变量: ```bash export JAVA_HOME=/usr/lib/jvm/jre1.8.0_XXX export PATH=$JAVA_HOME/bin:$PATH ``` 执行以下命令使配置生效: ```bash source ~/.bashrc ``` 4. **验证安装** 使用以下命令验证 Java 是否安装成功: ```bash java -version ``` #### 下载并安装 SW4STM32 1. **从官方下载 SW4STM32** 访问 [SW4STM32 官方网站](https://www.st.com/en/development-tools/sw4stm32.html) 下载适用于 Linux 的安装包。 2. **解压并安装** 下载完成后,使用以下命令解压并安装 SW4STM32: ```bash unzip sw4stm32-*.zip cd sw4stm32 ./install.sh ``` 3. **启动 SW4STM32** 安装完成后,可以直接通过命令行或桌面快捷方式启动 SW4STM32: ```bash ./sw4stm32 ``` #### 配置 STM32CubeMX 1. **下载 STM32CubeMX** 访问 [STM32CubeMX 官方页面](https://www.st.com/en/development-tools/stm32cubemx.html) 下载适用于 Linux 的安装包。 2. **解压并安装** 下载完成后,使用以下命令解压并安装 STM32CubeMX: ```bash unzip STM32CubeMX-*.zip cd STM32CubeMX chmod +x STM32CubeMX ./STM32CubeMX ``` 3. **配置项目** 启动 STM32CubeMX 后,可以创建新的 STM32 项目,选择目标芯片型号,配置时钟、外设等参数,并生成对应的初始化代码。 #### 配置调试工具链 1. **安装 OpenOCD** OpenOCD 是一个开源的调试工具,支持 STM32 芯片的调试。可以通过以下命令安装: ```bash sudo apt-get install openocd ``` 2. **配置调试器** 如果使用的是 ST-Link 调试器,可以使用以下命令启动 OpenOCD: ```bash openocd -f interface/stlink-v2.cfg -f target/stm32f4x.cfg ``` 3. **连接调试器** 在 SW4STM32 中配置调试器,选择 `Run > Debug Configurations`,然后选择 `GDB OpenOCD Debugging`,设置相应的调试配置。 #### 示例代码 以下是一个简单的示例代码,用于点亮 STM32 开发板上的 LED: ```c #include "stm32f4xx_hal.h" int main(void) { HAL_Init(); SystemClock_Config(); __HAL_RCC_GPIOA_CLK_ENABLE(); GPIO_InitTypeDef GPIO_InitStruct = {0}; GPIO_InitStruct.Pin = GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); while (1) { HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5); HAL_Delay(500); } } ``` #### 调试与烧录 1. **编译项目** 在 SW4STM32 中点击 `Project > Build All` 编译项目。 2. **烧录程序** 点击 `Run > Debug` 启动调试会话,程序将被烧录到目标芯片中。 3. **运行程序** 点击 `Resume` 按钮运行程序,观察开发板上的 LED 是否按照预期闪烁。 ###
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Quard_D

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值