C programming for embedded system applications