Main Page: Difference between revisions
m (Flasher ATE2 added) |
|||
(707 intermediate revisions by 29 users not shown) | |||
Line 1: | Line 1: | ||
<strong>Welcome to the SEGGER | <strong>Welcome to the SEGGER Knowledge Base</strong> | ||
The SEGGER Knowledge Base was created to answer questions about embedded systems in general, to explain terms used in this context ([[Knowledge Base | Knowledge Base for Technical Terms]]), and to serve as a repository for advanced information that is related to SEGGER products. | |||
The Knowledge Base is a work in progress, and it is continually updated, improved, and curated exclusively by SEGGER experts. To send feedback, please contact info@segger.com. | |||
= | <div class="toclimit-3"> | ||
__TOC__ | |||
</div> | |||
== | == Technical Terms == | ||
This part of the Knowledge Base explains terms often used in the field of embedded computing systems or "embedded systems." The aim of the Knowledge Base is to provide a useful resource for engineers, students, and hobbyists working with embedded systems, particularly with regard to microcontrollers, the C and C++ languages, and some assembly language. | |||
Things are explained from a programmer's perspective, and, where possible, useful examples of code are provided. Examples of some of the terms explained are [[CPU]], [[CRC]], [[Embedded System]], [[Interrupt]], [[Microcontroller]], and [[Watchdog]]. The [[Knowledge Base]] for technical terms has its own page: [[Knowledge Base | Click here.]] | |||
== | == Debug and trace probes == | ||
[[File:Category_Icon_Debug_01.svg|link=https://www.segger.com/products/debug-trace-probes/|right|200px|Debug and Trace Tools]] | |||
Debug and trace probes enable verification and debugging of embedded systems while they are running. The probes connect the embbedded system with the computer being used for development. This section is dedicated to SEGGER's product portfolio and related technology. | |||
=== | === J-Link and J-Trace === | ||
SEGGER J-Links are the most widely used line of debug probes available today. They've proven their value for more than 15 years. | |||
J-Trace PRO defines a new standard for trace probes. It enables streaming trace on Cortex-M-, Cortex-A-, and Cortex-R-based targets with ETM. | |||
* [[Debug Probes - J-Link & J-Trace | J-Link & J-Trace in this Knowledge Base]] | |||
* [[ | * [https://www.segger.com/jtrace/?mtm_campaign=kb&mtm_kwd=jtrace J-Trace on www.segger.com] | ||
* [[ | * [https://www.segger.com/jlink/?mtm_campaign=kb&mtm_kwd=jlink J-Link on www.segger.com] | ||
* [https://wiki.segger.com/Technical_Support Technical support] | |||
= | <br clear=all> | ||
==== | == Software development tools == | ||
[[File:Category_Icon_Build_01.svg|link=https://www.segger.com/products/software-development-tools/|right|200px|Software Tools]] | |||
Software tools are tools running on a computer used for developing embedded systems. They include tools for editing source code, building firmware, verifying functionality, and locating bugs. This section is dedicated to SEGGER's product portfolio and related technology. | |||
=== | === Embedded Studio === | ||
SEGGER Embedded Studio is a complete all-in-one solution for managing, building, testing, and deploying embedded applications. | |||
* [[Embedded Studio | Embedded Studio in this Knowledge Base]] | |||
* [ | * [https://www.segger.com/products/development-tools/embedded-studio/?mtm_campaign=kb&mtm_kwd=EmbeddedStudio Embedded Studio on www.segger.com] | ||
=== | === SystemView === | ||
SEGGER SystemView is a real-time recording and visualization tool for embedded systems that reveals the true runtime behavior of an application, going far deeper than the system insights provided by debuggers. | |||
* [[SystemView | SystemView in this Knowledge Base]] | |||
* [[ | * [https://www.segger.com/systemview/?mtm_campaign=kb&mtm_kwd=SystemView SystemView on www.segger.com] | ||
=== | === Ozone === | ||
Ozone is a full-featured graphical debugger and performance analyzer for embedded applications. | |||
== | * [[Ozone | Ozone in this Knowledge Base]] | ||
* [https://www.segger.com/ozone/?mtm_campaign=kb&mtm_kwd=ozone Ozone on www.segger.com] | |||
=== SEGGER Compiler === | |||
The SEGGER Compiler is a powerful C/C++ compiler for generating code for 32-bit ARM targets. | |||
* [[SEGGER compiler | SEGGER Compiler in this Knowledge Base]] | |||
* [https://www.segger.com/products/development-tools/embedded-studio/technology/tools/segger-compiler/?mtm_campaign=kb&mtm_kwd=compiler SEGGER Compiler on www.segger.com] | |||
<br clear=all> | |||
== Embedded software == | |||
[[File:Category_Icon_Create_01.svg|link=https://www.segger.com/products/rtos-embedded-software/|right|200px|Embedded Software, Stacks and Libraries]] | |||
This section describes all libraries, middleware, and software packages used as building blocks for an embedded system's firmware. | |||
This section is dedicated to SEGGER's product portfolio and related technology. SEGGER's embedded software has been deployed in billions of devices. | |||
=== embOS === | |||
embOS is a Real Time Operating System (RTOS) by SEGGER. | |||
* [[embOS | embOS in this Knowledge Base]] | |||
* [https://www.segger.com/embOS/?mtm_campaign=kb&mtm_kwd=embOS embOS on www.segger.com] | |||
=== emCompress === | |||
emCompress is a collection of software libraries that enable data compression and decompression on, but not limited to, resource-constrained devices. | |||
* [[emCompress | emCompress in this Knowledge Base]] | |||
* [https://www.segger.com/emCompress/?mtm_campaign=kb&mtm_kwd=emCompress emCompress on www.segger.com] | |||
=== emCrypt === | |||
emCrypt is a secure and efficient implementation of essential cryptographic algorithms specifically designed for embedded systems. | |||
* [[emCrypt | emCrypt in this Knowledge Base]] | |||
* [https://www.segger.com/emCrypt/?mtm_campaign=kb&mtm_kwd=emCrypt emCrypt on www.segger.com] | |||
=== emFile === | |||
emFile is a reliable file system for non-volatile and removable memories. | |||
* [[emFile | emFile in this Knowledge Base]] | |||
* [https://www.segger.com/emFile/?mtm_campaign=kb&mtm_kwd=emFile emFile on www.segger.com] | |||
=== emFloat === | |||
emFloat is a performance-optimized, floating-point library for microcontrollers. | |||
* [[emFloat | emFloat in this Knowledge Base]] | |||
* [https://www.segger.com/products/development-tools/runtime-library/technology/floating-point-library/?mtm_campaign=li&mtm_kwd=emfloat emFloat on www.segger.com] | |||
=== emFTP === | |||
The emFTP file-transfer protocol (FTP) server is an optional extension that adds an FTP protocol to the stack. | |||
* [[emFTP | emFTP in this Knowledge Base]] | |||
* [https://www.segger.com/emftp/?mtm_campaign=kb&mtm_kwd=emFTP emFTP on www.segger.com] | |||
=== emLib === | |||
emLib is a collection of software modules (cryptographic modules, data integrity checks) for different purposes. | |||
* [[emLib | emLib in this Knowledge Base]] | |||
* [https://www.segger.com/emlib/?mtm_campaign=kb&mtm_kwd=emLib emLib on www.segger.com] | |||
=== emLoad === | |||
emLoad is a bootloader for firmware updates. | |||
* [[emLoad | emLoad in this Knowledge Base]] | |||
* [https://www.segger.com/emload/?mtm_campaign=kb&mtm_kwd=emLoad emLoad on www.segger.com] | |||
=== emModbus === | |||
emModbus is SEGGER's implementation of the Modbus protocol. It supports communication via UART (ASCII, RTU) and Ethernet (Modbus/TCP and Modbus/UDP), and it is capable of communicating with any Modbus-compliant device. | |||
* [[emModbus | emModbus in this Knowledge Base]] | |||
* [https://www.segger.com/emmodbus/?mtm_campaign=kb&mtm_kwd=emModbus emModbus on www.segger.com] | |||
=== emMQTT === | |||
emMQTT provides the client functionality of the Message Queue Telemetry Transport protocol to a stack. | |||
* [[emMQTT | emMQTT in this Knowledge Base]] | |||
* [https://www.segger.com/emmqtt/?mtm_campaign=kb&mtm_kwd=emQTT emMQTT on www.segger.com] | |||
=== emNet === | |||
emNet is the industry-leading IP stack for embedded systems. | |||
* [[emNet | emNet in this Knowledge Base]] | |||
* [https://www.segger.com/emnet/?mtm_campaign=kb&mtm_kwd=emNet emNet on www.segger.com] | |||
=== emSecure === | |||
emSecure is a software solution for embedded systems for securely authenticating digital assets. | |||
* [[emSecure | emSecure in this Knowledge Base]] | |||
* [https://www.segger.com/emsecure/?mtm_campaign=kb&mtm_kwd=emSecure emSecure on www.segger.com] | |||
=== emSSH === | |||
emSSH offers the ability to establish a secure connection to any server application in a product. | |||
* [[emSSH | emSSH in this Knowledge Base]] | |||
* [https://www.segger.com/emssh/?mtm_campaign=kb&mtm_kwd=emSSH emSSH on www.segger.com] | |||
=== emSSL === | |||
emSSL is an implementation of SSL (Secure Sockets Layer), now called TLS (Transport Layer Security) for Embedded Systems by SEGGER. | |||
* [[emSSL | emSSL in this Knowledge Base]] | |||
* [https://www.segger.com/emSSL/?mtm_campaign=kb&mtm_kwd=emSSL emSSL on www.segger.com] | |||
=== emUSB-Device === | |||
emUSB-Device is high-performance USB-device software that is specifically designed for embedded systems. | |||
* [[emUSB-Device | emUSB-Device in this Knowledge Base]] | |||
* [https://www.segger.com/emUSB-Device/?mtm_campaign=kb&mtm_kwd=emUSB-Device emUSB-Device on www.segger.com] | |||
=== emUSB-Host === | |||
emUSB-Host is USB-host software that is specifically designed for embedded systems. | |||
* [[emUSB-Host | emUSB-Host in this Knowledge Base]] | |||
* [https://www.segger.com/emUSB-Host/?mtm_campaign=kb&mtm_kwd=emUSB-Host emUSB-Host on www.segger.com] | |||
=== emWeb === | |||
emWeb provides easy-to-use graphical interfaces for control or data acquisition. | |||
* [[emWeb | emWeb in this Knowledge Base]] | |||
* [https://www.segger.com/products/connectivity/emweb/?mtm_campaign=kb&mtm_kwd=emWeb emWeb product page on segger.com] | |||
=== emWin === | |||
emWin is an embedded GUI solution that enables the creation of highly efficient and high-quality graphical user interfaces on any embedded system. | |||
* [[emWin | emWin in this Knowledge Base]] | |||
* [https://www.segger.com/products/user-interface/emwin/?mtm_campaign=kb&mtm_kwd=emWin emWin product page on segger.com] | |||
=== IoT Toolkit === | |||
The IoT Toolkit is a collection of libraries that enables communication with modern IoT-based environments and devices. | |||
* [[IoT Toolkit | IoT Toolkit in this Knowledge Base]] | |||
* [https://www.segger.com/products/security-iot/iot-toolkit/?mtm_campaign=kb&mtm_kwd=IoT-Toolkit IoT Toolkit product page on segger.com] | |||
===SEGGER Runtime Library=== | |||
The SEGGER RunTime Library converts any [[GCC]]-based toolchain into an option for use in professional-level development. It is used in SEGGER's Embedded Studio IDE, and it has proven its value over the course of years. | |||
* [[SEGGER RunTime Library | SEGGER RunTime Library in this Knowledge Base]] | |||
* [https://www.segger.com/products/development-tools/runtime-library/?mtm_campaign=kb&mtm_kwd=runtime SEGGER Runtime Library product page on segger.com] | |||
* [[SEGGER Floating-Point Library | SEGGER Floating-Point Library in this Knowledge Base]] | |||
<br clear=all> | |||
== Production tools == | |||
[[File:Category_Icon_Program_01.svg|link=https://www.segger.com/products/flash-in-circuit-programmers/|right|200px|Production Programming Tools]] | |||
=== Flasher === | |||
SEGGER's in-circuit flash programmers are fast, robust, reliable, and easy to use.<br> | |||
Whether a user's focus is on size, flexibility, portability, security, or mass production, the SEGGER Flasher Family has the perfect programmer for the task at hand. | |||
* [[Flasher|Flasher in this Knowledge Base]] | |||
* [https://www.segger.com/products/flasher-in-circuit-programmer/?mtm_campaign=kb&mtm_kwd=Flasher Flasher on www.segger.com] | |||
* [[UM08022_Flasher | Flasher User Manual]] | |||
* [[UM08043_Flasher_Hub-12 | Flasher Hub-12 User Manual]] | |||
* [[UM08003_JFlash | J-Flash User Manual]] | |||
* [https://wiki.segger.com/Technical_Support Technical support] | |||
=== Products === | |||
==== Flasher ARM ==== | |||
Flasher ARM is SEGGER's programmer for all ARM-core MCUs. | |||
* [[Flasher ARM V5|Flasher ARM in this Knowledge Base]] | |||
* [https://www.segger.com/products/production/flasher/models/about-flasher-arm/?mtm_campaign=kb&mtm_kwd=FlasherARM Flasher ARM on segger.com] | |||
==== Flasher ATE ==== | |||
Flasher ATE is SEGGER's gang programmer. | |||
* [[Flasher ATE|Flasher ATE in this Knowledge Base]] | |||
* [https://www.segger.com/products/production/flasher/models/gang-programmer-flasher-ate/?mtm_campaign=kb&mtm_kwd=FlasherATE Flasher ATE on segger.com] | |||
==== Flasher ATE2 ==== | |||
Flasher ATE2 is SEGGER's single-board gang programmer with eight independent programming channle. | |||
* [[Flasher ATE2|Flasher ATE2 in this Knowledge Base]] | |||
* [https://www.segger.com/products/production/flasher/models/gang-programmer-flasher-ate/?mtm_campaign=kb&mtm_kwd=FlasherATE Flasher ATE2 on segger.com] | |||
==== Flasher Portable PLUS ==== | |||
Flasher Portable PLUS is SEGGER's handheld programmer that is compatible with all types of MCUs and flash devices for maintenance purposes. | |||
* [[Flasher Portable PLUS V1|Flasher Portable PLUS in this Knowledge Base]] | |||
* [https://www.segger.com/products/production/flasher/models/flasher-portable-plus/?mtm_campaign=kb&mtm_kwd=FlasherPortablePlus Flasher Portable PLUS on segger.com] | |||
==== Flasher PRO ==== | |||
Flasher PRO is SEGGER's programmer for all types of MCUs and flash devices. | |||
* [[Flasher PRO|Flasher PRO in this Knowledge Base]] | |||
* [https://www.segger.com/products/production/flasher/models/flasher-pro/?mtm_campaign=kb&mtm_kwd=FlasherPRO Flasher PRO on segger.com] | |||
==== Flasher Compact ==== | |||
* [[Flasher Compact V5|Flasher Compact in this Knowledge Base]] | |||
* [https://www.segger.com/products/production/flasher/models/flasher-compact/?mtm_campaign=kb&mtm_kwd=FlasherCompact Flasher Compact on segger.com] | |||
=== | ==== Flasher Hub ==== | ||
Flasher Hub is SEGGER's gang programmer. | |||
* [[ | * [[Flasher Hub|Flasher Hub in this Knowledge Base]] | ||
* [ | * [https://www.segger.com/products/production/flasher/tools/flasher-hub/?mtm_campaign=kb&mtm_kwd=FlasherHub Flasher Hub on segger.com] | ||
=== | ==== Flasher Secure ==== | ||
==== [[ | Flasher Secure is SEGGER's security-oriented programmer for all types of MCUs. | ||
* [ | * [[Flasher Secure|Flasher Secure in this Knowledge Base]] | ||
* [https://www.segger.com/products/production/flasher/models/flasher-secure/?mtm_campaign=kb&mtm_kwd=FlasherSecure Flasher Secure on segger.com] | |||
= | <br clear=all> | ||
==== | == Miscellaneous == | ||
=== Measuring CPU Performance === | |||
This Knowledge Base article explains how to easily calculate CPU performance. | |||
[[HowTo_Measure_CPU_Performance | HowTo Measure CPU Performance]] | |||
Latest revision as of 12:08, 24 June 2025
Welcome to the SEGGER Knowledge Base
The SEGGER Knowledge Base was created to answer questions about embedded systems in general, to explain terms used in this context ( Knowledge Base for Technical Terms), and to serve as a repository for advanced information that is related to SEGGER products.
The Knowledge Base is a work in progress, and it is continually updated, improved, and curated exclusively by SEGGER experts. To send feedback, please contact info@segger.com.
Technical Terms
This part of the Knowledge Base explains terms often used in the field of embedded computing systems or "embedded systems." The aim of the Knowledge Base is to provide a useful resource for engineers, students, and hobbyists working with embedded systems, particularly with regard to microcontrollers, the C and C++ languages, and some assembly language.
Things are explained from a programmer's perspective, and, where possible, useful examples of code are provided. Examples of some of the terms explained are CPU, CRC, Embedded System, Interrupt, Microcontroller, and Watchdog. The Knowledge Base for technical terms has its own page: Click here.
Debug and trace probes
Debug and trace probes enable verification and debugging of embedded systems while they are running. The probes connect the embbedded system with the computer being used for development. This section is dedicated to SEGGER's product portfolio and related technology.
J-Link and J-Trace
SEGGER J-Links are the most widely used line of debug probes available today. They've proven their value for more than 15 years.
J-Trace PRO defines a new standard for trace probes. It enables streaming trace on Cortex-M-, Cortex-A-, and Cortex-R-based targets with ETM.
- J-Link & J-Trace in this Knowledge Base
- J-Trace on www.segger.com
- J-Link on www.segger.com
- Technical support
Software development tools
Software tools are tools running on a computer used for developing embedded systems. They include tools for editing source code, building firmware, verifying functionality, and locating bugs. This section is dedicated to SEGGER's product portfolio and related technology.
Embedded Studio
SEGGER Embedded Studio is a complete all-in-one solution for managing, building, testing, and deploying embedded applications.
SystemView
SEGGER SystemView is a real-time recording and visualization tool for embedded systems that reveals the true runtime behavior of an application, going far deeper than the system insights provided by debuggers.
Ozone
Ozone is a full-featured graphical debugger and performance analyzer for embedded applications.
SEGGER Compiler
The SEGGER Compiler is a powerful C/C++ compiler for generating code for 32-bit ARM targets.
Embedded software
This section describes all libraries, middleware, and software packages used as building blocks for an embedded system's firmware.
This section is dedicated to SEGGER's product portfolio and related technology. SEGGER's embedded software has been deployed in billions of devices.
embOS
embOS is a Real Time Operating System (RTOS) by SEGGER.
emCompress
emCompress is a collection of software libraries that enable data compression and decompression on, but not limited to, resource-constrained devices.
emCrypt
emCrypt is a secure and efficient implementation of essential cryptographic algorithms specifically designed for embedded systems.
emFile
emFile is a reliable file system for non-volatile and removable memories.
emFloat
emFloat is a performance-optimized, floating-point library for microcontrollers.
emFTP
The emFTP file-transfer protocol (FTP) server is an optional extension that adds an FTP protocol to the stack.
emLib
emLib is a collection of software modules (cryptographic modules, data integrity checks) for different purposes.
emLoad
emLoad is a bootloader for firmware updates.
emModbus
emModbus is SEGGER's implementation of the Modbus protocol. It supports communication via UART (ASCII, RTU) and Ethernet (Modbus/TCP and Modbus/UDP), and it is capable of communicating with any Modbus-compliant device.
emMQTT
emMQTT provides the client functionality of the Message Queue Telemetry Transport protocol to a stack.
emNet
emNet is the industry-leading IP stack for embedded systems.
emSecure
emSecure is a software solution for embedded systems for securely authenticating digital assets.
emSSH
emSSH offers the ability to establish a secure connection to any server application in a product.
emSSL
emSSL is an implementation of SSL (Secure Sockets Layer), now called TLS (Transport Layer Security) for Embedded Systems by SEGGER.
emUSB-Device
emUSB-Device is high-performance USB-device software that is specifically designed for embedded systems.
emUSB-Host
emUSB-Host is USB-host software that is specifically designed for embedded systems.
emWeb
emWeb provides easy-to-use graphical interfaces for control or data acquisition.
emWin
emWin is an embedded GUI solution that enables the creation of highly efficient and high-quality graphical user interfaces on any embedded system.
IoT Toolkit
The IoT Toolkit is a collection of libraries that enables communication with modern IoT-based environments and devices.
SEGGER Runtime Library
The SEGGER RunTime Library converts any GCC-based toolchain into an option for use in professional-level development. It is used in SEGGER's Embedded Studio IDE, and it has proven its value over the course of years.
- SEGGER RunTime Library in this Knowledge Base
- SEGGER Runtime Library product page on segger.com
- SEGGER Floating-Point Library in this Knowledge Base
Production tools
Flasher
SEGGER's in-circuit flash programmers are fast, robust, reliable, and easy to use.
Whether a user's focus is on size, flexibility, portability, security, or mass production, the SEGGER Flasher Family has the perfect programmer for the task at hand.
- Flasher in this Knowledge Base
- Flasher on www.segger.com
- Flasher User Manual
- Flasher Hub-12 User Manual
- J-Flash User Manual
- Technical support
Products
Flasher ARM
Flasher ARM is SEGGER's programmer for all ARM-core MCUs.
Flasher ATE
Flasher ATE is SEGGER's gang programmer.
Flasher ATE2
Flasher ATE2 is SEGGER's single-board gang programmer with eight independent programming channle.
Flasher Portable PLUS
Flasher Portable PLUS is SEGGER's handheld programmer that is compatible with all types of MCUs and flash devices for maintenance purposes.
Flasher PRO
Flasher PRO is SEGGER's programmer for all types of MCUs and flash devices.
Flasher Compact
Flasher Hub
Flasher Hub is SEGGER's gang programmer.
Flasher Secure
Flasher Secure is SEGGER's security-oriented programmer for all types of MCUs.
Miscellaneous
Measuring CPU Performance
This Knowledge Base article explains how to easily calculate CPU performance.