Exploration and Practice of “Embedded System” Engineering Teaching Mode Based on CDIO Engineering Education Mode

Embedded system is an interdisciplinary, profound foundation and practice-oriented course; at present, in the traditional teaching mode, embedded systems in colleges and universities generally have problems such as disconnected theory and practice, outdated assessment methods, and low enthusiasm of students. Arming to cultivate compound embedded development talents that meet the needs of enterprises, based on CDIO engineering education mode, this paper analyzes the characteristics of the “Embedded System” course, and takes engineering project development practice as the dominant idea to discuss the course system, teaching material construction and teaching method reform of “Embedded System.” By designing a complete project teaching system, closely combines the theoretical teaching and practice of the course. Multiple rounds of teaching practices show that through the project-driven teaching method, students’ engineering practice ability can be significantly improved, so that students can deeply master the basic principles of embedded systems, and possess the engineering development ability of embedded products at the same time, thus meeting the needs of enterprises for innovative and interdisciplinary talents.


Introduction
CDIO engineering education mode is the latest achievement of international engineering education reform (Dou, 2019). In 2010, its founder Edward Crawley won the "Bernard M. Gordon Prize" of the American National Academy of Engineering, which is known as the "Nobel Prize in Engineering." CDIO engineering education mode is a new type of education mode jointly developed by four strong engineering schools, including MIT of the United States and KTH of Sweden, in 2000, which represents the development trend of contemporary higher engineering education (Liv, Zhu, Cui, & Tian, 2019). The urgent task of China's higher engineering education is to train Chinese engineers in line with international standards as soon as possible. However, there are still some problems in China's engineering education practice, such as emphasizing theory but neglecting practice, focusing individual academic ability but ignoring team spirit, appreciating knowledge acquisition, but neglecting the cultivation of pioneering and innovative spirit (Liu & Zhang, 2018).
With the widespread application of embedded technology in intelligent communication, E-commerce, medical equipment, aerospace and other fields, the market demand for talents who master embedded technology is increasing day by day (Tian & Wang, 2016). Under this background, embedded system courses are favored, competitively offered, and listed as the priority orientation of discipline construction and development by many colleges and universities.
Embedded system course is a combination of theory and practice, which pays special attention to the cultivation of students' practical ability. Therefore, CDIO engineering education mode provides a new education mode and method for embedded system course. It takes the life cycle of project conceiving, design, implementation, and operation as the carrier to enable students to learn in practice in a proactive way (Wang & Hong, 2009). Through the way of "learning by doing," the overall quality and innovative spirit of students will be comprehensively improved, so that students can master solid engineering foundation theory and expertise, and meet the needs of the society for innovative senior engineering and technical talents. system (Zhang, Gao, & Lu, 2010), teaching material construction, teaching method, the selection of teaching contents (including hardware platform and software platform), experimental teaching and practice organization. How to apply the advanced CDIO engineering education concept to the curriculum construction of the "embedded system" is a problem worth discussing. According to the characteristics of embedded system course, this paper introduces CDIO engineering education concept into course teaching, which enables students to better master theoretical knowledge of the embedded system, strengthens students' practical ability, closely combines theory and practice, enhances students' interest in learning, and achieves good teaching results.

The Course Characteristics of "Embedded System"
According to the IEEE definition, an embedded system is a device used to control, monitor, or assist the operation of equipment, machines, or factories. The main characteristics of the embedded systems are the combination of software and hardware and application-oriented. Its three essential elements include embed ability, specificity, and the computer system. The commonly accepted definition of embedded system in China is that it is an application-centered, computer-technology-based specific computer system with tailorable software and hardware, and adapts to the strict requirements of application systems on function, reliability, cost, volume, power consumption.
Embedded system product development requires designers to acquire strong comprehensive theoretical knowledge and practical ability and is an intensely comprehensive course with high knowledge coverage. It involves not only hardware knowledge such as analog circuits, digital circuits, microcomputer principles, and interfaces, but also software knowledge such as operating systems and application programs. However, the working principle of embedded systems is complex, involving various kinds of software, and its development process is extremely tedious and complicated, which demands assembly language, C/C++, Linux, ADS, Keil MDK, and other software. At the same time, because it is an application-oriented software and hardware co-design, embedded system course learning pays more attention to practicality and needs repeated practice and summary to improve the system performance index, whether it is software programming or hardware design. Therefore, for this course, heavily relying on classroom explanation and experimental teaching in the course will not be conducive to fully cultivating students' practical ability or stimulating students' innovative potential, and it is difficult to achieve the expected teaching effect (Chen & Zhu, 2010).

