BastatDoreau / Mbed 2 deprecated MoveYourTetris

Dependencies:   mbed APDS_9960 mbed-rtos

Dependents:   MoveYourTetris_OK

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?

UserRevisionLine numberNew 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 }