Foutcode 'no match for operator'

algemene C code
Berichten: 1
Geregistreerd: 18 Mrt 2020, 15:37

Foutcode 'no match for operator'

Berichtdoor AndreasSchepens » 18 Mrt 2020, 15:43

Ik zou graag de P1 poort van een slimme meter uitlezen met volgende code.
Ik had eerst datatype char gebruikt maar de data was niet leesbaar (waarschijnlijk omdat ze te groot is voor char)
Daarom heb ik char vervangen door een string. maar nu komt telkens deze fout.
Iemand die mij kan helpen?
na 'types are...' moet nog 'string' en 'int' in de foutmelding
Bijlagen
Knipsel.JPG
Knipsel.JPG (34.03 KiB) 220 keer bekeken

Advertisement

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

Re: Foutcode 'no match for operator'

Berichtdoor nicoverduin » 18 Mrt 2020, 17:28

Nou een ding kan ik je wel vertellen:
Bit operaties op een String gaat niet werken tenzij je de inhoud per individuele byte gaat verwerken( en begrijpt waar je mee bezig bent).
Maar als het een char was geweest dan is het enige wat je doet is het 8ste bitje uitzetten. En hou je een 7 bits getal over. Maar dat ligt aan de data die je binnen krijgt.
Verder is het onduidelijk wat je eigenlijk verwacht binnen te krijgen.
Wat je evt nog wel kan doen is (mochten het leesbare tekens zijn) is Serial.write(s); gebruiken. Mogelijk komt daar wat zinnigers uit.
Maak er dus weer een char van!!
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Gebruikers-avatar
Berichten: 155
Geregistreerd: 22 Jan 2013, 16:40

Re: Foutcode 'no match for operator'

Berichtdoor zuid » 23 Mrt 2020, 09:48

Ik had eerst datatype char gebruikt maar de data was niet leesbaar (waarschijnlijk omdat ze te groot is voor char)


Ik weet nog wel een paar mogelijkheden waardoor er bij het uitlezen van een slimme meter onleesbare tekens komen.
De bits van de data is "geïnverteerd", dit kan je oplossen in de hardware of in de software. Is dat in de hardware gedaan?
Niet elke meter werkt met 115200 , er zijn ook meters met 9600.

Terug naar de char en opzoek naar het echte probleem denk ik.

m.v.g. Nico

Terug naar C code

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 0 gasten