Application of Proteus in the design of single chip microcomputer system

Publisher:chenxiaohong68Latest update time:2012-01-09 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

1 Introduction
Single-chip microcomputer is an important course for electronics and other related majors, and is widely used in practical engineering. Various types of single-chip microcomputer courses and related experiments and comprehensive designs are offered in major technical secondary schools across the country. In the course design, graduation design and college student electronic competitions of these majors, single-chip microcomputer is also a very important development tool.
With the rapid development of computer technology, the use of EDA software for circuit simulation and design has become a trend. Many colleges and universities have introduced EDA technology in the reform of circuit practice teaching and established EDA laboratories. Equipped with EWB, Pspice, Multisim, Protel, MaxPlus II, SystemView and other related software and supporting hardware. However, these devices are powerless to simulate single-chip microcomputers. The EDA software introduced in this article, Proteus, is very different. Its biggest feature is that it can simulate single-chip microcomputers.
At present, Proteus has been widely used around the world. Thousands of universities abroad, including Stanford and Cambridge, use Proteus as a teaching and experimental platform for electronic engineering. In recent years, it has also spread in China, and some universities are experiencing the unique functions brought by Proteus and applying for university plans [1].
2 Introduction to Proteus
Proteus software is an EDA tool software developed by Labcenter Electronics in the UK, with a history of nearly 20 years. The software integrates advanced schematic layout, mixed-mode SPICE circuit simulation, PCB design and automatic wiring to realize a complete electronic design system. It is a mixed circuit simulation tool, including analog circuit simulation, digital circuit simulation, simulation of microcontrollers and their peripheral circuits, etc.
Proteus software consists of two software, ISIS and ARES. ISIS is a convenient electronic system simulation platform software, and ARES is an advanced wiring editing software [2]. ISIS is an easy-to-use and powerful schematic drawing tool that integrates SPICE simulation models and has a huge library structure of more than 8,000 components. ARES can generate PCB layout from ISIS simulation schematics.
Proteus supports many common microcontrollers, such as PIC series, AVR series, 8051 series, etc.; it also supports the simulation of ARM, PLD and various peripheral chips, such as character LCD and RAM based on HD44780 chip; it has debugging functions such as single-step operation and breakpoint setting; it can be debugged in collaboration with common compilers such as Keil, IAR, Proton, etc.; it has virtual instruments such as DC ammeter/voltmeter, AC voltmeter/ammeter, oscilloscope logic analyzer, frequency meter, etc., which provide convenience for measurement records in simulation; it supports graphical analysis functions, with graphical methods such as frequency characteristics and Fourier analysis, which can draw simulation curves beautifully.
3 Proteus application examples
The following takes the "digital voltmeter" based on 51 single-chip microcomputer as an example to explain the process of using Proteus and Keil software to design and simulate single-chip microcomputer systems.
First, draw the circuit diagram with Proteus ISIS (note that the peripheral circuit of the minimum system of MCU can be omitted during simulation). And write the corresponding program with Keil C51, and generate a .hex file after compiling correctly. Secondly, "download" the generated .hex file to the 51 chip. The steps are as follows: right-click AT89C51, then left-click, and the property dialog box of the corresponding component will appear. As shown in Figure 1, select the .hex file to be added in the "Program File" item of the dialog box. Finally, click the Play button to see the circuit simulation results (as shown in Figure 2): Adjust the size of the sliding rheostat, and the corresponding voltage value will change linearly. The simulation results are completely correct.

Figure 1 AT89C51 component properties box

Figure 2 Proteus circuit simulation effect diagram
In addition, Proteus can also be debugged with Keil. The steps for debugging are as follows:
(1) Copy the VDM51.dll file in the installation directory ProteusMODELS to the C51BIN directory in the Keil installation directory.
(2) Modify the Tools.ini file in the Keil installation directory, add TDRV5=BINVDM51.DLL ("PROTEUS 6 EMULATOR") in the C51 field and save. Note: You do not have to use TDRV5. You can just select a non-repeating value based on the original field. The name in quotation marks is arbitrary.
(3) Open Proteus, draw the corresponding circuit, and select "Use Remote Debug Monitor" in the "Debug" menu of Proteus.
(4) Enter Keil's Project menu Option for Target'Project Name'. In the drop-down menu on the upper right column of the Debug option, select Proteus Driver. Then enter Settings, set the machine IP to 127.0.0.1 and the port number to 8000.
(5) Debug in Keil and view the intuitive results in Proteus. This way you can debug the program just like using an emulator.


