(Different from the software programming in the usual mode, the embedded system programming is built on a specific hardware platform, and its programming language is bound to have a strong ability to directly operate the hardware. Undoubtedly, assembly language has such characteristics. However, due to the complexity of the assembly language development process, it is not the usual choice for embedded system development. In contrast, C language, a high-grade low-level language, has become the best choice for embedded system development. During the development of embedded system projects, the author felt the subtlety of C language again and again, and was indulged in the convenience brought by C language to embedded development.
C language embedded system programming practice.pdf)