Bah c'est la moindre des choses, en espérant que cela aide des Maker's ^^
Raspberry Pi -> Arduino USB C++
#42
Posté 09 décembre 2017 - 06:03
Hop, la même chose en C++ :
On garde le même code sur Arduino.
En revanche si vous mettez un delay à la fin du while, qu'il ne soit long sinon on perds des bytes...
Code arduino :
void setup() {
Serial.begin(9600);
}
void loop() {
while (Serial.available() > 0) { // if any data available
char incomingByte = Serial.read(); // read byte
Serial.write(incomingByte); // send it back
}
delay (10); //Si vous le mettez à 1000 (1sec) on perd des données.
}
Code c++ sur le raspberry :
#include <iostream>
#include "rs232.h"
#define BUF_SIZE 128
using namespace std;
int main()
{
int cport_nr(0); // 0 = ttyS0
int bdrate(9600); // Baud
char mode []={'8','N','1',0}; // 8 data bits, no parity, 1 stop bit
char str_send[BUF_SIZE];
unsigned char str_recv[BUF_SIZE]; // recv data buffer
strcpy(str_send, "Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890.");
if (RS232_OpenComport(cport_nr, bdrate, mode)) // Ouvre le port.
{
cout <<"Ne peut pas ouvrir le port com."<< endl;
return 0;
}
cout << "Raspberry connecté : "<< endl;
while(1)
{
RS232_cputs(cport_nr, str_send); // Envoie une chaîne via le port série.
cout <<"Envoie à Arduino : " << str_send << endl;
sleep(1);
int n = RS232_PollComport(cport_nr, str_recv, BUF_SIZE); // Obtient des caractères du port série.
if (n > 0)
{
str_recv[n] = 0; // always put a "null" at the end of a string
cout <<"Reçu : "<< n <<" bytes. " << endl;
cout << str_recv << endl;
}
}
return 0;
}
Résultat :
Raspberry connecté : Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Reçu : 92 bytes. Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. Envoie à Arduino : Coucou robot maker plop plop plop un message bien long, il en faut ^^ @°&$----- 1234567890. ^C
Voilou ^^
- Melmet aime ceci
#45
Posté 26 mars 2018 - 11:01
Oui d'autres vont s'en servir vu que tu as crée un sujet dédié je vais pouvoir pointer sur ce sujet ![]()
Si mon commentaire vous a plus laissez nous un avis ! ![]()
Nouveau sur Robot Maker ?
Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope aux articles, à la boutique et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être !
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!
Répondre à ce sujet
Aussi étiqueté avec au moins un de ces mots-clés : rs232, Tx Rx, Arduino, Raspberry Pi 3, C++
1 utilisateur(s) li(sen)t ce sujet
0 members, 1 guests, 0 anonymous users














