Arduino
- Ephefrere
- Auteur du sujet
- Hors Ligne
- Membre premium
C'était quoi tes intentions avec les variables suivante dans ton programme?
int Ephefrere2;
long Ephefrere3 = 11;
int Ephefrere4 = 33;
Un arbre tordu vit sa vie, un arbre droit finit en planche…
Connexion ou Créer un compte pour participer à la conversation.
- Ephefrere
- Auteur du sujet
- Hors Ligne
- Membre premium
Chu d'accord avec toi que des fois c'est pas évidant de démarrer un nouvelle appareil ou une application etc les concepteurs et programmeur sont rarement de bon pédagogues hi hi hiVous êtes vraiment impressionnant je lis ce post et j'ai l'impression que c'est écrit en mandarin moi qui essaie depuis quelques jours sans succès de connecter mon graveur laser a un portable.
Je me sens comme un élève de niveau élémentaire assistant a une formation post-doctorale.
Et le plus navrant maintenant quand tu poses tes questions sur le net pour résoudre ton problème, la grande partie des réponses que tu rencontres te disent de googler sur le net
Un arbre tordu vit sa vie, un arbre droit finit en planche…
Connexion ou Créer un compte pour participer à la conversation.
- Bricoleur22
- Hors Ligne
- Membre premium
- J'ai 66 ans et il me manque qu'une seule dent
- Messages : 13553
- Remerciements reçus 4328
Vous êtes vraiment impressionnant je lis ce post et j'ai l'impression que c'est écrit en mandarin
En fait ca parait pire pour ceux qui n'ont pas en main une carte Arduino a 4$ et le compilateur qui est gratuit, car lorsqu'on suit pas a pas !!! c'est plus facile....
J'invite les mortaiseux a se procurer a un endroit de son choix une carte et rien d'autres pour l'instant, juste pour s'amuser pour s'amuser !
www.aliexpress.com/item/33045190965.html
Connexion ou Créer un compte pour participer à la conversation.
- Ephefrere
- Auteur du sujet
- Hors Ligne
- Membre premium
Mon kit (S17) était à 10$ neuf mais déjà déballer
Un arbre tordu vit sa vie, un arbre droit finit en planche…
Connexion ou Créer un compte pour participer à la conversation.
- Bricoleur22
- Hors Ligne
- Membre premium
- J'ai 66 ans et il me manque qu'une seule dent
- Messages : 13553
- Remerciements reçus 4328
Le choix des appellations de ces variables était simplement pour démontrer que l'on peu leur donner le nom qu'on veut.C'était quoi tes intentions avec les variables suivante dans ton programme?
int Ephefrere2;
long Ephefrere3 = 11;
int Ephefrere4 = 33;
Pour ceux non utilisé c'était pour démontrer que l'on peu les déclarer un variable avec ou sans valeur par défaut.
Connexion ou Créer un compte pour participer à la conversation.
- Ephefrere
- Auteur du sujet
- Hors Ligne
- Membre premium
Merci
Un arbre tordu vit sa vie, un arbre droit finit en planche…
Connexion ou Créer un compte pour participer à la conversation.
- Bricoleur22
- Hors Ligne
- Membre premium
- J'ai 66 ans et il me manque qu'une seule dent
- Messages : 13553
- Remerciements reçus 4328
Pièces jointes :
Connexion ou Créer un compte pour participer à la conversation.
- Rubrifolia
- Hors Ligne
- Membre premium
- Messages : 16046
- Remerciements reçus 2883
Chu d'accord avec toi que des fois c'est pas évidant de démarrer un nouvelle appareil ou une application etc les concepteurs et programmeur sont rarement de bon pédagogues hi hi hiVous êtes vraiment impressionnant je lis ce post et j'ai l'impression que c'est écrit en mandarin moi qui essaie depuis quelques jours sans succès de connecter mon graveur laser a un portable.
Je me sens comme un élève de niveau élémentaire assistant a une formation post-doctorale.
Et le plus navrant maintenant quand tu poses tes questions sur le net pour résoudre ton problème, la grande partie des réponses que tu rencontres te disent de googler sur le net
Connexion ou Créer un compte pour participer à la conversation.
- Ephefrere
- Auteur du sujet
- Hors Ligne
- Membre premium
J'ai fait mes devoir et été vérifier de ce qui en sortait avec les nouvelle commande
Serial.available() vérifie si il y a du data dans le buffer d'entrée du port
Serial.read() fait une lecture (la plus ancienne entrée) dans la pile du buffer
char(inByte) fait une conversion ASCII de la lecture pour être en mesure de la comparer avec une des 3 lettres minuscule
Encore
Un arbre tordu vit sa vie, un arbre droit finit en planche…
Connexion ou Créer un compte pour participer à la conversation.
- Bricoleur22
- Hors Ligne
- Membre premium
- J'ai 66 ans et il me manque qu'une seule dent
- Messages : 13553
- Remerciements reçus 4328
A la ligne 1, le if signifie que c'est une condition a respecter !
A la ligne 2, c'est la lecture du data qui entre par le port série en format décimal de 1 a 256
A la ligne 3, c'est une autre condition a respecter comparant la valeur attendu qui est "j" et la valeur decimal qui est 106 et convertit en format ASCII.
Connexion ou Créer un compte pour participer à la conversation.
- Bricoleur22
- Hors Ligne
- Membre premium
- J'ai 66 ans et il me manque qu'une seule dent
- Messages : 13553
- Remerciements reçus 4328
En attendant je t'invite a l'essayer (tu peux écrire toi-même ce code ou faire un copier/coller, car j'ai mis le texte sous la photo)
///////////////////////////////
String st_txt1 = "Période inconnue, tu dois entrer s ou j ou n";
int inByte;
void setup() {
Serial.begin(9600);
}
void loop() {
delay(1000);
if (Serial.available() > 0) {
inByte = Serial.read();
switch (inByte) {
case 'j': st_txt1 = "Bonjour"; break;
case 's': st_txt1 = "Bonsoir"; break;
case 'd': break;
case 'n': st_txt1 = "Bonne nuit"; break;
case '?': break;
case 'R': break;
case 't': break;
case 'P': break;
default: st_txt1 = "Valeur inconnue";
}
}
Serial.println (st_txt1);
}
/////////////////////////////////////
Pièces jointes :
Connexion ou Créer un compte pour participer à la conversation.
- Ephefrere
- Auteur du sujet
- Hors Ligne
- Membre premium
J'ai une bonne idée de ce qu'il font mais je cherche spécifiquement de la documentation technique sur les usages
'a'
'\0'
"aaa"
"a"
oui bien sur il y a des exemples sur leur utilisation avec certaine fonction mais c'est spécifiquement sur ' et " que je ne trouve pas dans mes recherches d'info
Merci
Un arbre tordu vit sa vie, un arbre droit finit en planche…
Connexion ou Créer un compte pour participer à la conversation.
- Mr_Toupie
- Hors Ligne
- Membre premium
- Messages : 2324
- Remerciements reçus 467
je suis un peu embêter car je ne retrouve pas dans les différente documentation des explications explicite sur l'usage du ' t du " dans les programmes
L'utilisation du simple guillemet sert à indiquer une valeur de type caractère (char). Ex: 'c'
Tandis qu'utiliser le double guillemet indique le type chaîne de caractères (string). Ex: "Ephephrere"
Certaine fonctions veulent avoir un seul caractère passé en paramètre donc on doit utiliser le simple guillemet.
Il est accepté de mettre un seul caractère dans des doubles guillemet mais le résultat sera tout de même considéré comme une chaîne de caractères qui possède un seul élément. Notez que de passer une chaîne (double guillemet) de 1 élément en paramêtre à une fonction qui veux un seul caractère va probablement donner une erreur.
Ex:
[ Correct ]: isControl( 'c' )
[ Pas Correct ]: isControl( "c" )
L'utilisation du backslash \ indique qu'il s'agit d'un caractère de contrôle: Ex: '\n' veux dire CTRL-N (new line)
Dans ce cas, le \ ne compte pas pour un caractère. C'est plutôt le duo \ et n qui compte pour un seul caractère.
Pour obtenir seulement un \ sans qu'il désigne un contrôle, on a simplement à le doubler: Ex: '\\'
Connexion ou Créer un compte pour participer à la conversation.
- Bricoleur22
- Hors Ligne
- Membre premium
- J'ai 66 ans et il me manque qu'une seule dent
- Messages : 13553
- Remerciements reçus 4328
Pour ce qui est de Switch, il n'accepte dans les comparaisons que des valeurs numériques ou un seul caractère ASCII entre des simples guillemets et qui correspond entre entre 0 et 255 de la table ASCII :
Cliquer deux fois pour agrandir :
Pour revenir a Switch, je n'ai jamais trouvé d'équivalant pour ce compilateur qui me permettrait de comparer une string avec des chaînes de caractères au lieu d'utiliser une multitude de if ou de else !
Mr_toupie en connais-tu une par hazard ?
Connexion ou Créer un compte pour participer à la conversation.
- Mr_Toupie
- Hors Ligne
- Membre premium
- Messages : 2324
- Remerciements reçus 467
Effectivement, la commande "Switch" du langage Arduino ne supporte pas les comparaisons avec des chaînes de caractères.Pour revenir a Switch, je n'ai jamais trouvé d'équivalant pour ce compilateur qui me permettrait de comparer une string avec des chaînes de caractères au lieu d'utiliser une multitude de if ou de else !
Par contre, tout dépendemment de ce que tu veux faire, il est possible d'utiliser un "énumérateur" pour rendre la chose plus facile à lire pour un humain:
Ex:
enum Essences { INCONNU, SAPIN, EPINETTE, ERABLE }; // énumérateur
Essences es; // Variable globale de type Essences (nombre entier [int] déguisé)
void setup()
{
es = EPINETTE; //Valeur donné à la variable "es"
}
void loop()
{
switch (es) //Test pour trouver le bon cas pour la valeur de la variable
{
case SAPIN: Serial.println("Mon beau Sapin."); break;
case EPINETTE: Serial.println("Un 2x4 en épinette."); break;
case ERABLE: Serial.println("Pas juste pour faire du sirop."); break;
default: Serial.println("Je ne sais pas."); break; // INCONNU
}
}
Connexion ou Créer un compte pour participer à la conversation.