Through the study of this course, students can master the basic process, basic knowledge, development environment, software architecture and programming skills of embedded software design, and lay a good foundation for the future embedded learning and embedded system development.
There are maily 12 chapters, and the main contents of each chapter are as follows.
1. Overview: Give an overview of the course content.
2. Overview of Embedded C Programming: This chapter describes how to write embedded programs in C on a platform without an operating system.
3. ARM C Program Optimization: Through the analysis of ARM assembly program to understand how to write efficient C program.
4. The Linux Operating System: Introduction to the history, features and basic operations of the Linux operating system.
5. Linux C Programming Toolchain and Makefile: Introduction to tools for editing, compiling and debugging C programs in Linux environment, and how to write Makefile.
6. Construction of Embedded Software Platform: Introduction to the composition and construction of embedded software platform, and the application design process.
7. File Directory and Memory: File, directory, and memory operations based on Linux C.
8. Processes and Threads: The concepts and basic usage methods of process and thread.
9. Signals: The concepts and basic usage methods of signal.
10. Interprocess communication: Four basic ways to use interprocess communication.
11. Sockets: The concepts and basic usage methods of socket.
12. Module and Driver and the Example of Driver: This chapter describes how to write kernel modules and drivers, as well as code analysis for three actual hardware drivers.
Course resources include 79 teaching videos and extended learning videos, 79 non video materials, 14 sets of exercises, 1 set of final tests, as well as code resources corresponding to all chapters. This course is designed according to 2 classes per week and 2 class hours each. Complete 32 class hours of the course in 8 weeks. It can also be flexibly adjusted to 48 class hours by the teacher.