Course Objectives:This course aims to provide beginners with an introductory guide to embedded development, helping everyone understand the basic concepts of embedded systems, learning paths, and how to choose the appropriate learning direction based on personal needs.
1. Introduction to Embedded Development
An embedded system is a specialized computer system that is typically embedded within other devices to control, monitor, or execute specific tasks. It is widely used in fields such as smart homes, industrial automation, medical devices, and automotive electronics. Learning embedded development not only enhances technical skills but also provides more opportunities for future career development.
STM32 is a type of microcontroller

2. Motivations for Learning Embedded Development
Motivations for learning embedded development vary from person to person, with common reasons including:
- Future Employment NeedsEmbedded development is a popular direction in the current technology field, and mastering relevant skills can provide more career options.
- Hobby, Making Small ProjectsMany students are interested in hardware and programming and hope to realize their creative projects through embedded development.
- To Complete Specific Tasks or ProjectsSome students may need to quickly master embedded development skills due to coursework, competitions, or job requirements.
- Other IdeasWhether for interest or other reasons, embedded development can open a new door for you.
3. Recommendations for Different Learning Directions
1. Preparing for Employment
- Formal Education:If you are a student in electronics, computer science, or related fields, it is essential to build a solid foundation by diligently studying your school courses. Basic knowledge of embedded development includes C language, microcontroller principles, and operating systems.
- Recommended Learning Content:
- Popular embedded platforms such as STM32 (51 microcontroller, MSP432, and possibly domestic chips like CH32)
- Embedded operating systems (e.g., FreeRTOS, uC/OS)
- Basic hardware circuit design
- Non-Formal Education:If you are transitioning from another field, it is recommended to start learning from basic principles and gradually fill in the professional knowledge.
- Recommended Learning Path:
- Start with simple platforms like Arduino to master basic hardware and programming knowledge.
- Gradually transition to more complex platforms such as STM32 and ESP32.
- Learn about embedded operating systems and hardware design-related knowledge.
- Practical Suggestions:
- Participate in competitions such as electronic design contests, intelligent vehicle competitions, ROBOCOM, and RoboMaster (RM) to accumulate project experience.
- Try to participate in enterprise-level projects or open-source projects to understand the actual development process.
2. Hobby, Making Projects
- Recommended Platforms:
- Arduino:Suitable for beginners, with abundant hardware and software resources and strong community support.
- Raspberry Pi:Suitable for learning Linux embedded development and IoT projects.
- ESP32:Suitable for learning wireless communication technologies such as Wi-Fi and Bluetooth.
- STM32:Recommended based on Arduino
(Ultimately, it depends on personal preference; if you just want to play, Arduino or MicroPython is still recommended for quick prototyping.)
- Learning Suggestions: Start simple and gradually deepen your knowledge.
- Start with simple projects, such as LED control and sensor data collection.
- Gradually attempt more complex projects, such as smart home control and robotics development.
- Practice hands-on by purchasing development boards for practical operations.
3. To Complete Specific Tasks or Projects
- Quick Start Suggestions:
- Select an appropriate development platform based on project requirements, such as Arduino or STM32.
- Refer to open-source projects and tutorials to quickly master relevant technologies.
- When encountering problems, actively consult resources or seek help from the community.
(Specific steps can be found in the subsequent courses.)
5. Learning Tips
- Learn More: Continuously learn new knowledge and pay attention to the latest technologies and trends in the embedded field.
(Knowledge changes rapidly in this era; use AI more and learn in depth and breadth. Depth means having your area of expertise, while breadth means knowing a little about everything, including front-end, back-end, operating systems, big data, and AI.)
- Read More: Refer to excellent open-source projects and tutorials to learn from others’ experiences.
(Look at more open-source projects and read books [open-source technical documentation].)
- Practice More: Practice is key to mastering embedded development; accumulate experience through actual projects.
(Write more programs and work on projects.)
6. Interaction and Feedback
If you have any questions or other ideas, feel free to leave a message in the comments section, and we will do our best to answer you. Additionally, we will be launching more detailed tutorials on platforms like Arduino and STM32, so please stay tuned.