|
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
- Simple ESP32 Internet radio on VFD Display Internet radio, also known as online radio or streaming radio, refers to the broadcasting of audio ...
- Short review of small music Tesla Coil with Bluetooth A Solid State Tesla Coil (SSTC) is a type of Tesla coil that uses solid-state electronic components...
- Testing 2500W Large Induction Heater An induction heater is a device that uses electromagnetic induction to heat objects. It consists of...
- Arduino FFT Audio Spectrum analyzer on 8x32 color matrix WS2812B The spectrum analyzer displays the amplitude of signals as a function of frequency, allowing engine...
- Unusual Led Ring Arduino Clock, Temperature, and Humidity meter There are many arduino clock projects with temperature and humidity readings where the results are ...
- How to make simple portable PEMF Magnetic Pulser PEMF (Pulsed Electromagnetic Field Therapy), which is also known as magnetic pulse therapy uses ele...
- Single Mosfet Mini SSTC Tesla coil with 10 + cm Spark A Solid State Tesla Coil (SSTC) is a type of Tesla coil that uses solid-state components such as tr...
- How to Make EM84 (6E2) Vacuum Tube Stereo VU Meter A VU meter, also known as a Volume Unit meter, is a device used to display the audio signal level ...
- Universal Arduino Staccato controller for SSTC and VTCC Tesla Coils The VTTC Staccato Controller was developed in the attempt to create longer sparks from VTTCs while ...
- DIY extremly Sensitive and cheap Arduino Seismometer A seismometer, is an instrument used to detect and record ground motion caused by seismic waves, su...
- DIY Extremly Sensitive and cheap Geophone sensor for Earthquakes detecting A geophone is a device used in geophysics to detect ground movement. It is specifically designed to...
- Arduino FFT Spectrum analyzer on VFD display GP1287 An audio spectrum analyzer is a device that visualizes the frequency content of an audio signal. It...
- DIY simple Spark Gap Tesla Coil Tesla coil is a type of resonant transformer circuit invented by Nikola Tesla around 1891. It is a ...
- DIY PC controlled high power PEMF Therapy Device PEMF or Pulsed Electromagnetic Field therapy is a type of therapy that uses electromagnetic fields ...
- DIY Precise Arduino Miliohmmeter In practice, we very often need to measure low resistances. Measuring low-value resistances, especi...
- The simplest way to determine the quality of lighting in your home - bulb flickering meter Light flickering can be a common issue and may occur with various types of bulbs, including incande...
- Classic Style Arduino Weather Station with three Oled Displays So far I have made several weather stations that display local values as well as internet data, whic...
- How to build simple cheap Hulda Clark Syncrometer Hulda Clark's Syncrometer was a device she claimed could detect the presence of various substances ...
-
-
-
Open Source Very Large Stick - Freejoy & MMjoy2 breakout board
648 0 0 -
RF Control training board for students based on ESP32 C3
833 0 2 -
Aquarius+ Computer, Standard PCB
1101 0 7 -
KINETIC COASTERS with a TWIST! Laser or 3D Print some DIY Magic
704 0 2 -
RPI - 8 IO PLC With ATTiny85 Watch Dog
604 0 1