|
|
ARDUINO_NANOnull
|
x 1 | |
|
|
HPDL1414 , 14 segment Led Display |
x 2 | |
|
|
DS3231SN#Analog Devices Inc./Maxim Integrated
|
x 1 |
|
Soldering Iron Wire Welding Lead Roll |
|
|
Soldering iron |
HPDL1414 Arduino Micro Clock
The HPDL-1414 is a 16-segment LED display with four printable fields that is over twenty years old. It has a red GaAsP screen to which we can add the epithet "smart", because it is capable of printing alphanumeric characters on its fields. The screen is controlled by a CMOS integrated circuit embedded in a plastic housing.This circuit contains RAM, ASCI II decoder, multiplexer and LED drivers. Thanks to these features, no additional components are needed to connect this display to the microcontroller.
More displays can be connected in series, where for each subsequent one it is necessary to assign another GPIO to the WR pin, similar to the SPI interface.
This time I will show you how to make an interesting mini Retro-look Clock with such a displays, as well as the way in which static and moving text can be written on it. For this purpose I wrote a super simple code, and a Schematic diagram.
The device is very simple to make and consists of several components:
- Arduino nano microcontroller
- 2 pcs. HPDL-1414 Led displays
- and DS3231 Realtime clock module
- These three buttons are not connected to the circuit at the moment, and in some of the following versions of the code, they are intended to be used for setting the time and possibly the alarm.

If you want to make your own PCB for this project, or for any other electronic project, PCBway is a great choice for you. PCBway is one of the most experienced PCB manufacturing company in China in field of PCB prototype and fabrication. They have a large online community where you can find a Open Source projects, and you can also share your project there. From my personal experience I can tell you that on this community you can find many useful projects with alredy designed PCBs, from where you can place an order directly.

