Check out the the newest edition of Software Engineering for Embedded Systems: Methods, Practical Techniques, and Applications where ICS' Joe Hamman has contributed the chapter titled "Basic Programming Techniques." This chapter presents the details and techniques needed to create, build and deploy a basic, embedded runtime image.
The book provides the techniques and technologies in software engineering to optimally design and implement an embedded system. Written by experts with a solution focus, this encyclopedic reference gives an indispensable aid on how to tackle the day-to-day problems encountered when using software engineering methods to develop embedded systems. New sections cover peripheral programming, Internet of things, security and cryptography, networking and packet processing, and hands on labs. Users will learn about the principles of good architecture for an embedded system, design practices, details on principles, and much more.