The Current Situation and Main Problems of "Embedded System" Teaching
Compared with other engineering courses, the "Embedded System" course has the following two remarkable characteristics: (1) strong discipline comprehensiveness; (2) intense practicableness. "Embedded System" is a practical course aiming at engineering applications. Traditional embedded system classroom teaching cannot analyze and design courses from a professional perspective or meet the requirements of students of different majors for embedded system learning (Li, Wang, & Xue, 2010). There are mainly the following reasons for the unideal teaching effect in teaching practice: 1) The traditional curriculum organization structure takes subject knowledge as the center, lays particular stress on theoretical study, and lacks the cultivation of the ability to solve practical problems. The traditional teacher-centered teaching mode, which emphasizes theoretical, knowledge-based and written teaching methods and focuses on the scientific principles and abstract applications of embedded systems, which cannot satisfy and adapt to the characteristics of the course itself; 2) The lack of classic teaching materials. Today, there are many kinds of embedded system teaching materials and embedded microprocessors that commonly have the shortcomings of strong theory and poor operability, bringing difficulties to the construction of embedded system teaching materials; 3) In the experimental teaching process, the biggest problem is the unreasonable arrangement of experimental contents, including more confirmatory experiments, less comprehensive developmental experiments, few design experiments to cultivate the ability of independent innovation by students' innovative practice and scarce experiments that embody the most advanced technologies in the relevant field; 4) The lack of an embedded system teaching platform with high-cost performance and strong practicality. At present, most colleges and universities use complete sets of teaching experiment boxes provided by enterprises, which not only is costly but also severely limits students' ability to develop and design independently; 5) The allocation and management system of laboratory resources in some colleges and universities are unreasonable. Some colleges and universities are slow to update the equipment in the experimental teaching process, which significantly affects students' learning and understanding of the latest equipment and ies.ccsenet.org International Vol. 13, No. 6;2020 technology. Moreover, the laboratory management system in many colleges and universities is inflexible and rigid, which allows students limited time to operate experimental equipment and carry out exploratory learning.

Initial Exploration of "Embedded System" Teaching Reform Based on CDIO Engineering Education Mode
Given the existing problems in embedded system education in colleges and universities, the author's teaching team has made some attempts in the following aspects to cultivate compound embedded system talents that meet the needs of enterprises.

Construct CDIO Mode Curriculum Teaching System
According to the idea of CDIO engineering education mode, the embedded system curriculum teaching system is shown in Figure 1. Its content not only involves the most basic knowledge such as hardware and software but also covers the comprehensive design of the embedded system and the training of actual engineering projects, forming a complete embedded system knowledge system systematically and consistently.

Choose the Mainstream and Easy-to-Practice Teaching Experiment Platform
There are various embedded systems teaching experimental platforms in colleges and universities. To adapt the software and hardware platforms to the learning needs of our students, the mainstream experimental platforms on the market are comprehensively analyzed and compared, and the finally chosen platforms are: (1) The punctual atom STM32F103 development board is chosen as the primary hardware experimental platform. STM32F103 chips of Cortex-M3 series are easy to learn and use, and are widely adopted in cost and power-sensitive embedded terminal products; (2) RealView MDK is selected as the embedded software development environment. The MDK-ARM integrates the most advanced technologies in the industry, including the uVision4 integrated development environment and RealView compiler RVCT, which supports ARM7, ARM9, and the latest Cortex-M3/M1/M0 core processors to configure start-up codes automatically, and integrates Flash burning module with powerful functions such as Simulation device simulation and performance analysis. Compared to ARM's previous toolkit ADS, the latest version of the RealView compiler can improve performance by more than 20%; (3) μC/OS-II is adopted as the mainly used embedded operating system in teaching. The μC/OS-II operating system code is short and pithy, easy to read and understand, and also involves real-time kernel, task management, communication synchronization between tasks, and other functions. It can meet the learning demands of most students in mastering the principles of the embedded operating systems, multitask programming methods, synchronization and communication methods between tasks.

Exploration and Attempt of Non-standard Coursebooks
At present, there are a large number of teaching materials on embedded systems, and most of them have similar structures. This course selects the punctual atom STM32F103 experimental development board, and its experimental part has detailed and completes documents and is equipped with easy-to-understand video tutorials. Therefore, there is no designated teaching material in the classroom teaching, but only several reference teaching materials are recommended to allow students to choose freely. At the same time, students are encouraged to search for materials on the Internet independently. By motivating students to select teaching materials exploratively, students start to establish practical methods to find relevant materials voluntarily.

Reasonable Allocation of Class Hours
The Embedded system is a highly practical course, and it will be more efficient to bring some theoretical knowledge to the practical development process. Therefore, the increase in the proportion of school hours for development practice is implemented. Theoretical hours only account for about 1/8 of the total class hours, and mainly, the most basic knowledge and principles will be taught. The remaining class hours are all arranged as engineering practice development classes, and the theories directly related to engineering development and practice are explained through project cases.