As I mentioned earlier, the link below provides separate codes for static text or moving text at the beginning before the correct time appears. When switching on, the moving text appears first, and then the correct time, in the form of hours, minutes and seconds. In front of the displays I put a darkened film for better visibility of the digits.
With the code itself we can set the exact time of the clock, which we need to enter in the lines:
rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));
rtc.adjust(DateTime(2022, 8, 26, 23, 07, 0)); //Exact time on the moment of uploading
Then we need to upload the code once again with the same lines commented out
Finally, the device is mounted in a suitable box made of PVC plastic with thicknesses of 3mm and 5mm, and covered with self-adhesive colored wallpaper.
#include <HPDL1414.h>
#include <RTClib.h>
#include <Wire.h>
const byte dataPins [ 7 ] = { 2 , 3 , 4 , 5 , 6 , 7 , 8 } ; // Segment data pins: D0 - D6
const byte addrPins [ 2 ] = { A1 , A2 } ; // Segment address pins: A0, A1
const byte wrenPins [ ] = { A0 , A3 }; // Write Enable pins (left to right)
RTC_DS3231 rtc;
char msg[] = " *** MICRO CLOCK - MIRCEMK *** ";
char t[32];
HPDL1414 hpdl ( dataPins , addrPins , wrenPins , sizeof ( wrenPins ) ) ;
void setup ( ) {
Serial.begin(9600);
Wire.begin();
hpdl.begin ( ) ;
hpdl.clear ( ) ;
for (byte i = 0; i < (sizeof(msg) / sizeof(char)); i++) {
for (byte j = 0; j < 16; j++) {
hpdl.setCursor(j);
if (i + j < (sizeof(msg) / sizeof(char))) {
hpdl.print(msg[i + j]);
} else {
hpdl.print(" ");
}
}
delay(200);
}
rtc.begin();
//rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));
//rtc.adjust(DateTime(2022, 8, 26, 23, 07, 0));
}
void loop ( ) {
DateTime now = rtc.now();
sprintf(t, "%02d-%02d-%02d", now.hour(), now.minute(), now.second());
hpdl.clear();
hpdl.print(t);
}
#include <HPDL1414.h>
#include <RTClib.h>
#include <Wire.h>
const byte dataPins [ 7 ] = { 2 , 3 , 4 , 5 , 6 , 7 , 8 } ; // Segment data pins: D0 - D6
const byte addrPins [ 2 ] = { A1 , A2 } ; // Segment address pins: A0, A1
const byte wrenPins [ ] = { A0 , A3 }; // Write Enable pins (left to right)
RTC_DS3231 rtc;
char t[32];
HPDL1414 hpdl ( dataPins , addrPins , wrenPins , sizeof ( wrenPins ) ) ;
void setup ( ) {
Serial.begin(9600);
Wire.begin();
hpdl.begin ( ) ;
hpdl.printOverflow(true);
hpdl.clear ( ) ;
hpdl.print("*-TIME-*");
delay(3000);
hpdl.clear();
rtc.begin();
rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));
//rtc.adjust(DateTime(2022, 8, 226, 20, 19, 0));
}
void loop ( ) {
DateTime now = rtc.now();
sprintf(t, "%02d-%02d-%02d", now.hour(), now.minute(), now.second());
hpdl.clear();
hpdl.print(t);
}
HPDL1414 Arduino Micro Clock
- Comments(0)
- Likes(1)
-
Igor Orlianskyi
Apr 01,2024
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Mirko Pavleski
-
Arduino 3D Printed self Balancing Cube
Self-balancing devices are electronic devices that use sensors and motors to keep themselves balanc...
-
Build simple Retro Style VFO (Variable frequency oscillator) with Crowoanel 1.28 inch Round Display
Today I received a shipment with a Small round LCD display from Elecrow. The device is packed in tw...
-
Human vs Robot – Rock Paper Scissors with MyCobot 280 M5Stack
Today I received a package containing the few Elephant Robotics products. The shipment is well pack...
-
How to Build a Simple Audio Spectrum Analyzer with Adjustable Settings
An audio spectrum analyzer is an electronic device or software tool that measures and visually disp...
-
How to Make a Digital Clock on a Vintage B&W TV using Arduino
These days I accidentally came across this small retro Black and White TV with a built-in Radio, so ...
-
Build a $10 Function Generator with Frequency Meter for Your Lab
A function generator is a piece of electronic test equipment used to generate various types of elec...
-
From Unboxing to Coding - Radar Clock on Elecrow’s 2.1 HMI Display
Today I received a shipment with a large round LCD display from Elecrow. The device is packed in two...
-
Making a Retro Analog NTP Clock with Unihiker K10 - Arduino IDE Tutorial
Some time ago I presented you a way to use standard Arduino libraries on the Unihiker k10 developme...
-
Build a Cheap & Easy HF Preselector - Antenna Tuner
HF antenna preselector is an electronic device connected between an HF radio antenna, and a radio r...
-
DIY Static Charge Monitor - Electrostatic Field Detector (Arduino & TL071)
A Static Charge Monitor also known as a Static Field Meter or Electrostatic Voltmeter is a device u...
-
XHDATA D-219 Radio Short Review with complete disassembly
Some time ago I received an offer from XHDATA to be one of the first test users of their new radio m...
-
How to make Simplest ever Oscilloscope Clock
An oscilloscope clock is a unique and creative way to display the time using an oscilloscope, which...
-
DIY Digital Barograph with BME280 and ESP32 - 24 Hour Pressure Trends
A barograph is a self-recording barometer that continuously measures and records atmospheric pressu...
-
Build a Raspberry Pi Pico SDR Radio with Waterfall Display
Software-defined radio (SDR) is a radio communication system where components that have traditional...
-
DIY Magnet Polarity Detector - How to Identify Poles with a Hall Sensor from a PC Fan
Recently, while working on a project, I needed to determine the polarity of several permanent magne...
-
Light Meter Project - Making Dfrobot Unihiker K10 Work with Standard Arduino Libraries
The other day I received a shipment with a UNIHIKER K10 development board from DFRobot, which I rec...
-
DIY Simple Arduino Whack-a-Mole Game
A "Whack-a-Mole" game is a classic arcade-style game where moles pop up randomly from holes, and th...
-
Wireless Power Transmission, Long-Distance and High-Efficiency with Class-E Tesla Coil
Wireless energy transfer also known as wireless power transmission is a method of getting useful el...
-
-
AEL-2011 Power Supply Module
322 0 1 -
AEL-2011 50W Power Amplifier
297 0 1 -
-
-
Custom Mechanical Keyboard
565 0 0 -
Tester for Touch Screen Digitizer without using microcontroller
230 2 2 -
Audio reactive glow LED wristband/bracelet with NFC / RFID-Tags
238 0 1 -
-
-







