Very simple library for controll a 7 segment display.
Dependents: Demo_Led7seg TP1_EJER02_FERNANDEZ_CLERICI TP1_EJER3 Ejercicio3JalleVentiades ... more
main.cpp@0:ccabe7ff24e8, 2011-04-22 (annotated)
- Committer:
- trombettamichele
- Date:
- Fri Apr 22 22:30:33 2011 +0000
- Revision:
- 0:ccabe7ff24e8
Who changed what in which revision?
User | Revision | Line number | New 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 | } |