Embedded Conference Scandinavia

Embedded Conference Scandinavia

Next week is the Embedded Conference Scandinavia [ECS], which takes place in Kista – a suburb of Stockholm, Sweden. This…

Writing portable/reusable code

Writing portable/reusable code

What are you priorities when writing code? Obviously you need to implement some specific functionality and there may be a…

Bitwise operations on device registers

Bitwise operations on device registers

A lot of embedded software is focused on the control of peripheral devices and this can present some interesting challenges….

Take a break – the break statement in C

Take a break – the break statement in C

It is a given that structured programming – in one form or another – is a Good Thing. For years,…

Variable declarations in C – plenty of pitfalls

Variable declarations in C – plenty of pitfalls

It is widely felt that C is a very good language for embedded applications, as it is expressive, compact and…

Video blog: volatile keyword in embedded software

Video blog: volatile keyword in embedded software

My latest video blog is now available. I am talking about the volatile keyword in C/C++, which is of vital…

Waiting for something to happen in an embedded system – a while loop

Waiting for something to happen in an embedded system – a while loop

An embedded system is normally a CPU [or some CPUs] interfaced to a number of peripheral devices. The software processes…

Comments and debug code

Comments and debug code

I have frequently asserted that one of the most important attributes – maybe the most important attribute – of code…

Writing safer, clearer C – MISRA C

Writing safer, clearer C – MISRA C

Embedded developers often bemoan the fact that no programming language is ideal for their particular needs. In a way, this…