Commit 45bbb2b8962e0dd81cfd8262b267970156e94d48

Authored by mduquesn
1 parent 40c27986

setup sd file ok

gestion r et d
Showing 1 changed file with 45 additions and 11 deletions   Show diff stats
@@ -6,6 +6,8 @@ @@ -6,6 +6,8 @@
6 #include <string.h> 6 #include <string.h>
7 #define ti 20 7 #define ti 20
8 8
  9 +#include<SD.h>
  10 +
9 #ifndef _BV 11 #ifndef _BV
10 #define _BV(bit) (1 << (bit)) 12 #define _BV(bit) (1 << (bit))
11 #endif 13 #endif
@@ -18,6 +20,9 @@ Adafruit_MPR121 cap = Adafruit_MPR121(); @@ -18,6 +20,9 @@ Adafruit_MPR121 cap = Adafruit_MPR121();
18 uint16_t lasttouched = 0; 20 uint16_t lasttouched = 0;
19 uint16_t currtouched = 0; 21 uint16_t currtouched = 0;
20 int tab[]={3,7,15,2,6,14,1,5,9,0,4,8}; 22 int tab[]={3,7,15,2,6,14,1,5,9,0,4,8};
  23 +File fichier;
  24 +String filename="texte.txt";
  25 +char c;
21 26
22 27
23 void Printstr(String msg){ 28 void Printstr(String msg){
@@ -53,10 +58,21 @@ void setup() { @@ -53,10 +58,21 @@ void setup() {
53 58
54 //Serial 59 //Serial
55 Serial.begin(9600); 60 Serial.begin(9600);
56 -  
57 while (!Serial) { // needed to keep leonardo/micro from starting too fast! 61 while (!Serial) { // needed to keep leonardo/micro from starting too fast!
58 delay(10); 62 delay(10);
59 } 63 }
  64 +
  65 + //SD
  66 + while(! SD.begin(4)){
  67 + delay(1000);
  68 + }
  69 + Serial.println("SD OK");
  70 +
  71 + //File
  72 + while( !(fichier=SD.open(filename,FILE_WRITE)) ){
  73 + delay(1000);
  74 + }
  75 + Serial.println("file OK");
60 76
61 //keyboard in 77 //keyboard in
62 Serial.println("Adafruit MPR121 Capacitive Touch sensor test"); 78 Serial.println("Adafruit MPR121 Capacitive Touch sensor test");
@@ -74,32 +90,47 @@ void setup() { @@ -74,32 +90,47 @@ void setup() {
74 90
75 91
76 92
  93 +
  94 +
  95 +
  96 +
  97 +
  98 +
  99 +
  100 +
  101 +
  102 +
77 void loop() { 103 void loop() {
78 // Get the currently touched pads 104 // Get the currently touched pads
79 currtouched = cap.touched(); 105 currtouched = cap.touched();
80 /* 106 /*
81 //effacement de la mémoire 107 //effacement de la mémoire
82 - if ((currtouched & _BV(/*D*/)) && !(lasttouched & _BV(/*D*/)) ) { 108 + if ((currtouched & _BV(2)) && !(lasttouched & _BV(2)) ) {
  109 + Serial.println("D");
83 //effacer ce qui est présent dans la carte SD 110 //effacer ce qui est présent dans la carte SD
84 - } 111 + }*/
85 //récupération des entrées 112 //récupération des entrées
86 - if ((currtouched & _BV(/*R*/)) && !(lasttouched & _BV(/*R*/)) ) {  
87 - //gérer la lecture du fichier contenant les entrées  
88 - //récupération des entrées  
89 - //Keyboard.write(entrée) 113 + if ((currtouched & _BV(5)) && !(lasttouched & _BV(5))) {
  114 + Serial.println("R");
  115 + fichier.seek(0);
  116 + while((c=fichier.read())!=-1){
  117 + Keyboard.write(c);
90 } 118 }
91 - */ 119 + }
  120 +
92 121
93 for (uint8_t i=0; i<12; i++) { 122 for (uint8_t i=0; i<12; i++) {
94 // it if *is* touched and *wasnt* touched before, alert! 123 // it if *is* touched and *wasnt* touched before, alert!
95 if ((currtouched & _BV(i)) && !(lasttouched & _BV(i)) ) { 124 if ((currtouched & _BV(i)) && !(lasttouched & _BV(i)) ) {
96 Serial.print(tab[i]); Serial.println(" touched"); 125 Serial.print(tab[i]); Serial.println(" touched");
97 - Keyboard.press('0'+tab[i]); 126 + c=('0'+tab[i]);
  127 + Keyboard.press(c);
98 } 128 }
99 // if it *was* touched and now *isnt*, alert! 129 // if it *was* touched and now *isnt*, alert!
100 if (!(currtouched & _BV(i)) && (lasttouched & _BV(i)) ) { 130 if (!(currtouched & _BV(i)) && (lasttouched & _BV(i)) ) {
101 Serial.print(tab[i]); Serial.println(" released"); 131 Serial.print(tab[i]); Serial.println(" released");
102 - Keyboard.release('0'+tab[i]); 132 + c=('0'+tab[i]);
  133 + Keyboard.release(c);
103 } 134 }
104 if(i==1 || i==5)i++; 135 if(i==1 || i==5)i++;
105 } 136 }
@@ -125,4 +156,7 @@ void loop() { @@ -125,4 +156,7 @@ void loop() {
125 156
126 // put a delay so it isn't overwhelming 157 // put a delay so it isn't overwhelming
127 delay(100); 158 delay(100);
128 -}  
129 \ No newline at end of file 159 \ No newline at end of file
  160 +}
  161 +
  162 +
  163 +// >v< <v>