Bonjour
pour poursuivre un ancien post
voila je cherche a recevoir d'excel des variables
sur excel donc en colonne A j'ai une liste qui va jusque 72
je souhaite récupérer cette valeur dans l'arduino en sachant que de toute facon sur la matrice je n'allume qu'une seule led
je vous met le schema de cablage ainsi que le code comment j'ai commence
merci de votre aide
int colonnes[DIM] = {31,32,33,34,35,36,37,38}; // Colonne
int lignes[DIM] = {22,23,24,25,26,27,28,29,30}; // Ligne
//*********************
//******************
void setup(){
Serial.begin(9600); /comunicacion serial a 9600 b/
// Définition des colonnes comme sorties
for(int i = 0; i<DIMC; i++){
pinMode(colonnes*,OUTPUT); // Definir comme sortie*
digitalWrite(colonnes*,LOW); // Mettre a zero*
}
// Définition des lignes comme sorties
for(int i = 0; i<DIML; i++){
pinMode(lignes*,OUTPUT); // Definir comme sortie*
digitalWrite(lignes*,LOW); // Mettre a zero*
}
}
void loop() {
// delay(DELAY); // Attendre
if(Serial.available() > 0) /On controle si quelque chose arrive/
_ if(Serial.read()==68) { /on recoie D (68 en ASCII).../
* digitalWrite(lignes[2],HIGH); // Activer une ligne*
digitalWrite(colonnes[2],LOW); // Activer la colonne
* }
if(Serial.read()==69) { /on recoie E (69 en ASCII).../
digitalWrite(lignes[0],HIGH); // Desactiver la colonne*
digitalWrite(colonnes[0],LOW); // Desactiver la ligne
* }
if(Serial.read()==70) { /on recoie F (70 en ASCII).../
digitalWrite(lignes[0],LOW); // Desactiver la colonne*
digitalWrite(colonnes[0],HIGH); // Desactiver la ligne
* digitalWrite(lignes[2],LOW); // Desactiver la colonne*
digitalWrite(colonnes[2],HIGH); // Desactiver la ligne
* }
}
[/quote]
*_
Tu aurais du repartir sur l'ancien sujet parce que là ton histoire de led, c'est pas clair !
sur l'ancien poste j'etait parti sur multiplexage
la je fais une matrice de 9x8
erreur sur
int colonnes[DIM] = {31,32,33,34,35,36,37,38}; // Colonne
int lignes[DIM] = {22,23,24,25,26,27,28,29,30}; // Ligne
la c'est bon
int colonnes[DIM] = {30, 31,32,33,34,35,36,37,38}; // Colonne
int lignes[DIM] = {22,23,24,25,26,27,28,29}; // Ligne
je sélectionne sur excel une ligne et je récupère la valeur sur la colonne A
On suppose que je recupere la valeur 1 qui correspond a LED1 cablé sur le schema de cablage entre ligne0 et colonne0 soit sur arduino entre 22 et 30
je souhaite envoye 1 ou 2 .... ou 72 d'excel vers arduino
Pour moi c'est toujours pas clair mais ça doit être le changement d'heure
, bref ...
Comment tu récupères tes données de ton fichier Excel ?
BrUnO14200:
Comment tu récupères tes données de ton fichier Excel ?
en faite, je crois que c'est sa question... comment recuperer des valeurs sur dans un tableur.
Moije te conseil de faire un fichier .CSV
lisable par excel, et autre tableur...
oui je comprend
je met Connexion de la ligne au +5V
digitalWrite(ligne, HIGH);
je connecte la colonne concernée à la masse pour allumer la LED
digitalWrite(colonne, LOW);
le fait d'envoyer le caractere A d'excel sera reconnu par arduino comme 65 ,B=66 etc..
je que je souhaite c'est si j'envoie 1 d'excel cela soit reconnu comme 1 sur arduino , 72 comme 72
tout cela pour eviter d'ecricre 72 lignes
voila je test seulement mon programme
j'ai créé 3 boutons sous excel
1 allumer led 1
2 allumer led 2
3 eteindre toute les leds
#define DIM 3 // x/y dimension - 3x3 matrix
#define DELAY 20 // Temps de pose entre 2 combinaisons
int colonnes[DIM] = {5,6,7}; // Colonne
int lignes[DIM] = {10,11,12}; // Ligne
//*********************
//******************
void setup(){
Serial.begin(9600);
// Définition des colonnes comme sorties
for(int i = 0; i<DIM; i++){
pinMode(colonnes*,OUTPUT); // Definir comme sortie*
digitalWrite(colonnes*,LOW); // Mettre a zero*
}
// Définition des lignes comme sorties
for(int i = 0; i<DIM; i++){
pinMode(lignes*,OUTPUT); // Definir comme sortie*
digitalWrite(lignes*,LOW); // Mettre a zero*
}
}
void loop() {
delay(DELAY); // Attendre
if(Serial.available() > 0) {
* if(Serial.read()==68) { *
* digitalWrite(lignes[0],HIGH); // Activer une ligne*
digitalWrite(colonnes[2],LOW); // Activer la colonne
* }*
* if(Serial.read()==69) {*
* digitalWrite(lignes[0],HIGH); // Desactiver la colonne*
digitalWrite(colonnes[0],LOW); // Desactiver la ligne
* }*
* if(Serial.read()==70) { *
* digitalWrite(lignes[0],LOW); // Desactiver la colonne*
digitalWrite(colonnes[0],HIGH); // Desactiver la ligne
* digitalWrite(lignes[0],LOW); // Desactiver la colonne*
digitalWrite(colonnes[2],HIGH); // Desactiver la ligne
* }*
* }*
}[/quote]
lorsque je clic sur bouton 1 ou 2 pour la première fois les 2 leds s’allume
je suis obligé de faire éteindre les leds et ensuite si je sélectionne 1 ou 2 ou les deux cela fonctionne
si deja avec 2 leds cela ne fonctionne pas alors je ne sais pas