Merci lolo81 ! pour int MonInt = Convert.ToInt16(Txt3);
mais marche pas non plus ! erreur suivante 'Convert' was not declared in this scope
j'ai essayé avec // int d=Txt3.toInt16(); car int d=Txt3.toInt(); 'sans le 16 ne fait pas d'erreur mais me donne pas la bonne valeur.
mais me fait aussi une erreur!
si non y a t'il un notre moyen de récupérer une données en provenance d'un port série et de les garder en INT ou FLOAT ?
je m'explique mon pc m'envoi la donnée 105 mais en lecture sur arduino je suis obligé de récupérer avec read 3 bufer et de les recomposer en 105 peut etre existe t'il un autre moyen pour recréer 105 en int avec autre fonction!!?
je mis prend probablement mal car il me semble que récupérer une donnée autre qu'un simple caractère est la base de communication entre PC et arduino!
je sais plus trop la j'avoue être bloqué !
suis toujours preneur d'info ou de piste a étudier...
Les Strings c'est le mal incarner !
Ça a l'air facile, c'est pratique, mais au final c'est chiant et ça peut foutre un bordel pas possible avec la mémoire RAM.
Utilise les bonnes vielles fonctions de la libc tel que sscanf()
Maintenant, il fonctionne avec un int comme tu l'as demandé. Seulement 123456 c'est plus grand qu'un int (entre -32768 et +32767) ce qui explique peut être le résultat que tu obtenais. Si tu remplaces le atoi par un atol alors le résultat est correct mais tu dois travailler avec des long
Merci lolo81 ! ca aussi j'avais testé mais toujours erreur!
et Merci fdufnews !
Effectivement cette solution fonctionne bien ! et j'ai bien compris le problème de la taille et je pense aussi que la différence que j'avais dans mes 1er test était en rapport avec la taille...
vous m’avez bien aidé et je vous en remercie !
maintenant je vais me pencher sur l'utilisation de float en place de int avec le système de fdufnews et me re pencher aussi sur sscanf()
car je pense aussi éviter le plus possible les strings...