Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed APDS_9960 mbed-rtos
src/cMatrice.cpp@7:4b283e36b147, 2016-04-01 (annotated)
- Committer:
- clementdoreau
- Date:
- Fri Apr 01 14:30:30 2016 +0000
- Revision:
- 7:4b283e36b147
- Parent:
- 5:d6b0bf27bac6
- Child:
- 8:92d0c4961a16
Ajout divers
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
clementdoreau | 1:ab5f440f4156 | 1 | #include "cMatrice.h" |
clementdoreau | 1:ab5f440f4156 | 2 | |
clementdoreau | 7:4b283e36b147 | 3 | cMatrice::cMatrice() { |
clementdoreau | 7:4b283e36b147 | 4 | _matrice = new unsigned char *[8]; |
clementdoreau | 7:4b283e36b147 | 5 | for (unsigned char i = 0; i <= 7; i++) { |
clementdoreau | 7:4b283e36b147 | 6 | _matrice[i] = new unsigned char[8]; |
clementdoreau | 1:ab5f440f4156 | 7 | |
clementdoreau | 7:4b283e36b147 | 8 | } |
clementdoreau | 1:ab5f440f4156 | 9 | |
clementdoreau | 7:4b283e36b147 | 10 | for (unsigned char i = 0; i < 8; i++) { |
clementdoreau | 7:4b283e36b147 | 11 | for (unsigned char j = 0; j < 8; j++) { |
clementdoreau | 7:4b283e36b147 | 12 | _matrice[i][j] = LED_BLEU_FONCE; |
clementdoreau | 7:4b283e36b147 | 13 | } |
clementdoreau | 7:4b283e36b147 | 14 | } |
clementdoreau | 1:ab5f440f4156 | 15 | } |
clementdoreau | 1:ab5f440f4156 | 16 | |
clementdoreau | 7:4b283e36b147 | 17 | cMatrice::~cMatrice() { |
clementdoreau | 7:4b283e36b147 | 18 | //dtor |
clementdoreau | 1:ab5f440f4156 | 19 | } |
clementdoreau | 1:ab5f440f4156 | 20 | |
Willheisen | 3:493dd1cf30a4 | 21 | /*// GETTER |
clementdoreau | 7:4b283e36b147 | 22 | unsigned char cMatrice::getMatrice() |
clementdoreau | 7:4b283e36b147 | 23 | { |
clementdoreau | 1:ab5f440f4156 | 24 | |
clementdoreau | 7:4b283e36b147 | 25 | return _matrice; |
clementdoreau | 7:4b283e36b147 | 26 | }*/ |
Willheisen | 3:493dd1cf30a4 | 27 | |
clementdoreau | 1:ab5f440f4156 | 28 | // SETTER |
clementdoreau | 7:4b283e36b147 | 29 | void cMatrice::updateMatrice(cForme &f) { |
clementdoreau | 1:ab5f440f4156 | 30 | |
clementdoreau | 1:ab5f440f4156 | 31 | } |
clementdoreau | 1:ab5f440f4156 | 32 | // METHODES |
clementdoreau | 7:4b283e36b147 | 33 | void cMatrice::envoyerMatrice() { |
clementdoreau | 7:4b283e36b147 | 34 | |
clementdoreau | 7:4b283e36b147 | 35 | DigitalOut cs(p14); |
clementdoreau | 7:4b283e36b147 | 36 | SPI matrice(p11, p12, p13); |
clementdoreau | 7:4b283e36b147 | 37 | matrice.frequency(100000); |
clementdoreau | 7:4b283e36b147 | 38 | |
clementdoreau | 7:4b283e36b147 | 39 | _matrice[0][0] = LED_ORANGE; |
clementdoreau | 7:4b283e36b147 | 40 | |
clementdoreau | 7:4b283e36b147 | 41 | cs = 0; |
clementdoreau | 7:4b283e36b147 | 42 | wait(0.5); |
clementdoreau | 7:4b283e36b147 | 43 | |
clementdoreau | 7:4b283e36b147 | 44 | for (char i = 0; i < 8; i++) { |
clementdoreau | 7:4b283e36b147 | 45 | for (char j = 0; j < 8; j++) { |
clementdoreau | 7:4b283e36b147 | 46 | matrice.write(_matrice[i][j]); |
clementdoreau | 7:4b283e36b147 | 47 | } |
clementdoreau | 7:4b283e36b147 | 48 | } |
clementdoreau | 7:4b283e36b147 | 49 | wait(0.5); |
clementdoreau | 7:4b283e36b147 | 50 | cs = 1; |
clementdoreau | 1:ab5f440f4156 | 51 | } |
clementdoreau | 7:4b283e36b147 | 52 | |
Willheisen | 4:b7a46af55574 | 53 | // Paramètres: |
Willheisen | 4:b7a46af55574 | 54 | // f: Forme à afficher |
Willheisen | 4:b7a46af55574 | 55 | // c: Couleur |
clementdoreau | 7:4b283e36b147 | 56 | void cMatrice::afficherForme(cForme &f, unsigned char c) { |
Willheisen | 4:b7a46af55574 | 57 | // Changement de couleur des Leds |
clementdoreau | 7:4b283e36b147 | 58 | for (unsigned char i = 0; i < 4; i++) { |
clementdoreau | 7:4b283e36b147 | 59 | //f.getLed(i).allumer(c); |
clementdoreau | 7:4b283e36b147 | 60 | _matrice[f.getLed(i).getPositionX()][f.getLed(i).getPositionY()] = c; |
clementdoreau | 7:4b283e36b147 | 61 | } |
Willheisen | 4:b7a46af55574 | 62 | } |
Willheisen | 4:b7a46af55574 | 63 | |
clementdoreau | 7:4b283e36b147 | 64 | void cMatrice::ajouterForme(cForme & f, unsigned char c) { |
clementdoreau | 7:4b283e36b147 | 65 | _formes.insert(_formes.begin(), f); |
clementdoreau | 7:4b283e36b147 | 66 | afficherForme(f, c); |
Willheisen | 4:b7a46af55574 | 67 | } |
Willheisen | 4:b7a46af55574 | 68 | |
Willheisen | 4:b7a46af55574 | 69 | // Description: |
Willheisen | 4:b7a46af55574 | 70 | // Nettoyage de la matrice, passage à 0 de la valeur de chaque Led |
clementdoreau | 7:4b283e36b147 | 71 | void cMatrice::clear() { |
clementdoreau | 7:4b283e36b147 | 72 | for (char i = 0; i < 8; i++) { |
clementdoreau | 7:4b283e36b147 | 73 | for (char j = 0; j < 8; j++) { |
clementdoreau | 7:4b283e36b147 | 74 | _matrice[i][j] = LED_NOIR; |
clementdoreau | 7:4b283e36b147 | 75 | } |
clementdoreau | 7:4b283e36b147 | 76 | } |
Willheisen | 4:b7a46af55574 | 77 | } |
clementdoreau | 1:ab5f440f4156 | 78 | |
clementdoreau | 7:4b283e36b147 | 79 | cForme cMatrice::getForme(unsigned int i){ |
clementdoreau | 7:4b283e36b147 | 80 | return _formes.at(i); |
clementdoreau | 7:4b283e36b147 | 81 | } |