Very simple library for controll a 7 segment display.

Dependents:   Demo_Led7seg TP1_EJER02_FERNANDEZ_CLERICI TP1_EJER3 Ejercicio3JalleVentiades ... more

Committer:
trombettamichele
Date:
Fri Apr 22 22:30:33 2011 +0000
Revision:
0:ccabe7ff24e8

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
trombettamichele 0:ccabe7ff24e8 1 #include "mbed.h"
trombettamichele 0:ccabe7ff24e8 2 #include "Multi7Seg.h"
trombettamichele 0:ccabe7ff24e8 3 //##### A simple Clock #####
trombettamichele 0:ccabe7ff24e8 4 // Created by Michele Trombetta
trombettamichele 0:ccabe7ff24e8 5 // Copyright 2010 5OFT. All rights reserved.
trombettamichele 0:ccabe7ff24e8 6
trombettamichele 0:ccabe7ff24e8 7 Ticker ticker_sec;
trombettamichele 0:ccabe7ff24e8 8 Multi7Seg minutes(p21, p22, p23, p24, p25, p26, p27, p20, p19, led_ANODE);
trombettamichele 0:ccabe7ff24e8 9 Multi7Seg hours(p21, p22, p23, p24, p25, p26, p27, p18, p17, led_ANODE);
trombettamichele 0:ccabe7ff24e8 10 DigitalOut seconds(p16);
trombettamichele 0:ccabe7ff24e8 11
trombettamichele 0:ccabe7ff24e8 12 unsigned int cnt_h = 0, cnt_m = 0, cnt_s = 0;
trombettamichele 0:ccabe7ff24e8 13
trombettamichele 0:ccabe7ff24e8 14 void inc_num() {
trombettamichele 0:ccabe7ff24e8 15 cnt_s++;
trombettamichele 0:ccabe7ff24e8 16 seconds = !seconds;
trombettamichele 0:ccabe7ff24e8 17 if (cnt_s == 60) {
trombettamichele 0:ccabe7ff24e8 18 cnt_s = 0;
trombettamichele 0:ccabe7ff24e8 19 cnt_m++;
trombettamichele 0:ccabe7ff24e8 20 }
trombettamichele 0:ccabe7ff24e8 21 if (cnt_m == 60) {
trombettamichele 0:ccabe7ff24e8 22 cnt_m = 0;
trombettamichele 0:ccabe7ff24e8 23 cnt_h++;
trombettamichele 0:ccabe7ff24e8 24 }
trombettamichele 0:ccabe7ff24e8 25 if (cnt_h == 24) cnt_h = 0;
trombettamichele 0:ccabe7ff24e8 26 }
trombettamichele 0:ccabe7ff24e8 27
trombettamichele 0:ccabe7ff24e8 28 int main() {
trombettamichele 0:ccabe7ff24e8 29
trombettamichele 0:ccabe7ff24e8 30 ticker_sec.attach(&inc_num, 1);
trombettamichele 0:ccabe7ff24e8 31 seconds = 0;
trombettamichele 0:ccabe7ff24e8 32 hours.setformat(format_DEC);
trombettamichele 0:ccabe7ff24e8 33 minutes.setformat(format_DEC);
trombettamichele 0:ccabe7ff24e8 34
trombettamichele 0:ccabe7ff24e8 35 while (1) {
trombettamichele 0:ccabe7ff24e8 36 hours.write(cnt_h);
trombettamichele 0:ccabe7ff24e8 37 minutes.write(cnt_m);
trombettamichele 0:ccabe7ff24e8 38 }
trombettamichele 0:ccabe7ff24e8 39 }