Skip to content

Commit 2ed5e66

Browse files
committed
Merge branch 'master' of https://github.com/Express1/tftlcdClock
# Conflicts: # tftlcdClock.ino
1 parent 5a87372 commit 2ed5e66

File tree

7 files changed

+281
-194
lines changed

7 files changed

+281
-194
lines changed

LICENSE

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
tft lcd Clock Arduino Clock
2+
3+
Copyright 2019 Radu Constantinescu
4+
https://github.com/Express1/tftlcdClock
5+
6+
This program is free software; you can redistribute it and/or modify
7+
it under the terms of the GNU General Public License as published by
8+
the Free Software Foundation; either version 2 of the License, or
9+
(at your option) any later version.
10+
11+
This program is distributed in the hope that it will be useful,
12+
but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
GNU General Public License for more details.
15+
16+
You should have received a copy of the GNU General Public License
17+
along with this program; if not, write to the Free Software
18+
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19+
MA 02110-1301, USA.
20+

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,26 @@
11
TFT LCD Arduino Clock - Just another Arduino Clock...
22

3-
This one is using a 320X240 ILI9341 tft lcd connected over SPI, the speed is acceptable for a clock display and will not use as many I/O pins as a parallel connected one.
3+
This one is using a 320X240 ILI9341 tft lcd connected over SPI, the speed is acceptable for a clock display and will not use as many I/O pins as a parallel connected display.
44
Here is a link for the display:
55
https://www.aliexpress.com/item/32889801161.html?spm=a2g0s.9042311.0.0.29594c4dvsZfeP
66

77
The clock has a Digital display mode and a Binary BCD display mode selectabe from the menu.
88

9-
Other modules used: DS3231 Clock module, remove the 1N4148 diode if you use that with a CR2032 battery, we do not want to charge the battery. DS18B20 temperature sensor module for better temp readings - there is a temperature sensor inside DS3231 also but the chip will heat up once powered on and will show about 1-2C more than the actual temp in few minutes.
9+
Other modules used: DS3231 Clock module, remove the 1N4148 diode if you use that with a CR2032 battery, we do not want to charge the battery. DS18B20 temperature sensor module for better temp readings - there is a temperature sensor inside DS3231 also but the chip will heat up inside the clock case once powered on and will show about 1-2C more than the actual temp in few minutes.
1010

1111
The LCD I/O is 3v3 and therefore we use some resistors to convert from 5V to 3v3. There are 3 buttons for setup and a speaker for alarm. A piezo or electromagnetic buzzer can be used.
1212

1313
The clock has an enclosure and a stand designed in OpenSCAD, make one using your 3DPrinter.
1414

1515
The menu of this clock is designed around a struct in PROGMEM in order to use less RAM, for those interested this can be reused as a menu for other projects. It was an interesting exercise to create and is working quite nice with the three buttons: "-", "Setup" and "+". Can be easily extended as necessary.
1616

17+
Menu:
18+
Time hour, min (setting min will also reset seconds to 00), month, date, day of week, year.
19+
Clock 12/24h, clock mode - digital or BCD binary.
20+
Alarm hour, min, alarm days - daily or workdays only.
21+
DST on week, month, DST off week, mo - For US DST set to 2,3 - 1,11. The week is the number of week in a mo starting Mo. The time will adjust on Su 2AM.
22+
LCD day, night - lcd backlight durring day and night, will turn on on 7 and turn off at 10 pm.
23+
1724
All the libraries used are in a zip file (unzip under your libraries folder), the font file form Adafruit_GFX is modified “ char is replaced by a full circle character used by the BCD clock display and the second half of the table is removed in order to save space.
1825

1926
IOAbstraction lib is used to provide the low level functions for buttons and event scheduler, many thanks to Dave!

0 commit comments

Comments
 (0)