Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mic-pcb-new

Arduino (ATmega328P / Uno) firmware for a microvolt/analog input meter built around a TM1638 (anode mode) 8-digit 7-segment display with on-board buttons. The device reads an analog voltage, applies scaling/offset/calibration, and shows the result on the display. All settings are configured through a button-driven menu and stored in EEPROM.

Hardware

Document File
Schematic docs/Schematic.pdf
PCB layout docs/PCB.png

PCB layout

Pinout

Signal Pin
TM1638 DIO D2
TM1638 CLK D3
TM1638 STB D5
Analog input A0
Analog filter input A1

Features

  • Live voltage reading with smoothing (ResponsiveAnalogRead).
  • Menu / edit modes driven by 4 buttons (Enter, Back, Up, Down).
  • Configurable parameters, all persisted to EEPROM:
    • o.scl — output scale
    • code — lock code
    • i.rng — input range
    • i.off — voltage offset
    • cal — calibration coefficient
  • Hold Enter for 3 s to enter the menu; menus time out after 10 s.

Build & Upload

This is a PlatformIO project.

pio run            # build
pio run -t upload  # upload to the Uno
pio device monitor # serial monitor (9600 baud)

Dependencies

  • dxinteractive/ResponsiveAnalogRead
  • TM16xx library (TM1638Anode, TM16xxDisplay, TM16xxButtons)

Project layout

program/
├── src/main.cpp        firmware
├── include/            headers
├── lib/                local libraries
├── docs/               schematic & PCB
└── platformio.ini      build configuration

About

A simple voltmeter based on MIC display boards

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages