Getting Started with STM32 in Segger Embedded Studio
初识Segger Embedded Studio(SES)
第一次见SES是在“安富莱电子论坛”上,“硬汉”提到SES的一些特性,再加上Jlink的大名,于是试试他们家的IDE。
SES貌似也是基于Eclipse的,安装完成之后,可以继续安装我们需要的器件包,不过提供的器件包并不多。

新建STM32工程
SES是按solution->project来管理项目文件的,一个solution下可以有多个project。
新建一个project,如果安装了器件包,可以直接选择对应的器件包。因为device pack里面的文件可能不是最新的,我习惯使用HAL的库,所以选择Cortex-M

接着选择Device等选项

然后选择需要添加的文件。这里只勾上“thumb_crt0.s”,其他的貌似是“samples”吧

如果勾选了“Import all files and package files”选项,貌似会把device pack里面的文件加进来,记不清了,,ԾㅂԾ,,
一路next,finish,呈现project界面

solution下有一个project,project有多个文件夹,这里的文件夹并不等同于磁盘上的文件夹,只是project呈现出来的结构。貌似这里的folder也分folder和source folder,不过他们都会参与编译呀,搞不太清楚了。
然后整理一下project下的文件夹,添加HAL库文件、启动文件、系统文件等等。

其中系统文件“system_stm32f1xx.c”来自st的hal库,启动文件“xxx_startup.s”和“xxx_vector.s”是在device pack里面copy过来的,路径为:C:\Users\xxx\AppData\Local\SEGGER\SEGGER Embedded Studio\v2\packages\STM32F1xx\Source,我试过用gcc里的startup.s,貌似不可以。
然后配置project property,右键工程名,edit properties。
修改“Build Option”选项下的“Memory Map File”,文件也来自于device pack。

修改“Debugger Options”下“Register Definition File”:

修改“Linker Options”下“Entry Point”,将“reset_handler”改为“Reset_Handler”:

然后添加preprocessor和include路径:


然后Build,debug,编译速度还挺快,debug界面还不错。

Getting Started with STM32 in Segger Embedded Studio的更多相关文章
- 【转】SEGGER Embedded Studio 新建stm32f103工程
@2018-12-22 SEGGER Embedded Studio 新建stm32f103工程
- 【性能测评】DSP库,MDK5的AC5,AC6,IAR和Embedded Studio的三角函数性能
测试条件: 1.IAR8.30开最高等级速度优化. 2.MDK5.27正式版使用AC5开最高等级优化3,开启时间优化,测试C标准库和微库MicroLib两种. 3.MDK5.27正式版使用AC6开最高 ...
- arm的开发工具
网上有free的ide可以开发arm cortex的芯片,可以参考List of ARM Cortex-M development tools,Wikipedia,里面有emIDE,embitz等,虽 ...
- Nordic nRF51/nRF52开发环境搭建
本文将详述Nordic nRF51系列(包括nRF51822/nRF51802/nRF51422等)和nRF52系列(包括nRF52832/nRF52810/nRF52840)开发环境搭建. 1. 强 ...
- nRF5 SDK for Mesh(五) Light switch demo 点灯例子
Light switch demo 灯开demo Purpose This demo project consists of four sub examples - The light swit ...
- nRF5 SDK for Mesh(四) 源码编译
官方文档教程编译源码: http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk%2Fdita%2Fs ...
- nRF5 SDK for Mesh(三) Installing the mesh toolchain 安装编译工具链
Installing the mesh toolchain To build the example applications, a toolchain based on either CMake o ...
- 如何调试nRF5 SDK
本文将讲述Nordic nRF5 SDK的主要调试手段,以帮助大家快速定位问题,并解决问题.一般来说,你可以通过打log方式,IDE的debug模式,SDK自带的app_error_check函数,以 ...
- NRF5340首款双核处理器无线SoC
nRF5340基于Nordic经过验证并在全球范围广泛采用的nRF51和nRF52系列多协议SoC而构建,同时引入了具有先进安全功能的全新灵活双处理器硬件架构,支持包括蓝牙5.1/低功耗蓝牙 (Blu ...
随机推荐
- 洛谷 P1220 关路灯(区间dp,前缀和)
传送门 解题思路 先明确一下题意,c指的是路灯的编号而不是位置. 然后根据贪心,在从点i去关点j的路灯时,所有经过的路灯都会随手关掉(不耗时间),所以我们可以确定,若i点和j点的路灯已经关闭,那么区间 ...
- C 的printf函数
头文件 #include <stdio.h> printf函数是最常用的格式化输出函数,原型为:int printf(char *format,......); printf函数会根据参数 ...
- 使用js检测页面是在electron app中运行还是在浏览器中运行
<script type="text/javascript"> var userAgent = navigator.userAgent.toLowerCase() ){ ...
- 每天一点点之vue框架开发 - vue坑-This relative module was not found
94% asset optimization ERROR Failed to compile with 1 errors This relative module was not found: * . ...
- Python Learning Day3
爬虫练习 说是练习,实际是尝试了一些还没有具体了解的方式吧hhhhh' 基于urllib实现 import urllib.request import re url="https://www ...
- java.lang.SecurityException: Permission denied (missing INTERNET permission?)
ndroid app里试图用HttpUrlConnection获取网络连接,忘记在AndroidManifest清单文件里声明需要用到Internet的权限,运行时报此错误. 解决方法 在Androi ...
- Android :TextView使用SpannableString设置复合文本
TextView通常用来显示普通文本,但是有时候需要对其中某些文本进行样式.事件方面的设置.Android系统通过SpannableString类来对指定文本进行相关处理,具体有以下功能: 1.Bac ...
- WAMP常用环境配置
自定义网站目录 修改目录位置 如下图,打开httpd.conf文件. 查找DocumentRoot(两处),做如下修改: #demo为自定义网站目录,下面不再说明 DocumentRoot " ...
- Python爬虫连载2-reponse\parse简介
一.reponse解析 urlopen的返回对象 (1)geturl:返回网页地址 (2)info:请求反馈对象的meta信息 (3)getcode:返回的http code from urllib ...
- LeetCode——739. 每日温度
根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 temperatures = ...