TECH FOCUS STAGING PAGE
Wireless base stations: the infrastructure that makes “things” go
Coin cells in the era of untethered wireless devices
Selecting the right battery for your embedded application
As embedded power-management strategies become more sophisticated, selecting a battery for both static and dynamic needs, chemistry, temperature, peak demand, energy transfer, and environmental concerns must be considered.
How the right measurements can optimize battery run time
To minimize current consumption, mobile and wireless devices reduce current-drain during idle times. Measurements let you see how those changes take place and make the right design decisions.
Get years of battery life from coin cell based low power devices
Systems which need to use unobtrusive, generally hidden, often inaccessible sensors in places where there’s no power need to consider more effective use of coin cell batteries as well as harvested energy.
Maximize the battery life of your embedded platform
Power-efficient chip and board design techniques are now available as are synthesis tools for clock gating, state retention power gating, and dynamic voltage/frequency scaling. But software needs to be integrated effectively to take full advantage of the hardware
A guide to C++ for C programmers
A bare bones guide to the C++ language for C programmers, excerpted from Software Engineering for embedded systems by Mark Kraeling.
Pre-increment or post-increment in C/C++
Colin Walls of Mentor Embedded explains when to use the pre-increment operator and when to use post-increment, and why that choice matters.
Making the transition from C to C++
Although it has taken almost a decade, the transition from C to C++ is now gaining momentum in many complex software projects, in parallel programming for multicore apps and in hardware generation environments. Here’s a three step strategy for making the transition and migrating code from C to C++.
ARM design on the mbed Integrated Development Environment - Part 2: program design and structure
C/C++ programming methods for developing code for ARM designs using the open source C++-based mbed integrated development environment.
A lightweight logger for C++
Building a lightweight, thread-safe logger that can be redirected to different I/O channels.
Interrupts in C++
An ideal C++ device driver would be a class containing, among other things, the ISR as a member function. But this is harder to achieve than many C programmers assume.
Transitioning from C/C++ to SystemC in high-level design
It's far easier to do architecture design in SystemC than it is to do it in C and C++. If co-designing hardware and software using high-level design methods, much of your work will be done in an architecture design phase in SystemC. Here's why.
Guidelines for using C++ as an alternative to C in embedded designs: Part 1
In this two part tutorial, Colin Walls addresses the well-known barriers to use of C++ by C programmers, and provides some guidelines including cleaning up C and an in-between alternative he calls "C+." First up: Why is C++ not more widely used?
Dive in to C++ and survive
Programmer Christopher White guides you through the hazards of learning the ins and outs of the C++ language, the books to read, the tools to use and how to begin using it effectively in your embedded systems designs.
Linkage in C and C++
Scope determines what you can see within a translation unit. Linkage determines what you can see across translation units.
Moving beyond C-language development with MISRA C++:2008
The new standard MISRA C++:2008 contains important protections for the use of the C++ language and is worth inspecting for suitability in your development environment, whether embedded or system, and whether safety or mission-critical in nature.
A guide to C++ for the cautious embedded programmer
Approached in the right way, the C++ language has many benefits to offer the embedded software developer. Here are some brief guidelines in its use,
highlighting areas of good practice " things to do and things to avoid.
Dynamic allocation in C and C++
C and C++ have strikingly different approaches to managing dynamic
A six step process for migrating embedded C into a C++ object-oriented framework
Using a standard timer, Dirk Braun describes a six step process to migrate embedded C code into a C++ object-oriented framework and create classes that represent a type of on-chip hardware peripheral.
Why C++ is a viable alternative to C in embedded systems design
While C enjoys a good reputation as a strong and powerful language for embedded development, C++ does not have quite such a broad appeal. With today's capable and sophisticated C++ environments this is often an incorrect belief.
Efficiently Coding Communications Protocols in C++
Harvey Sugar describes how to efficiently code communications protocols using C++, using C++ classes to implement a layered protocol and demonstrates how the tasking/queuing model can be separated from the layered implementation.
MCUs combine low cost, ultra-low power, and 32-bit performance for IoT
Renesas Electronics'new RX110 Group of MCUs delivers a combination of ultra-low power consumption and high performance for entry-level 32-bit embedded IoT apps.
Toyota Camry L4 case: the single bit flip that killed
Some of the technical background that led the Oklahoma jury to blame Toyota for a Camry passenger vehicle’s sudden acceleration due to source code flaws in its electronic throttle control.