PRISMORA✦
v0.1
ECE Virtual LabCircuit Studio & Virtual ArduinoTINKERCAD + PHET DC/AC

ECE Circuit Construction Studio & Virtual Arduino Uno

Build, simulate, and measure real DC/AC electrical circuits and execute C++ programs on the virtual ATmega328P microcontroller with live pin states, glowing filaments, spinning motors, and oscilloscope traces.

Branch Current21.2 mA
Motor RPM0 RPM
Arduino Status● RUNNING
Presets:

Interactive Circuit Construction Canvas

100%
ARDUINO UNO R3
DIGITAL (PWM~)
131211~10~9~8
ATMELATmega328P-PU16.000 MHz XTAL
L (Pin 13)
TX RX
ON
5VGND
ANALOG IN:
A0A1A2
Quick Adjustments:
Source V:9.0V
Rheostat R:220Ω

ARDUINO C++ SKETCH EDITOR (ATmega328P)

Serial Monitor @ 9600 baud
>[0ms] Prismora Virtual Arduino Uno R3 Ready.
>[50ms] Serial Monitor initialized at 9600 baud.
>[100ms] LED Pin 13 ON

Live Microcontroller Pin Registermillis(): 100 ms

D2INPUT_PULLUPHIGH
D8OUTPUTLOW
D9OUTPUTLOW
D10OUTPUTLOW
D13OUTPUTHIGH

ECE Circuit Physics, Ohm's Law, and Microcontroller Engineering Principles

1. Kirchhoff's Voltage & Current Laws

In any closed electrical loop, the algebraic sum of all electromotive forces (EMF) and voltage drops across passives and diodes equals zero:

∑Vk=0,I=Vsource−Vf,LEDRtotal\sum V_k = 0, \quad I = \frac{V_{source} - V_{f,LED}}{R_{total}}
2. ATmega328P Pulse-Width Modulation (PWM)

The Arduino Uno utilizes Timer/Counters to produce 490Hz/980Hz square waves. The average voltage delivered to an LED or motor is proportional to the duty cycle ratio:

Vavg=VCC⋅PWM255,D=tonT×100%V_{avg} = V_{CC} \cdot \frac{\text{PWM}}{255}, \quad D = \frac{t_{on}}{T} \times 100\%
3. 10-Bit ADC Analog Quantization

Analog inputs A0-A5 pass through successive approximation analog-to-digital converters, mapping 0V-5V input voltages into discrete integer values:

ADC=⌊VinVref×1023⌋  ⟹  Vin=ADC×4.887 mV\text{ADC} = \left\lfloor \frac{V_{in}}{V_{ref}} \times 1023 \right\rfloor \implies V_{in} = \text{ADC} \times 4.887 \text{ mV}