Skip to main content
  • 产品
  • Evaluate our Software
  • 下载
  • Free Utilities
  • 购买
  • 支持
  • 关于我们
  • Search
    • Contact Us
    • Forum
    • Knowledge Base
    • Newsletter
    • RSS
  •   工作机会
  •   视频
  •   永续性
  • Embedded Studio
  • Compiler
  • Technology
  • Toolchain
  • License

Tool chain and compiler

Embedded Studio comes with the pre-built, ready-to-run compiler toolchains GCC and the SEGGER Compiler for an immediate start. Once your project is created, it is ready to be built and run. Embedded Studio also includes royalty-free ANSI / ISO C compliant C /C++ libraries for input and output using the C standard functions printf and scanf. The C libraries are developed and optimized for embedded applications.

  • All tools included
  • Ready-to-run
  • GCC and SEGGER Compiler
  • Support for external tool chains
Buy now
Downloads
Documentation
SEGGER Embedded Studio

A C Library for embedded applications

Most GCC based projects use Newlib or its smaller version Newlib nano as the standard C Library. Newlib has been created for full-featured computers with lots of memory. Even Newlib nano might require a lot of stack and even heap for functions, such as printf.

Embedded Studio comes with its own standard C Library emRun. The library has been created from scratch, tailored and optimized for embedded applications, to be used on even the smallest micros.

Embedded Studio automatically chooses the suitable library

Embedded Studio automatically chooses the suitable library for your device architecture and provides additional settings to switch between different library configurations which may be optimized for size, speed or functionality.

Building your project

Choose the configuration you want to build and select Build ➜ Build <project> (F7) or right-click on your project and select "Build". You can also build your whole solution by selecting Build ➜ Build Solution.

Embedded Studio starts the build process. The progress is shown in the output window.When building the whole Solution with projects which are not dependent you can see multiple progress bars. Embedded Studio can build projects in parallel to speed up the build process.

Successful Builds

When all errors are corrected your project can successfully be built. The output window will show that building the projects is completed. If there were warnings during compilation the status indicator on the right will show the number of warnings. Otherwise it will show 'OK'. If you are building an application you can see the memory usage of your application.

embedded studio 310 build success

Compile and Linkage Errors

If an error occurs while compiling or linking your application the build process is stopped. The output window will show the errors and the editor is set to the first occurred error. You can go through your project and correct the errors by double-clicking on the error in the output window or pressing F4 to go to the next error or warning.
You can also manually search for errors. All errors and warnings are marked in the source code. On mouse-over on the error or warning icon you can see the compiler message.
When all errors are corrected build your project again.

embedded studio 310 error

Using printf in your Application

When creating a new project with Embedded Studio input and output functions can immediately be used. By default Embedded Studio Projects are configured to use the SEGGER Real Time Terminal (RTT) module to send output from the application to the Debugger. With RTT it is possible to send and receive data at high speeds without stopping the target or affecting any real-time behavior of the application. Output sent via RTT will be directly displayed in the debug terminal in Embedded Studio.

Customizing Output

To use printf, putchar and puts in your application you can also choose other ways to display output. For example send output via UART or show it on a display. To do this you need to customize how characters are presented. This is done by supplying the function __putchar in your application.

Prototype: int __putchar(int c);
Parameter: c: The character which shall be shown.
Return Value: The character which was written or -1 on error.

Example Implementation

#include "SEGGER_RTT.h"
int __putchar(int x) { 
  SEGGER_RTT_Write(0, (char *)&x, 1); return x;
}

全球总部

德国: SEGGER Microcontroller GmbH

地址: Ecolab-Allee 5
40789 Monheim am Rhein, Germany
电邮: info@segger.com
电话: +49-2173-99312-0
传真: +49-2173-99312-28

网点分布

中国:哲戈微系统科技(上海)有限公司

地址: 中国上海市闵行区秀涟路133号
大虹桥国际A 栋218室
邮编201199
电邮: china@segger.com
电话: +86-133-619-907-60

通过ISO 9001认证

ISO 9001

30多年的嵌入式行业经验

First-class embedded software tools since 1992
  • 版本说明
  • 免责声明
  • 隐私策略
  • 沪ICP备2022005181号
  • 沪公网安备 31011202014525号
© 2025 SEGGER - 版权所有.

您即将离开 segger.cn 而访问境外网站,是否继续?