Arduino Clock With DS3231 and LCD1602
Intro: Arduino Clock With DS3231 and LCD1602
This project is part of a bigger one but it can be a standalone project. It's basically a clock with two buttons for setting the time and date.
It doesn't look that great on the breadboard with all those wires but it does the job and it can be simplified by using a I2C display, but I'll cover that subject in a future instructable.
The operation mode is quite simple, you have two buttons, the first one, linked to the pin 8 on arduino is used to select the parameter (date, hour minute ...) and at the end to save the new date. The second button, which is attached to pin 9 on arduino, is used to increment the selected parameter and at the end to cancel data you have just entered (don't save) in case you're not happy with it.
STEP 1: Parts Needed:
1. Arduino UNO R3 or compatible board
2. DS3231 RTC (Real Time Clock) module
3. CR2032 battery, if the module doesn't come with one
4. LCD 1602 display
5. 50K ohm variable resistor for adjusting the contrast of the 1602 LCD
6. 2 buttons for adjusting the date and time
7. Two 10K ohm resistors for button pins pulldown
8. Jumper wire for connecting the parts
9. Breadboard
STEP 2: Assemble the Scheme
Since I'm sure you can't make the connection based on the first photo of the project, here's the scheme for it.
STEP 3: Write the Code:
You can find the code for this project here, in the attached file. Feel free to modify it to suit your needs. The code is explained inside the .ino file. Any suggestions is welcome.
Also the library I used is attached. Other libraries of DS3231 might not work.
11 Comments
saadland 4 years ago
And once the clock is made does it always need to be connected to PC, Can I simply feed the Arduino Board with 5v, will it keep working??
Thx
Rseery 5 years ago
xyden7351 5 years ago
the correct pin setup is "LiquidCrystal lcd(7, 6, 5, 4, 2, 1);"
Thanks for the tutorial
Rseery 5 years ago
Ionut Razvan 5 years ago
DanP235 5 years ago
RichardS492 5 years ago
Ionut, you mentioned you would show in a future project how to incorporate an I2C LCD screen. Did you ever get to that? I’m trying to utilize this board in your project:
https://www.amazon.com/gp/product/B01GPUMP9C/ref=oh_aui_search_detailpage?ie=UTF8&psc=1
Thanks
Ionut Razvan 5 years ago
I have used a 1602 but it works with a LCD2004
https://www.instructables.com/id/Aquarium-Light-PW...
Ionut Razvan 5 years ago
I did but it's not finished, I used a 1602 LCD with a I2C adapter and also a OLED 128x64 with I2C interface. I'll make an instructable with both since it's almost the same. If you want more information feel free to ask, I'll do my best to answer.
I used the library for I2C LCD available here: https://www.arduinolibraries.info/libraries/liquid...
it should work with your display.
DIY Hacks and How Tos 6 years ago
What is the larger project that this is part of?
Ionut Razvan 6 years ago
It can be used in many projects, but my project is an indoor greenhouse, automated and monitored with arduino.