Construa um Relógio Nixie Simples com Arduino – Guia Passo a Passo
Componentes e Materiais
| Componente | Quantidade |
|---|---|
| Arduino UNO | 1 |
| Componentes Eletrônicos UTSOURCE | 1 |
Sobre o Projeto
Contexto
Após longo dia de trabalho, consegui construir um relógio Nixie com Arduino e chip de opto-isolamento, sem precisar de driver Nixie dedicado (difícil de encontrar).
Assista ao vídeo para instruções completas.
Lista de Materiais
- Arduino UNO – Link
- Tubos Nixie (6 unidades) – Link
- Chip opto-acoplador TLP627
- Módulo step-up DC 12V para 390V DC – Link
- Protoboard – Link
- Módulo RTC DS3231 – Link
- Componentes eletrônicos em utsource.net
Passo 1: Projeto do Circuito

O circuito usa opto-acopladores para controlar tubos Nixie (150 VDC) com o Arduino (5 VDC). Através de conexão em matriz, apenas 16 saídas do Arduino controlam os 60 elementos dos 6 tubos. O módulo RTC DS3231 mantém a hora (mesmo sem energia) via I2C. O Arduino lê a hora e acende/apaga os segmentos em alta frequência, criando a ilusão de dígitos fixos.
Passo 2: Código do Arduino
// Canal Youtube: engineer2you
#include <Wire.h>
#include "DS3231.h"
RTClib RTC;
DS3231 Clock;
int hour, minute, second;
const int nixie_0 = 2, nixie_1 = 3, nixie_2 = 4, nixie_3 = 5;
const int nixie_4 = 6, nixie_5 = 7, nixie_6 = 8, nixie_7 = 9;
const int nixie_8 = 10, nixie_9 = 11;
const int row_1 = 0, row_2 = 1, row_3 = 14, row_4 = 15;
const int row_5 = 16, row_6 = 17;
const int time_on = 2;
void setup() {
pinMode(nixie_0, OUTPUT); pinMode(nixie_1, OUTPUT); pinMode(nixie_2, OUTPUT);
pinMode(nixie_3, OUTPUT); pinMode(nixie_4, OUTPUT); pinMode(nixie_5, OUTPUT);
pinMode(nixie_6, OUTPUT); pinMode(nixie_7, OUTPUT); pinMode(nixie_8, OUTPUT);
pinMode(nixie_9, OUTPUT);
pinMode(row_1, OUTPUT); pinMode(row_2, OUTPUT); pinMode(row_3, OUTPUT);
pinMode(row_4, OUTPUT); pinMode(row_5, OUTPUT); pinMode(row_6, OUTPUT);
// Serial.begin(9600); // NÃO use Serial.print, afeta pinos D0 e D1
Wire.begin();
}
void loop() {
DateTime now = RTC.now();
hour = now.hour(); minute = now.minute(); second = now.second();
int j = second / 10, k = second % 10;
off_all(); on_number(0, k+2); delay(time_on);
off_all(); on_number(1, j+2); delay(time_on);
j = minute / 10; k = minute % 10;
off_all(); on_number(14, k+2); delay(time_on);
off_all(); on_number(15, j+2); delay(time_on);
j = hour / 10; k = hour % 10;
off_all(); on_number(16, k+2); delay(time_on);
off_all(); on_number(17, j+2); delay(time_on);
}
void on_number(int row, int nixie) {
digitalWrite(row, HIGH);
digitalWrite(nixie, HIGH);
}
void off_all() {
digitalWrite(row_1, LOW); digitalWrite(row_2, LOW); digitalWrite(row_3, LOW);
digitalWrite(row_4, LOW); digitalWrite(row_5, LOW); digitalWrite(row_6, LOW);
digitalWrite(nixie_0, LOW); digitalWrite(nixie_1, LOW); digitalWrite(nixie_2, LOW);
digitalWrite(nixie_3, LOW); digitalWrite(nixie_4, LOW); digitalWrite(nixie_5, LOW);
digitalWrite(nixie_6, LOW); digitalWrite(nixie_7, LOW); digitalWrite(nixie_8, LOW);
digitalWrite(nixie_9, LOW);
delayMicroseconds(400); // Evita efeito "fantasma"
}
O código lê a hora do DS3231 e exibe nos 6 tubos Nixie via multiplexação com opto-acopladores.
Passo 3: Montagem do Circuito





Montagem experimental em protoboard. Funcionou na primeira tentativa.
Próximo passo: caixa em MDF com acabamento para uso doméstico.
Código
Trecho de Código #1
Código completo para copiar e colar.
Esquemáticos
Ver imagens do Passo 1 e Passo 3.
Processo de manufatura
- Relógio POV com Arduino: Construa um Display LED de Persistência de Visão
- Construa um Relógio Retrô Numitron com Arduino: Simples, Confiável e Eficiente
- Otimize o Design de Chicotes Elétricos com E3.series
- Relógio de Palavras DIY com Arduino – Construa um Display Elegante de Tempo Real
- Relógio em Tempo Real com Arduino para Horários de Oração Islâmica
- Construa um Relógio Mestre LED Personalizado com Alarme – Visível a 12 Metros
- Mealheiro Inteligente: Controlar Aceitador de Moedas com Arduino Nano
- Monitor de Temperatura e Relógio Tempo Real com Arduino Due e Display TFT 3.2"
- Controlar um LED via Bluetooth com Arduino – Guia DIY Simples
- Construa um Relógio Despertador Confiável com RTC DS1302 e Arduino UNO