d

Revision:
0:31b36057b213
Child:
1:bb64b6783fa9
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Matrice.cpp	Sun Mar 12 13:34:59 2017 +0000
@@ -0,0 +1,54 @@
+#include "Matrice.h"
+
+Matrice ::~Matrice(void){
+   if (_spi) delete _spi; // destruction de l'objet SPI
+   if (_cs) delete _cs;
+}
+
+Matrice::Matrice(void)
+{
+_spi=NULL;
+_cs=NULL;
+state=false;
+}
+
+Matrice::Matrice(SPI * spi,DigitalOut *cs ){ // Constructeur avec la liason SPI 
+  beginSPI(spi, cs);
+}
+
+void Matrice::beginSPI( SPI * spi, DigitalOut *cs){
+       state=false;
+       if (_spi) delete _spi; // on verifie qu'une liason spi n'existe pas déja 
+       _spi=spi;  
+       if (_cs)delete _cs;//Creation du Chip Select/ 
+        _cs=cs;      
+       if (_spi && _cs)
+       { 
+        state = true; // Etat de la liason SPI
+        _spi->format(8); // 8 bits de données 
+        _spi->frequency(100000); // frequence 10khz -> Max 125khz
+        _cs->write(1); // CS/ a 1)
+        }
+    
+   }
+  
+void Matrice::ecrireMatrice( char * buffer)
+{
+    
+    if (state == true)
+    {
+    // Select the device by seting chip select low
+       _cs->write(0);
+
+    wait_ms(1);
+    //Ecriture des 64 leds
+    for ( int i =0; i<=64;i++)
+    {
+       _spi->write(buffer[i]);
+     }
+   wait_ms(1);
+    // Remontee de CS/
+    _cs->write(1);
+    }
+    
+}
\ No newline at end of file