Project-Driven Hierarchical Teaching
Embedded system product development requires designers to possess strong comprehensive theoretical knowledge and practical ability. According to the actual engineering requirements of enterprises, The teaching process adopts project-driven teaching method combined with CDIO mode ability outline, and hierarchical actual engineering projects are selected to guide students to analyze the conceiving, design, implementation, and operation of the projects and enable students to complete the series of general embedded development parts such as "requirement analysis, system design, system implementation, system testing, and system release" in the form of teams. At the same time, according to the characteristics of students' uneven level of professional knowledge, the experimental projects are classified according to the difficulty, namely, basic category, extended category, and innovative category, as shown in Table 1. Basic experiments belong to confirmatory experiments with low difficulty, which can meet the most basic demands of applied development ability training and are experimental projects that must be mastered. Extended experiments are exploratory and difficult and can meet the requirements of embedded system development on the main development capabilities of developers. The content of innovative experiments is mainly derived from the horizontal scientific research projects of teachers. Students take advantage of the extracurricular time to conduct experiments in the laboratory, while teachers only perform project management and give necessary guidance to guide students to learn relevant knowledge points, form project teams to carry out development practice attempts and discussions.

Set Up Extracurricular Open Laboratories.
The extracurricular open laboratory makes up for the shortage of practical in-class hours, enables students to have more contact with embedded development equipment and perform exploratory learning, effectively improves students' engineering practice and product development abilities, especially for senior students who conduct embedded course comprehensive design and graduation design. ies.ccsenet.org International Education Studies Vol. 13, No. 6;2020

Practical Application and Effect Evaluation
The courses the author has taught in the past two years include electronic technology, principle and application of single-chip microcomputer, comprehensive design of the electronic system, embedded system and relevant experimental courses, which not only involve the most basic knowledge of hardware and software but also cover the comprehensive design of the embedded system and the training of actual engineering projects, forming a complete knowledge system of embedded system systematically and consistently.
In the actual teaching process, the author took CDIO engineering education mode as the guiding ideology and gradually attempted to implement the project-driven teaching method, which effectively improved students' learning enthusiasm, greatly enhanced the teaching effect of the course, and formed a relatively complete teaching system and materials.
Figure 2(a) shows a face recognition sign-in system made by students. The system adopts Raspberry Pi to control the camera to collect image data and output it to the LCD touch screen and uses an optimized algorithm to recognize the faces in the images and compares the preset authorization list in the database to realize the intelligent sign-in function. Figure 2(b) demonstrates a plane drawing system developed by students. The system takes STM32 as the main control core, obtains the drawing track from PC and controls the two-dimensional movement of the brush, intelligently interpolates the brush tracks, and drives the stepping motor through an optimized algorithm, thus realizing complex plane drawing functions. Such practical projects include not only hardware circuit design and software programming but also embedded operating system transplantation, image recognition algorithm, motor drive. The practicality of the project can arouse the enthusiasm of students for autonomous learning and research. The complexity of the project can train students' teamwork and system analysis ability. Finally, students are required to submit summary reports, and students' achievements are assessed by an oral defense of project functions.

Figure 2. Students' project works
In combination with college students' practical innovation projects, students are encouraged to participate in scientific and technological innovation competitions, such as the Freescale Smart Car Competition and the National Undergraduate Electronic Design Contest, as shown in Figure 3. By taking part in science and technology competitions, students can be trained in their ability to design overall projects for practical problems, guided to explore laws and devote themselves to innovation, cultivated in their ability to think and solve problems, stimulated in their initiative and creativity in learning, and improved in their practical ability. Through the study of this course and other related ones, students can improve themselves in multiple ways, including completing course projects, applying for innovative and entrepreneurial projects for college students, participating in subject competitions, graduation design and employment, and most importantly, students are allowed to learn how to design, implement and run a simple embedded system, and have a certain project development background, be competent for embedded development work immediately and obtain clear advantages in the employment of this major.

Conclusion
The "Embedded System" course is a combination of theory and practice, which emphasizes the cultivation of students' practical ability. Therefore, CDIO engineering education mode provides new educational ideas and methods for embedded system course. Based on CDIO engineering education mode, given the problems existing in the current teaching, this paper discussed the course system, the selection of experimental platform, the construction of non-standard teaching materials, and the project-driven hierarchical engineering practice teaching mode. Practice proves that the CDIO teaching mode reform of this course can effectively improve students' comprehensive quality and innovative spirit in embedded product development. Judging from the concept of the national well-rounded education, the project-driven teaching method combining embedded system theory course with project practice has effectively realized well-rounded education and is worth promoting.