Example Code for Arduino-Simple Clock Control
This guide offers step-by-step instructions on creating a simple clock using an Arduino and a 7 Segment LED Keypad Shield, including hardware and software setup, wiring diagrams, and sample code. Users can adjust time using keypad buttons and control brightness, making it a practical project for learning Arduino basics.
Hardware Preparation
Software Preparation
- Arduino IDE V1.6.5 Click to Download Arduino IDE from Arduino®
- DFRobot LED Keypad Shield libraries Installing Libraries
Wiring Diagram
This module's pin alignments allow it to stack directly on top of an Arduino UNO or similar microcontroller
Sample Code
#include <LedKeypad.h>
char brightness =0;
char buf[5]="2456";
void setup() {
ledkeypad.begin(); /*Enable*/
ledkeypad.setBrightness(0);/*Sets the brightness level*/
ledkeypad.display(2015);/*Display data*/
delay(5000);
ledkeypad.display(buf);/*Display character for testing*/
for(int i=0;i<4;i++){/*for testing*/
ledkeypad.dotShow(i);
delay(1000);
ledkeypad.dotVanish(i);
}
}
void loop() {
unsigned char keyValue=0;
keyValue = ledkeypad.getKey();/*Get key value*/
switch(keyValue){
case KEY_DOWN:
buf[0]++;
if(buf[0] > '9')
buf[0] = '0';
ledkeypad.display(0,buf[0]);
break;
case KEY_LEFT:
buf[1]++;
if(buf[1] > '9')
buf[1] = '0';
ledkeypad.display(1,buf[1]);
break;
case KEY_UP:
buf[2]++;
if(buf[2] > '9')
buf[2] = '0';
ledkeypad.display(2,buf[2]);
break;
case KEY_RIGHT:
buf[3]++;
if(buf[3] > '9')
buf[3] = '0';
ledkeypad.display(3,buf[3]);
break;
case KEY_SELECT:
brightness++;
if(brightness > 7)
brightness = 0;
ledkeypad.setBrightness(brightness);
break;
default:
break;
}
}
Result
The sample code is a simple clock for the module. Using the input buttons the time can be adjusted. Key functions are as follows:
| button | function |
|---|---|
| down | The first digital tube +1 |
| left | The sencond digital tube +1 |
| up | The third digital tube +1 |
| right | The fourth digital tube +1 |
| select | adjusting brightness |
Was this article helpful?
