Hello everyone, I hope you all are doing great. In today's tutorial, we will have a look at How to use Virtual Terminal in Proteus ISIS. It's our 5th tutorial in Proteus Series. I will first explain what is virtual terminal and then we will have a look at its uses and performance in Proteus ISIS.
Virtual Terminal is an important tool available in Proteus and it comes quite in handy while working on serial modules i.e. GSM, GPS, XBee etc. So, let's get started with Virtual Terminal in Proteus.
What is Virtual Terminal ?
Virtual Terminal is a tool in Proteus, which is used to view data coming from Serial Port (DB9) and also used to send the data to Serial Port. In windows XP, there's a built in tool named Hyper Terminal, which is also used for the same purpose but in windows 7 there's no such tool, so for windows 7 users this virtual terminal is quite a great comfort. If you guys don't know about serial port then I would suggest you to read this tutorial to get better idea of serial port:
I have posted many tutorials on my blog in which I have communicated over Serial port using different software. For example, you can check this Serial communication in MATLAB and can also have a look at Serial Communication in Visual Studio 2010. As serial communication is too common, so almost every microcontroller supports Serial communication. Arduino UNO has builtin single serial port at its pins 0 and 1, while Arduino Mega 2560 has built in four Serial ports in it. Similarly, PIC Microcontroller also supports Serial port and it is also available in 8051 Microcontroller.
Uses of Virtual Terminal
Virtual Terminal in Proteus, as I explained above, is used to send or receive data to or from a serial port. Serial port is a 9 pin port which is mostly find on the computers and is used in Embedded System Projects for data communication. Normally in student projects, data is sent from hardware to computer via serial port and then user design some application on their computer to view that data in some represent-able form.
Now, in projects there are some testing steps which are quite helpful, if we use them properly, and these testing steps require some tools in order to test the process. Like, suppose some student have designed the hardware to send the data to the computer and have also design its application to receive it and now when he tests it he didn't receive any data. At that point student got tensed and don't know where's the error so at that point there's may be some error in the hardware or may be in the software.
Now, in order to be sure he need to test both of them separately and here is the point where virtual terminal is used. First connect your hardware with the computer and then run the hardware and check whether you are receiving data on the virtual terminal or not. If you are receiving it, means your hardware is okay and the problem is in software side and if you are not means your hardware is not so good.
Whenever I start working on some projects, I always make sure that I am going in right direction like if I have to made this project then after completing my hardware, I will first check it via this virtual terminal and once I got sure that my hardware is okay then I will move to the software part. If you are gonna design the hardware then I think you must check Serial communication with 8051 Microcontroller, which is also designed in Proteus ISIS software and the data is displayed using the same virtual terminal.
There are also many other applications of this terminal like suppose you wanna design some circuit in Proteus which involves serial port then you can add this terminal on your circuit and can test it before going to the hardware, which we will shortly see below. So, now let's get started with Virtual Terminal in Proteus.
How to Use Virtual Terminal in Proteus ISIS?
First of all open the Proteus ISIS and click on the P button to search for the components, as we seen in previous tutorials.
Now in the search box type "COMPIM" , when you search this a result will show up as shown in the below figure:
After Selecting this, click OK to add this component in the database.
COMPIM is the serial port in Proteus and using its properties we can assign any COM pin of our computer to it and it will behave like that pin. We will change the properties shortly.
Now, click on the Virtual Instrument Mode and then on the Virtual Terminal as shown in the below figure and add it in the Proteus workspace.
Now join the TXD pin of COMPIM with the TXD pin of Virtual Terminal and RXD with RXD as shown in the figure below:
Now, double click on the COMPIM to open the Properties menu and set the properties as shown below:
I have selected COM1 and my baud rate is 9600, you can set it whatever you want like if you are using the COM3 then set the port to COM3 and baud rate of your own choice.
Similarly open the properties of the virtual terminal and make sure that the baud rate is same in both the cases.
Now connect your hardware with the computer and play the simulation. Again make sure that the port which you have selected for the COMPIM is same port with which you have attached your hardware.
After you play the simulation a black window will open up which will show the data coming from your hardware to the COM1 pin as shown below:
This black box is actually the Virtual Terminal which is showing data coming from my hardware.
If you play the simulation and this Virtual Terminal doesn't pop up then right click on the Virtual Terminal Component and then click on Virtual Terminal which will be at the end in the options and this black window will open up.
I think you guys have got much of the idea of this Virtual Terminal in Proteus ISIS. If you have any problem anywhere, ask in comments and also subscribe to our newsletter via email to get these amazing tutorials right into your mailbox. In the next tutorial, I have explained How to use Oscilloscope in Proteus ISIS. Thanks, take care.
I am Syed Zain Nasir, the founder of The Engineering Projects (TEP). I am a
programmer since 2009 before that I just search things, make small projects and now I am sharing my
knowledge through this platform. I also work as a freelancer and did many projects related to
programming and electrical circuitry. My Google Profile+Follow