Une horloge à afficheurs 7 segments

Dependencies:   BSP_DISCO_F746NG

Committer:
sol427
Date:
Mon Jun 22 16:33:43 2020 +0000
Revision:
4:06a5a25319d5
Horloge fonctionnelle

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sol427 4:06a5a25319d5 1 #ifndef HORLOGE_H
sol427 4:06a5a25319d5 2 #define HORLOGE_H
sol427 4:06a5a25319d5 3 #include <stdint.h>
sol427 4:06a5a25319d5 4 #include <vector>
sol427 4:06a5a25319d5 5 #include "mbed.h"
sol427 4:06a5a25319d5 6
sol427 4:06a5a25319d5 7 using namespace std;
sol427 4:06a5a25319d5 8 //#include "stm32746g_discovery_lcd.h"
sol427 4:06a5a25319d5 9 class Horloge
sol427 4:06a5a25319d5 10 {
sol427 4:06a5a25319d5 11
sol427 4:06a5a25319d5 12 public:
sol427 4:06a5a25319d5 13 Horloge();
sol427 4:06a5a25319d5 14 void setTempsPrecedent(uint8_t minutes, uint8_t heures);
sol427 4:06a5a25319d5 15 vector<uint8_t> get4Digits();
sol427 4:06a5a25319d5 16 uint8_t getMinutes();
sol427 4:06a5a25319d5 17 uint8_t getHeures();
sol427 4:06a5a25319d5 18 uint8_t getMinutesPre();
sol427 4:06a5a25319d5 19 uint8_t getHeuresPre();
sol427 4:06a5a25319d5 20 void setRegistres(DigitalOut* dataPin, DigitalOut* clockPin, uint8_t data);
sol427 4:06a5a25319d5 21 void minuteP();
sol427 4:06a5a25319d5 22 void minuteM();
sol427 4:06a5a25319d5 23 void heureP();
sol427 4:06a5a25319d5 24 void heureM();
sol427 4:06a5a25319d5 25 void update();
sol427 4:06a5a25319d5 26 void sonner();
sol427 4:06a5a25319d5 27
sol427 4:06a5a25319d5 28 private :
sol427 4:06a5a25319d5 29 // Serial pc(USBTX, USBRX, 115200)
sol427 4:06a5a25319d5 30 DigitalOut* dataPin;
sol427 4:06a5a25319d5 31 DigitalOut* clockPin;
sol427 4:06a5a25319d5 32 DigitalOut* latchPin;
sol427 4:06a5a25319d5 33 PwmOut* enablePin;
sol427 4:06a5a25319d5 34 uint8_t m_minutes;
sol427 4:06a5a25319d5 35 uint8_t m_heures;
sol427 4:06a5a25319d5 36 uint8_t m_minutesPre;
sol427 4:06a5a25319d5 37 uint8_t m_heuresPre;
sol427 4:06a5a25319d5 38 uint8_t m_secondesPre;
sol427 4:06a5a25319d5 39 bool m_reveilActif;
sol427 4:06a5a25319d5 40 uint8_t m_minutesReveil;
sol427 4:06a5a25319d5 41 uint8_t m_heuresReveil;
sol427 4:06a5a25319d5 42 bool point = false;
sol427 4:06a5a25319d5 43
sol427 4:06a5a25319d5 44 uint8_t m_table[10] = {
sol427 4:06a5a25319d5 45 0b01110111, // 0 ABCDEF
sol427 4:06a5a25319d5 46 0b01000001, // 1 BC
sol427 4:06a5a25319d5 47 0b00111011, // 2 ABDEG
sol427 4:06a5a25319d5 48 0b01101011, // 3 ABCDG
sol427 4:06a5a25319d5 49 0b01001101, // 4 BCFG
sol427 4:06a5a25319d5 50 0b01101110, // 5 ACDFG
sol427 4:06a5a25319d5 51 0b01111110, // 6 ACDEFG
sol427 4:06a5a25319d5 52 0b01000011, // 7 ABC
sol427 4:06a5a25319d5 53 0b01111111, // 8 ABCDEFG
sol427 4:06a5a25319d5 54 0b01101111, // 9 ABCDFG
sol427 4:06a5a25319d5 55 };
sol427 4:06a5a25319d5 56 uint8_t m_table3[10] = {
sol427 4:06a5a25319d5 57 0b01110111, // 0 ABCDEF
sol427 4:06a5a25319d5 58 0b01000001, // 1 BC
sol427 4:06a5a25319d5 59 0b10110011, // 2 ABDEG
sol427 4:06a5a25319d5 60 0b11100011, // 3 ABCDG
sol427 4:06a5a25319d5 61 0b11000101, // 4 BCFG
sol427 4:06a5a25319d5 62 0b11100110, // 5 ACDFG
sol427 4:06a5a25319d5 63 0b11110110, // 6 ACDEFG
sol427 4:06a5a25319d5 64 0b01000011, // 7 ABC
sol427 4:06a5a25319d5 65 0b11110111, // 8 ABCDEFG
sol427 4:06a5a25319d5 66 0b11100111, // 9 ABCDFG
sol427 4:06a5a25319d5 67 };
sol427 4:06a5a25319d5 68
sol427 4:06a5a25319d5 69 };
sol427 4:06a5a25319d5 70 #endif