From the above examples, we can see that Proteus can be easily connected to the Keil C51 integrated development environment. After the program is compiled, the system simulation combining software and hardware can be performed immediately. Using Proteus simulation, only a few devices are needed to complete the design of single-chip microcomputer systems, ranging from small revolving lanterns and electronic clocks to large motor control systems, which has obvious economic advantages. For students, it is easy to use and can increase their interest in learning. Of course, it has some shortcomings. For example, some component models are not available in the simulation model device library, or some models cannot be simulated due to the lack of simulation files [3].
4 Conclusion
The advantages of using Proteus for single-chip microcomputer system design outweigh the disadvantages. It can solve the problems of insufficient hardware investment and equipment maintenance difficulties in single-chip microcomputer laboratories, overcome the limitations of fixed hardware circuits in experimental boxes and difficult changes in experimental content, and promote curriculum and teaching reforms, and are more conducive to the cultivation of talents.
In the single-chip microcomputer course design and the National College Student Electronic Design Competition, we used the Proteus development environment to train students. Without the need for hardware investment, students generally reflected that learning single-chip microcomputers is easier to accept and improve than simply learning book knowledge. Practice has proved that the efficiency of single-chip microcomputer system design can be greatly improved by using Proteus to simulate and develop the system successfully before actual production. Therefore, Proteus has a high value of promotion and utilization.
References
[1] Wang Ning. Single-chip microcomputer simulation method based on Proteus software [J]. Journal of Shandong Institute of Light Industry, 2007, 21(1): 24-27.
[2] Lin Zhiqi, Lang Jianjun, et al. Single-chip microcomputer visual software and hardware simulation based on Proteus [M]. Beijing: Beijing University of Aeronautics and Astronautics Press, 2006.
[3] Li Haikun. Application of Proteus in single-chip microcomputer course design [J]. Computer Knowledge and Technology, 2006, 12: 208.
Received date: November 14 Revised date: November 25
Author profile: Zong Jingjing (1981-), female, teaching assistant, master student, research direction: single-chip microcomputer and signal processing.

Reference address:Application of Proteus in the design of single chip microcomputer system

Previous article:A revolutionary design for PC keyboards
Next article:Design of intelligent control system for small car based on HCSl2

Recommended ReadingLatest update time:2024-11-16 16:23

A full range of solutions to the "Target not created" problem in KEIL5 compilation - Case 2
Preface When programming in KEIL5, you often encounter many "Target not created", that is, the target cannot be achieved. Therefore, this post is opened to help everyone solve these problems. The directory is as follows: 1. 2K byte limit error ERROR: RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT or ADDRESS SP
[Microcontroller]
A full range of solutions to the
Keil MDK (LPC2387) compilation warnings and error solutions
This LPC2387-based KEIL version program is downloaded from CSDN network resources, thanks to this friend for sharing. However, after the first compilation, there are 8 warnings and no errors. After modifying the warning, other warnings will appear, and then modifications will be made, with explanations for each warn
[Microcontroller]
How to solve the problem of "No target connected" when KEIL is displayed
When learning with STM32F051Disconvery, when configuring GPIOA, I accidentally configured both ports connected to the SWD bus as outputs. This is terrible. I can no longer use SWD to simulate or download programs. The solution is as follows:   1. First make sure the target board is powered on. 2. First, press and
[Microcontroller]
How to solve the problem of
Keil C51 extends C language's keyword 14: interrupt
8051/8052 series microcontroller standard vector table: Interrupt number       describe    address              0 External interrupt 0  0003h 1 Timer/Counter 0  000Bh 2 External interrupt 1  0013h 3 Timing counter 1  001Bh 4 Serial Port  0023h 5 Timer Counter 2 (8052)   002Bh Many manufacturers have added
[Microcontroller]
Keil C51 project establishment
When using Keil software, it is in the project created by the software, so create a project: start the journey of program development: 1. Open Keil software, click Project---new project 2. Select a suitable folder in the pop-up dialog box, give the project a name--you can use any name, of course, in order to manage
[Microcontroller]
Keil C51 project establishment
KEIL project target option configuration
Two ways to open target options 1. Click the target option shortcut button, as shown below: 2. Open from the menu, Project - Options for Target, as shown below: 1.Device The first step in creating a new project is to select the device (device). One point to emphasize is that the device can be searched by
[Microcontroller]
KEIL project target option configuration
STM32 study notes--establishment of keil project
1. The functions of the three buttons compiled by Keil A. The first button: Translate translates the currently modified file. To put it simply, it checks for syntax errors. It does not link library files or generate executable files. B. The second button: Build is to compile the currently modified file, which includes
[Microcontroller]
mini2440---Building the debugging and downloading environment under keil for ARM
Off-topic: Recommended compilation environment selection For those who are new to ARM bare metal programming, I would like to remind you about the choice of compilation environment. Currently, there are three mainstream ones: ADS+AXD, KEIL FOR ARM, and IAR FOR ARM. I started using ADS+AXD for learning because it com
[Microcontroller]
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号