Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2025:eradu:stefan.dascalu2612 [2025/05/29 23:48]
stefan.dascalu2612
pm:prj2025:eradu:stefan.dascalu2612 [2025/05/30 07:54] (current)
stefan.dascalu2612
Line 30: Line 30:
 ==== Pin-out Detail ====  ​ ==== Pin-out Detail ====  ​
 ^ Component ​         ^ Interface ​     ^ Arduino pin  ^ Direction ​ ^ Rationale ​                                     ^  ​ ^ Component ​         ^ Interface ​     ^ Arduino pin  ^ Direction ​ ^ Rationale ​                                     ^  ​
-| Keypad row/​col ​    | GPIO           | D2–D9 ​       | input      | Pin-change ISR on D2–D5; columns polled on D6–D9 ​|  ​+| Keypad row/​col ​    | GPIO           | D2–D9 ​       | input      | Scanned periodically by Keypad library (no interrupts) ​|  ​
 | Passive buzzer ​    | GPIO           | D11          | output ​    | direct drive with tone()/​noTone() ​               |  ​ | Passive buzzer ​    | GPIO           | D11          | output ​    | direct drive with tone()/​noTone() ​               |  ​
 | Red LED            | GPIO           | D13          | output ​    | Built-in LED pin                                 ​|  ​ | Red LED            | GPIO           | D13          | output ​    | Built-in LED pin                                 ​|  ​
Line 59: Line 59:
  
 === Implementation Status ===  ​ === Implementation Status ===  ​
-  * ~200 lines of custom C++ on Arduino Uno integrating all core features  ​+  * ~400 lines of custom C++ on Arduino Uno integrating all core features  ​
   * PIN entry with 4×4 matrix scan, three-strike alarm, and time-based lockout fully tested  ​   * PIN entry with 4×4 matrix scan, three-strike alarm, and time-based lockout fully tested  ​
   * Live clock updates, non-blocking unlock/​relock,​ and persistent last-unlock log verified in hardware  ​   * Live clock updates, non-blocking unlock/​relock,​ and persistent last-unlock log verified in hardware  ​
Line 99: Line 99:
  
 ==== Conclusions ====  ​ ==== Conclusions ====  ​
-eSafe demonstrates ​integration of GPIOinterrupts, timers, PWM, and I²C into a user-friendly digital safeNon-blocking ​design ensures smooth UI and reliable timekeeping. +eSafe showcases the seamless ​integration of three core microcontroller features: PWM (servo latch)ADC (live VCC monitoring), and I²C (RTC + LCD)All time-sensitive tasks are handled with non-blocking ​`millis()` logic, so the user interface stays responsive while the clock remains accurate.
 ==== Bibliography & Resources ====  ​ ==== Bibliography & Resources ====  ​
   * ATmega328P Datasheet   * ATmega328P Datasheet
pm/prj2025/eradu/stefan.dascalu2612.1748551713.txt.gz · Last modified: 2025/05/29 23:48 by stefan.dascalu2612
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0