0 Introduction
Embedded system is a comprehensive technology involving computer architecture, computer software and other related electronic technologies. At present, embedded system technology has become one of the most popular technologies, and various enterprises have a strong demand for talents with embedded system design and development capabilities. In the embedded system courses currently offered by various universities, the commonly used microprocessors are 8-bit single-chip microcomputers 8051, 32-bit ARM7TDMI core Philips NXP LPC series and Samsung S3C4480 chips. First, use the single-chip microcomputer as an introduction to embedded system design learning. After mastering the basic concepts and design methods, the ARM7 core CPU is used as a "more powerful single-chip microcomputer" and seamlessly upgraded to the popular ARM platform.
In traditional embedded system teaching, classroom sessions are mostly pure theory teaching, and the practical sessions generally use traditional experimental boxes. There are fewer experimental projects, fixed content, and insufficient innovative means, making it difficult to create a good experimental platform for students' innovative practice. In view of the problems faced in the traditional teaching model, the introduction of Proteus software in classroom teaching, experiments, graduation projects, and innovative designs can achieve twice the result with half the effort.
1 Introduction to Proteus Software
Proteus is an embedded system simulation and development platform developed by Labcenter, a British company. The software has the following features:
(1) Capable of intelligent schematic layout; MCU software debugging and co-simulation of MCU and peripheral circuits; meeting the standards of MCU software simulation system.
(2) Support common MCU types and Philips ARM7 (LPC series) processors and common peripheral devices such as 8255, ADC0809.
(3) It can be combined with KeilμVersion 3 and ADS1 integrated development environments to compile programs written in assembly and C languages and perform system simulation combining software and hardware.
2 Application of Proteus software in teaching
In the teaching process, teachers can move the virtual experiment platform established by Proteus and Keil into the classroom, integrate practical teaching with theoretical teaching, and thus improve the teaching effect. The following is an actual classroom case.
When describing the external interrupt handling process, Proteus and Keil are used together. Through simulation steps, the software execution process of the MCU handling interrupts and the changes in the internal resources of the MCU can be presented to students in an intuitive and clear way, thus bringing about an effect that is difficult to achieve with pure theoretical analysis. The assembly program is as follows:
Running Protues at full speed, you can see that when the button of the circuit in Proteus is closed, the P3.2 pin generates a falling edge, PC=0x0003H, pointing to the AJMP INTO transfer instruction, the stack pointer SP=0.9H, and the 08H and 09H units of the data memory store 01H and 05H, that is, the address of the next instruction. From this, students can know that when an external interrupt request occurs, the program will automatically save the address of the breakpoint, and the program will transfer to the entry address of the interrupt service program. Since it is an interrupt request generated by external interrupt 0, the program will transfer to the entry address 0003H unit of external interrupt 0. AJMP INT0 is a transfer instruction, so the program will transfer to the label INT0, which is the real interrupt service program. With the execution of the CPL P1.0 instruction, the light-emitting diode in the Pro-teus circuit diagram will change its current state. When the program executes RETI, PC=0x0105H, indicating that after the interrupt program is executed, the program returns to the breakpoint position. The RETI instruction can take out the breakpoint address and send it back to the program counter PC. At this point, a complete interrupt handling process is completed.
Through the example of external interrupt execution, it can be seen that by using the experimental platform established by Protues and Keil in the classroom, many abstract concepts can be introduced to students in an intuitive way, so that students can not only observe the changes in the I/O ports and memory inside the microcontroller when the software is executed, but also observe the process of interaction between the software program and the peripheral circuit.
3 Application of Proteus software in experiment and course design
The existing MCU experimental teaching usually includes two parts: in-class experiments and course design. All these experiments are completed on the experimental box. Due to the fixed structure and limited resources of the hardware experimental box, students cannot integrate the knowledge they have learned when doing experiments. Therefore, when it comes to the course design stage, many students cannot complete comprehensive experiments. The use of Proteus software simulation can make up for the shortcomings of hardware experiments. The Proteus-based experiment can be divided into the following three stages and completed step by step.
(1) Verification phase. The main purpose is to familiarize students with the Proteus and Keil software environments and to give them a perceptual understanding of the MCU virtual system simulation. The experimental instructions provide the experimental tasks and requirements, Proteus experimental schematics, experimental operation steps, multimedia courseware, program flow charts, and program source codes. Students perform experimental operations and experimental debugging according to the experimental steps or experimental operation videos, and observe the program running results.
(2) Design phase. The main purpose is to develop students' ability to draw system schematics with Proteus and to design source code with Keil. The experimental instructions provide the experimental tasks and requirements, as well as the experimental schematics. Students use Proteus to draw the hardware circuit diagram according to the experimental schematic, design the program according to the experimental requirements, write the source code in the Keil environment, debug successfully, and load the program into the Proteus hardware diagram for simulation. After the simulation is successful, the hardware circuit is built on the experimental box according to the experimental schematic, the program is loaded, the experimental phenomenon is observed, and the results are compared with the simulation results.
(3) Comprehensive stage. The main purpose is to stimulate students' learning interest and subjective initiative, and improve their innovation ability. Students design hardware circuits (including CPU selection, component selection and parameter setting, circuit connection, etc.) according to the experimental tasks and requirements and draw Proteus hardware schematics; they design software according to the hardware functional modules (including system principle block diagrams, program flow charts and source code writing, etc.). After the hardware and software designs are completed, they are debugged together, making full use of the joint simulation function of Proteus and Keil to promptly discover and correct errors in hardware circuits or program source codes. After the system simulation is successful, the physical object is produced.
In the course design phase, students are required to draw hardware circuit diagrams in Proteus and write programs in Keil. At the same time, they should consider the resources of the experimental box as much as possible when designing the hardware circuit, so that the programs written in Keil can be well transplanted to the experimental box. In this way, students can carry out course design and research at any time, and after the joint simulation verification is successful, they can enter the laboratory and use the experimental box for further verification.
Students can choose the most suitable MCU for different applications, instead of being limited to the 51 series MCUs often explained in class. After the joint simulation is successful, students can then carry out circuit welding, system debugging and program solidification to avoid waste caused by incorrect design plans. At the same time, it can also enable students to understand the latest developments and achievements of scientific and technological development related to this course, master MCUs that they are not familiar with, and improve their experimental and development capabilities.
4 Application of Proteus software in graduation design and innovative design
In the graduation project, the design of single-chip control class has brought certain difficulties due to the short time, large number of people and lack of experimental equipment. After using Proteus simulation software, only one computer is needed to carry out the work. Students can complete the early simulation work on the computer using Proteus simulation software, and then enter the laboratory for on-site debugging. On the one hand, it can alleviate the problem of insufficient equipment and will not affect normal teaching.
In project research and innovative design, using Proteus software for auxiliary design can shorten the R&D cycle and reduce the investment in hardware costs. Dynamic component simulation model is a characteristic dynamic model of Pro-teus, with animation effects, such as LED light-emitting tubes, key switches, etc. This is the characteristic of Proteus. However, some dynamic models are not available in the library. Proteus gives users a broad space for creation and development in creating dynamic models. Users can design their own dynamic models, showing the infinite charm of Proteus in dynamic simulation. It not only enables human-computer interactive simulation, but also makes the simulation vivid and lively, creating a situation of course teaching and product development that is extremely close to reality.
5 Conclusion
Using Proteus simulation software as the teaching platform for microcontrollers and ARM can make full use of the existing equipment in the computer room, reduce the hardware maintenance of experimental equipment and the experimental environment, and be very close to the actual engineering system, shortening the distance between learning and employment.
In recent years, Proteus simulation software has been applied in teaching, course design, graduation design, and Shandong Province College Student Electronic Design Competition. This development environment has been used to train students. Without the need for hardware investment, students generally report that it is easier to accept and improve than simply learning book knowledge in the past, and it has increased a lot of practical experience. Practice has proved that this teaching method can not only reduce costs, but also has obvious economic advantages and has a high promotion value.
Previous article:Research on Fast Algorithm for Audio Frequency Spectrum Display Using Single Chip Microcomputer
Next article:Design of data forwarder based on MSP430F149
Recommended ReadingLatest update time:2024-11-16 20:46
- Popular Resources
- Popular amplifiers
- MCU C language programming and Proteus simulation technology (Xu Aijun)
- Single-chip microcomputer C language programming and simulation
- 100 Examples of Microcontroller C Language Applications (with CD-ROM, 3rd Edition) (Wang Huiliang, Wang Dongfeng, Dong Guanqiang)
- Single chip microcomputer control technology (Li Shuping, Wang Yan, Zhu Yu, Zhang Xiaoyun)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- MATLAB simulation model for parameter identification of three-phase asynchronous motor at static state
- 【CC1352P Review】What is a Sensor controller?
- The shell of the pycom development board
- Common switching power supply transformer design core size and AE area
- Thank you + my family, girlfriend, and friends
- [2022 Digi-Key Innovation Design Competition] Material Unboxing—STM32F750, nano ble 33
- Create a new IKS01A3 project in STM32CubeMX
- Difficulties that need to be paid attention to in the design of single chip microcomputer circuits
- [phyBOARD-i.MX 8M Plus Development Board] Evaluation 2: System power-on, terminal command test
- How to use LM337 to generate negative voltage