How To Make A Clock Using MAX7219 LED DOT MATRIX Module
ฝัง
- เผยแพร่เมื่อ 4 ก.ค. 2021
- Hey Guys In This Video I Will Show You How To Make A Clock Using MAX7219 LED DOT MATRIX Module ⏰
Link :- www.tomsonelectronics.com
Contact :-- H.O TAARA MANSION, 39/4287-A & B,
Manikkiri Cross Road, Pallimukku,
Cochin - 682 016, Kerala, India.
Location :-- g.page/TomsonElectronics?share
-----------------------------------------------------------------------------
PARTS
Arduino Nano :-- bit.ly/3qLTjna
Led Matrix Module :-- bit.ly/3dFAEE7
Button :-- bit.ly/3AnsIBr
Dot Board :-- bit.ly/3he33DI
Jumper Wire :-- bit.ly/3wKTT74
Breadboard :-- bit.ly/3xpZm30
USE COUPON CODE :-- ZENOOFF2021 TO GET OFF
-----------------------------------------------------------------------------
This Is A Channel Featuring Arduino Projects & All Arduino Diy Stuff ......
How To Make Gesture Controlled Computer :--
• How To Control Your Co...
Nodemcu Home Automation :--
• Home Automation Using ...
Weather Station :--
• Iot Weather Station ||...
Led Matrix :--
• How To Make Led Matrix...
Bluetooth Car :--
www.youtube.com/watch?v=HQTjO...
TH-cam Subscriber Counter :--
www.youtube.com/watch?v=Fh5h1...
How To Control Led Matrix Using Arduino :--
www.youtube.com/watch?v=gc9ds...
Arduino Flappy Bird Game :--
www.youtube.com/watch?v=PDePk...
Creality Cr 100 3D Printer :--
www.youtube.com/watch?v=Fh5h1...
Pixy 2 Unboxing & Review :--
www.youtube.com/watch?v=ZIqCS...
Arduino Radar :--
www.youtube.com/watch?v=bKq-j...
Arduino Playing Pickcrafter Game :--
www.youtube.com/watch?v=GvjOy...
Arduino Stop Watch :--
www.youtube.com/watch?v=CXzg4...
How To Make A Circuit Using Fritzing :--
www.youtube.com/watch?v=gyApk...
Check My Channel For More Stuff Also Do Subscribe :--
bit.ly/2NlWKxx
-------------------------------------------------------------------------------------------------
Code :-- bit.ly/3Hc2XWY
Schematics :-- bit.ly/3BIUrNM
Github Link :-- bit.ly/3saEmgW
--------------------------------------------------------------------------------------------------
Feel Free To Contact
sreeramzeno@gmail.com
Thank You For Watching My Video Keep Supporting
Music Credits:
Feel Good - Music by Aden [Vlog No Copyright Music]
Feel Good by Music by Aden / musicbyaden
Free Download / Stream: bit.ly/_feel-good
Music promoted by Audio Library • Feel Good - MusicbyAde...
------------------------------
#ledmatrix_clock #arduinoclock #diyclock #bestarduinoclock
#ledmatrixclock - วิทยาศาสตร์และเทคโนโลยี
Arduino Code For Led Matrix Clock
#include "DS3231.h"
#include "Adafruit_GFX.h"
#include "Max72xxPanel.h"
DS3231 rtc(SDA, SCL);
const byte LDR_PIN = A2;
const byte CS_PIN = A3;
const byte H_DISPLAYS = 4;
const byte V_DISPLAYS = 1;
Max72xxPanel matrix = Max72xxPanel(CS_PIN, H_DISPLAYS, V_DISPLAYS);
const byte WAIT = 30;
const byte SPACER = 1;
const byte FONT_WIDTH = 5 + SPACER;
void setup() {
pinMode(LDR_PIN, INPUT_PULLUP);
Serial.begin(9600);
Serial.println(F(">> Arduino 32x8 LED Dot Matrix Clock!"));
Serial.println(F(">> Use format to set clock's date and hour!"));
rtc.begin();
matrix.setPosition(0, 0, 0);
matrix.setPosition(1, 1, 0);
matrix.setPosition(2, 2, 0);
matrix.setPosition(3, 3, 0);
matrix.setRotation(0, 1);
matrix.setRotation(1, 1);
matrix.setRotation(2, 1);
matrix.setRotation(3, 1);
}
void loop() {
byte ledIntensity = ledIntensitySelect(analogRead(LDR_PIN));
matrix.setIntensity(ledIntensity);
String output = outputStrClock();
for ( int i = 0 ; i < FONT_WIDTH * output.length() + matrix.width() - 1 - SPACER; i++ ) {
matrix.fillScreen(LOW);
output = outputStrClock();
int letter = i / FONT_WIDTH;
int x = (matrix.width() - 1) - i % FONT_WIDTH;
int y = (matrix.height() - 8) / 2; // center the text vertically
while ( x + FONT_WIDTH - SPACER >= 0 && letter >= 0 ) {
if ( letter < output.length() ) {
matrix.drawChar(x, y, output[letter], HIGH, LOW, 1);
}
letter--;
x -= FONT_WIDTH;
}
matrix.write();
delay(WAIT);
}
if (Serial.available() > 0) {
adjustClock(Serial.readString());
}
}
void adjustClock(String data) {
byte _day = data.substring(0,2).toInt();
byte _month = data.substring(3,5).toInt();
int _year = data.substring(6,10).toInt();
byte _hour = data.substring(11,13).toInt();
byte _min = data.substring(14,16).toInt();
byte _sec = data.substring(17,19).toInt();
rtc.setTime(_hour, _min, _sec);
rtc.setDate(_day, _month, _year);
Serial.println(F(">> Datetime successfully set!"));
}
String outputStrClock() {
String _output;
_output = rtc.getDateStr();
_output.concat(" ");
_output.concat(rtc.getTimeStr());
_output.concat(" ");
_output.concat(rtc.getTemp());
_output.concat((char)247);
_output.concat("C");
return _output;
}
byte ledIntensitySelect(int light) {
byte _value = 0;
if (light >= 0 && light = 128 && light = 320 && light
This code is not the code for this example as button pins and functions are not defined. Please explain?
Very Informative. Keep up the good work brother. ❤️❤️
Thanks ❤️
Good project, go on...
Great experiment 🔥
Thanks ❤️
Nice Scientist 🔥🔥🔥🔥
Thanks ❤️
Hello, could you help me? what type of library ds3231 did you use? i have error..thank you
Hey bro is it 12hrs or 24hrs format clock?
Good work💓✌️
Thanks ☺️
Very nice work 👍🏼
Thanks ❤️
Good Video
Thanks ❤️
Wow nice bro
Thanks ❤️
👍 good job
Thanks ❤️
🔥🔥
Thanks ❤️
Hi very interesting but when looking through the code i see no ref to the button changing the code, like the slide menu and i can see the code to make the slide happen?
Very good 👍👍👍👍👍
Thanks 😌
It's really worked however I am unable to adjust the real time even though it has button, please explain, Sir.
did you use the correct comport to upload the code also check the bootloader which is the old one and the new one is there in the arduino nano
nice
Thanks
🤝👍
Thanks ❤️
👍😊
Thanks ❤️
💙
Thanks ❤️
IN WANT TO CHAGE HOUR AND MINT VIA SWITCH AS YOUR VEDIO
It doesn't show temperature as you have mentioned?
👍😁
Thanks ❤️
which library are used to run the code
there are 3 libraries
github.com/rodan/ds3231/archive/refs/heads/master.zip
github.com/adafruit/Adafruit-GFX-Library/archive/refs/heads/master.zip
github.com/markruys/arduino-Max72xxPanel/archive/refs/heads/master.zip
Hello brother i want this dot matix program where this code and how copy this code
/*feel free to contact
* sreeramaj53@gmail.com
* th-cam.com/users/ZenoModiff
* last updated - time 02:41 PM - date 06 july 2021
* Github Link :-- github.com/Zenomodiff/Max7219-Led-Matrix-Clock-With-DS3231-RTC-Module
*/
#include "DS3231.h"
#include "Adafruit_GFX.h"
#include "Max72xxPanel.h"
DS3231 rtc(SDA, SCL);
const byte LDR_PIN = A2;
const byte CS_PIN = A3;
const byte H_DISPLAYS = 4;
const byte V_DISPLAYS = 1;
Max72xxPanel matrix = Max72xxPanel(CS_PIN, H_DISPLAYS, V_DISPLAYS);
const byte WAIT = 30;
const byte SPACER = 1;
const byte FONT_WIDTH = 5 + SPACER;
void setup() {
pinMode(LDR_PIN, INPUT_PULLUP);
Serial.begin(9600);
Serial.println(F(">> Arduino 32x8 LED Dot Matrix Clock!"));
Serial.println(F(">> Use format to set clock's date and hour!"));
rtc.begin();
matrix.setPosition(0, 0, 0);
matrix.setPosition(1, 1, 0);
matrix.setPosition(2, 2, 0);
matrix.setPosition(3, 3, 0);
matrix.setRotation(0, 1);
matrix.setRotation(1, 1);
matrix.setRotation(2, 1);
matrix.setRotation(3, 1);
}
void loop() {
byte ledIntensity = ledIntensitySelect(analogRead(LDR_PIN));
matrix.setIntensity(ledIntensity);
String output = outputStrClock();
for ( int i = 0 ; i < FONT_WIDTH * output.length() + matrix.width() - 1 - SPACER; i++ ) {
matrix.fillScreen(LOW);
output = outputStrClock();
int letter = i / FONT_WIDTH;
int x = (matrix.width() - 1) - i % FONT_WIDTH;
int y = (matrix.height() - 8) / 2;
while ( x + FONT_WIDTH - SPACER >= 0 && letter >= 0 ) {
if ( letter < output.length() ) {
matrix.drawChar(x, y, output[letter], HIGH, LOW, 1);
}
letter--;
x -= FONT_WIDTH;
}
matrix.write();
delay(WAIT);
}
if (Serial.available() > 0) {
adjustClock(Serial.readString());
}
}
void adjustClock(String data) {
byte _day = data.substring(0,2).toInt();
byte _month = data.substring(3,5).toInt();
int _year = data.substring(6,10).toInt();
byte _hour = data.substring(11,13).toInt();
byte _min = data.substring(14,16).toInt();
byte _sec = data.substring(17,19).toInt();
rtc.setTime(_hour, _min, _sec);
rtc.setDate(_day, _month, _year);
Serial.println(F(">> Datetime successfully set!"));
}
String outputStrClock() {
String _output;
_output = rtc.getDateStr();
_output.concat(" ");
_output.concat(rtc.getTimeStr());
_output.concat(" ");
_output.concat(rtc.getTemp());
_output.concat((char)247);
_output.concat("C");
return _output;
}
byte ledIntensitySelect(int light) {
byte _value = 0;
if (light >= 0 && light = 128 && light = 320 && light
CODE IS NOT MATCH AS YOU SHOW VEDIO, THERE IS ON TOUCH SWTCH IN CODE
AND DISPLAY SPEED NOT CONTROLL IN CODE
code please
github.com/Zenomodiff/Max7219-Led-Matrix-Clock-With-DS3231-RTC-Module/blob/main/Led_Matrix_Clock_With_RTC_Module.ino
The code provided by this guy is not the right one shown in the video. This code is for another project. Hope he sends the right code.
I have pinned the code
@@ZenoModiff Dear Sir, There is no photoresistor in your project. Please let us know why you define a LDR pin your code? And also, where are the pin definitions for your pushbuttons in your code? Maybe I am wrong.
Que mierda el codigo no funciona.. 🦁🦁
boss need code
#include "DS3231.h"
#include "Adafruit_GFX.h"
#include "Max72xxPanel.h"
DS3231 rtc(SDA, SCL);
const byte LDR_PIN = A2;
const byte CS_PIN = A3;
const byte H_DISPLAYS = 4;
const byte V_DISPLAYS = 1;
Max72xxPanel matrix = Max72xxPanel(CS_PIN, H_DISPLAYS, V_DISPLAYS);
const byte WAIT = 30;
const byte SPACER = 1;
const byte FONT_WIDTH = 5 + SPACER;
void setup() {
pinMode(LDR_PIN, INPUT_PULLUP);
Serial.begin(9600);
Serial.println(F(">> Arduino 32x8 LED Dot Matrix Clock!"));
Serial.println(F(">> Use format to set clock's date and hour!"));
rtc.begin();
matrix.setPosition(0, 0, 0);
matrix.setPosition(1, 1, 0);
matrix.setPosition(2, 2, 0);
matrix.setPosition(3, 3, 0);
matrix.setRotation(0, 1);
matrix.setRotation(1, 1);
matrix.setRotation(2, 1);
matrix.setRotation(3, 1);
}
void loop() {
byte ledIntensity = ledIntensitySelect(analogRead(LDR_PIN));
matrix.setIntensity(ledIntensity);
String output = outputStrClock();
for ( int i = 0 ; i < FONT_WIDTH * output.length() + matrix.width() - 1 - SPACER; i++ ) {
matrix.fillScreen(LOW);
output = outputStrClock();
int letter = i / FONT_WIDTH;
int x = (matrix.width() - 1) - i % FONT_WIDTH;
int y = (matrix.height() - 8) / 2; // center the text vertically
while ( x + FONT_WIDTH - SPACER >= 0 && letter >= 0 ) {
if ( letter < output.length() ) {
matrix.drawChar(x, y, output[letter], HIGH, LOW, 1);
}
letter--;
x -= FONT_WIDTH;
}
matrix.write();
delay(WAIT);
}
if (Serial.available() > 0) {
adjustClock(Serial.readString());
}
}
void adjustClock(String data) {
byte _day = data.substring(0,2).toInt();
byte _month = data.substring(3,5).toInt();
int _year = data.substring(6,10).toInt();
byte _hour = data.substring(11,13).toInt();
byte _min = data.substring(14,16).toInt();
byte _sec = data.substring(17,19).toInt();
rtc.setTime(_hour, _min, _sec);
rtc.setDate(_day, _month, _year);
Serial.println(F(">> Datetime successfully set!"));
}
String outputStrClock() {
String _output;
_output = rtc.getDateStr();
_output.concat(" ");
_output.concat(rtc.getTimeStr());
_output.concat(" ");
_output.concat(rtc.getTemp());
_output.concat((char)247);
_output.concat("C");
return _output;
}
byte ledIntensitySelect(int light) {
byte _value = 0;
if (light >= 0 && light = 128 && light = 320 && light
@@ZenoModiff no matching function for call to 'DS3231::DS3231(const uint8_t&, const uint8_t&)'
@@electronicsideas1361 First you have to download the library, unzip it and copy the files inside.
You will have to paste it to your Arduino/Libraries/DS3231 folder.
On the left is the current DS3231 Library which I added through the arduino library manager. Its not the same as the one the right, it should be, but its not, copy the files from the unzipped DS32321 library into the Arduino/library/DS3231.
Works fine
i.stack.imgur.com/3uBms.jpg. See this image
@@ZenoModiff I have ds3231 library
👍😊
Thanks 😊