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 ...
随机推荐
- (5)opencv的基础操作和矩阵的掩模操作
不懂的,可以简单,看看这个网址:https://blog.csdn.net/xiongwen_li/article/details/78503491 图片放到了桌面,所以,图片的路径就是桌面了,剩余的 ...
- 2020PHP面试-网络篇
一.网络协议分层 OSI七层: 物理层.数据链路层.网络层.传输层.会话层.表示层.应用层. TCP/IP四(五)层 : 物理层(主要是光电信号的传输). 数据链路层(MAC地址.以太网协议).网络层 ...
- JS/JQUERY函数库
1. 判断字符串是否为空 function isEmptyString(str) { return str == undefined || str == "" || str == ...
- PHP集成环境wamp和navicat for mysql 的安装
1. PHP集成环境WAMP的安装: 下载wamp: 链接:https://pan.baidu.com/s/1zvoPEbLdG7y04WWHNM6UcA 密码:mxd3 安装过程如下图: 安装完成 ...
- 112.限制请求的method装饰器
客户端与服务器之间最常用的两种请求方式: 1. GET请求一般是用来向服务器索取数据,但不会向服务器提交数据,不会对服务器的状态进行更改. 2.POST请求一般是用来向服务器提交数据,会对服务器的状态 ...
- 如何用Python统计《论语》中每个字的出现次数?10行代码搞定--用计算机学国学
编者按: 上学时听过山师王志民先生一场讲座,说每个人不论干什么,都应该学习国学(原谅我学了计算机专业)!王先生讲得很是吸引我这个工科男,可能比我的后来的那些同学听课还要认真些,当然一方面是兴趣.一方面 ...
- linux centos 7 防火墙相关
centos 7 系统 默认是开启防火墙,而且没有打开80和8080等端口. 因此,今天配置tomcat和nginx后,分别无法正常访问 访问80和8080端口都报:502错误.(错误的网关)查询资料 ...
- grid布局——从入门到放弃
基本知识 CSS grid 布局有两个核心组成部分:wrapper(网格容器,父元素)和items(网格项,子元素). 基本属性 属性 含义 display: grid 网格布局(父元素设置) gri ...
- CodeForces 1000C Covered Points Count(区间线段覆盖问题,差分)
https://codeforces.com/problemset/problem/1000/C 题意: 有n个线段,覆盖[li,ri],最后依次输出覆盖层数为1~n的点的个数. 思路: 区间线段覆盖 ...
- (1)opencv的安装和遇到的问题
opencv的安装主要是看的这个博客 https://blog.csdn.net/w_chaoqi/article/details/81949738 然后在把代码粘贴上时,出现,不识别我的opencv ...