Foutcode 'no match for operator'
3 berichten
• Pagina 1 van 1
- AndreasSchepens
- Berichten: 2
- Geregistreerd: 18 Mrt 2020, 15:37
Foutcode 'no match for operator'
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
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 (34.03 KiB) 4768 keer bekeken
Advertisement
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: Foutcode 'no match for operator'
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!!
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!!
Re: Foutcode 'no match for operator'
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
3 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 5 gasten