Go Down

Topic: Educational Arduino Simulator for Uno (Read 13480 times) previous topic - next topic

stanjsimmons


Hi Everyone:

I just posted a new version of my (completely free, no time-limit, educational)  UnoArduSim.exe simulator for Windows OS today at https://www.sites.google.com/site/unoardusim/
The executable is unsigned so you will get the usual Windows warning -- please check out the site and Help files first to assure yourself this is something legitimate that I have created for the Arduino community ( I am a retired professor and a professional engineer -- you can see my old Queen's web page at http://www.ece.queensu.ca/People/S-J-Simmons/).

UnoArduSim allows you to investigate and/or test and debug entire projects targetted to an Uno board without needing any actual hardware (as long as you only need  the I/O devices that UnoArduSim supports). Or, you can often debug code snippets/functions from projects targetted to other boards (as long as code snippets do not exceed Uno RAM limitations, and being aware of pin differences, etc.).

You add and configure generic virtual I/O devices in a Lab Bench Pane, load a program, and can then Step Into, Step Over, Step Out Of, Run, Halt, Animate etc with a simultaneous view of all local and global Variables. A fully syntax-highlighted View/Edit window allows you to make program changes and see the effect quickly without having to go through the recompile/download process with a real Uno. The generic I/O devices provided are: Servo motor(s), DC gear-motor(s), Serial Monitor, SoftwareSerial monitor(s), SPI slave(s), I2C slave(s), Digital Pulser(s), Analog FuncGen(s), Piezo speaker(s), Push Buttons, LEDs, Pullup/Pulldown resistors, and Analog Slider Pot(s).

Pin Waveform windows can also be opened to let you see the pin actions your program causes (and you can listen to any pin's activity with a piezo speaker I/O device).

Enjoy,

Stan Simmons P.Eng.
Associate Professor (retired)
Queen's University Dept of Electrical and Computer Engineering
Kingston Ontario Canada

econjack

I just tried your link using Chrome and the link appears to be broken.

q2dg

If you click on "arrow" icon, the download is ok.

One question: is possible to get the source code of this program?

Thanks

econjack

Just tried to download it again, and got a "Failed - Server Error". Anyone else having problems using the link?

rva1945

Hi:

I'm using it and it works nice, I find it very useful.

Now, is it possible to save the pins layout associated? Having to reconnect everything is not nice; ideally, if it can be associated to the ino...

Great project.

Robert

rva1945

OK OK now I found that option, thanks.

arduinoaleman

#6
Mar 14, 2016, 11:47 pm Last Edit: Mar 14, 2016, 11:49 pm by arduinoaleman
How do you want to simulate hardware that has analog inputs and other special hardware features like counters and interrupt handling ?

I know, everything is possible - but is it worth the effort?
If your questions are not precise, nobody can help you.

DrAungWinHtut

this simulator help me a lot in learning Arduino. I thank you Professor for your kind invention Sir.

Shields_Arduino

Hi, we just tried this, and tried loading 6 sketches and found none of them worked. Simple instructions such as   Serial.begin(31250); failed - Bad Baud rate.

The Serial Monitor also does not seem to work.

For example, the simple sketch below

Code: [Select]

float i1,i2;

void setup() {
  // put your setup code here, to run once:

}

int actual(int a)
{
    return(a);
}

float getit(int x)
{
 return(x+2.2);
}

float getit2(float a, float b)
{
 return ( a+b+3.3 );
}


void loop() {
  // put your main code here, to run repeatedly:





    if ((actual(6)>5) and (actual(7)>6)) {
        i1 = 1;
    }

    if ((actual(4)>5) and (actual(7)>6)) {
        i1 = 2;
    }

    if ((actual(6)>5) and (actual(5)>6)) {
        i1 = 3;
    }

    if ((actual(4)>5) and (actual(5)>6)) {
        i1 = 4;
    }

 i2 = getit2(3,getit(20));
 i1 = getit(5);
 i2 = getit2(3,4);
}


Have a look at our Simulator here: http://virtronics.com.au/Data/SetupFree.zip We also had a lot of issues until we added in some auto unit testing features.
www.virtronics.com.au

zacknov

I am a beginner studying programming at UnoArduSim (Arduino Simulation). I am still confused by how to use the Seven Segment module because there are only 2 addresses namely the address to the pin and cs *. How do you use it and how is the program syntax?

Go Up