Communiceren tussen PHP en Arduino

Arduino specifieke Software
Berichten: 1
Geregistreerd: 13 Apr 2016, 13:34

Communiceren tussen PHP en Arduino

Berichtdoor GMAC06 » 13 Apr 2016, 14:09

Ik voer vanuit een PHP script het volgende uit:
exec("mode COM5 BAUD=9600 PARITY=N data=8 stop=1 xon=off");
Hierna verstuur ik data met fputs("Bericht").

In een Arduino sketch luister ik naar de data in void loop().
Alleen het moment van versturen en ontvangen sluit niet op elkaar aan.
Soms ontvangt de loop wel de data, soms niet afhankelijk van wanneer de loop begint.

Wat kan ik doen, zodat de data altijd instant ontvangen kan worden met Serial.readString()?

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Communiceren tussen PHP en Arduino

Berichtdoor nicoverduin » 13 Apr 2016, 15:33

readString heel gauw uit je hoofd zetten omdat String nogal erg slecht omgaat met geheugen gebruik en vrijgeven
als volgt oplossing:
cpp code
char ontvangstBericht[100];               // maxlengte bericht is hier 99 tekens + string terminator
uint16_t bufferIndex; // index verwijzend naar plek in buffer
//
// alleen wat doen als er info is
//
bufferIndex = 0;
while (Serial.avaialable() {
ontvangsBericht[bufferIndex] = Serial.read();
bufferIndex++;
}
//
// als de buffer index gelijk aan 0 is, is er niets ontvangen
//
if (bufferIndex != 0 ){
//
// er staat data in de buffer
//
.....
}
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 108 gasten