In this article I will discuss how to simulate circuits with Arduino microcontroller on Proteus(arduino library for proteus simulation). You will learn how to download the libraries of Arduino for Proteus and simulate the codes build in Arduino IDE on Proteus with additional circuits for example diodes, led, transistors and motors etc. So keep reading and enjoy learning
Proteus is a very popular software for simulating the circuit in addition it also provides the flexibility for PCB designing. Proteus can also be very efficiently used for simulating the circuits with Arduino development board as the microcontroller. But Proteus does not have built-in library for Arduino so we have to download the Arduino library for Proteus first. Then we will follow the standard approach for simulating the circuit.
Simulation is a very useful way of imitating the behavior that your physical circuit is intended to show so, by simulating the circuit we can look for any glitches in the code or short circuits in the circuit before actually implementing it. So simulation both saves time and money.
Downloading the Arduino Library:
As I have mentioned earlier we need to download the Arduino library for Proteus before simulating the Arduino circuits. I will discuss here steps for downloading the Arduino Library and installing it in the Proteus.
if you are unable to add Library in Proteus 7 and Proteus 8, then you should have a look at How to add new Library in Proteus 8.
This zip folder will be containing two files. One is called Arduino LIB. And other is Arduino.IDX
Arduino Library for Proteus Simulation Step 1:
Open the web browser and search for Arduino library Proteus.
Arduino Library for Proteus Step 2:
Open the link and download the zip folder. This zip folder will be containing two files. One is called Arduino LIB. And other is Arduino.IDX as we will see in the next step.
Arduino uno Library for Proteus Step 3:
After you have downloaded the ZIP folder extract the files in the folder.
Copy and Paste this folder in the library folder of the Proteus software.
Open the Proteus and the software is ready to be used for simulating Arduino based circuits.
Creating the HEX file:
Once you have written the code in Arduino IDE you need some way to simulate this program in Proteus. This can be done by creating the HEX file of the code and then using this HEX in the Proteus for simulation. I am discussing here the process for creating the HEX file.
arduino hex file Step 1:
Open your Arduino IDE, click on the File, go into preferences and check the boxes with compilation and uploading.
When you have check the boxes highlighted in the above write the code and then compile.
Once you have compiled the code by clicking the Verify button at the top left corner of the Arduino IDE. The Arduino IDE will automatically create the HEX file and give the link of it at the bottom.
Go to the link as specified by your Arduino IDE and you can find your HEX file there.
Setting the HEX file in Proteus:
After you have made the HEX file it should be in some way given to the Proteus so that Proteus can use this HEX file to simulate the code and thus simulate the circuit. I am discussing here the steps for setting the HEX file in Proteus.
setting the HEX file in Proteus. Step 1:
Open you Proteus.
arduino hex file location Step 2:
Search for Arduino.
Click it to add it in the project file.
Double click on it and pop up box will appear.
Browse for the HEX file in the location where your newly created hex file is placed.
Finally click on the file and the hex file will be uploaded in the Proteus.
Now the Proteus is ready for simulating the Arduino circuit.
Arduino NANO Library for Proteus:
I have simulated the simple circuitry of LED blinking using the Arduino nano.
The Proteus works fine and it is very useful as you can easily simulate the Arduino circuitry and its code on the Proteus. So that any glitches and codes either in the code or in the circuit can be seen before actually implementing the circuit physically.
Learn our more Arduino tutorial for Beginners
I hope this article would be helpful. In this next article I will discuss the simulation of the Arduino and LCD on the Proteus.