Author: Aarya Patel
Platform: Arduino Uno (TinkerCAD Simulation)
This project implements a real-time, interrupt-driven embedded system designed around the Sense–Think–Act model.
It integrates three interrupt types — Pin Change, External, and Timer — to demonstrate concurrency, modularity, and reliable state management in an embedded environment.
| Component | Pin | Description |
|---|---|---|
| Switch 1 | D10 | PCI input |
| Switch 2 | D11 | PCI input |
| Switch 3 | D2 | External interrupt |
| Potentiometer | A0 | Analog sensor |
| LED | D13 | Output indicator |
| Buzzer | D6 | Output actuator |
- PCI (D10, D11): Detects simultaneous switch states for LED logic.
- External Interrupt (D2): Triggers buzzer alerts on change.
- Timer Interrupt: Executes every 0.5s to read potentiometer and detect threshold events.
- Non-blocking ISR design: All ISRs use flags, ensuring interrupt safety.
- Completely simulated in TinkerCAD, no physical hardware required.
| Condition | Output |
|---|---|
| S1 + S2 active | LED ON |
| S3 active | Buzzer beep |
| Potentiometer > 700 | LED flash |
| Any other | LED OFF |
- Open the project in TinkerCAD Circuits.
- Connect components as described above.
- Upload the provided
TaskM1.cppcode. - Start simulation and observe Serial Monitor output.