Hallo dots
Du hast einiges Durcheinander in Deinem Post:
Der DC-SS500 hängt:
an Pin 1 für TX und Pin 12 für RX ??
oder an Pin 2 und 12 des Arduino ??
Bitte mach nicht dieses Durcheinander indem Du 2 serielle Schnittstellen verwendest und die TX über die eine und RX über die andere schickst.
mySerial.println("$sure temp");
laut Datenblatt mußt Du ein Return senden ( 0x0d und 0x0a ) siehe Note1 Datenblatt Seite 5 (leider kann man nichts vom Datenblett kopieren. Haben die Angst ich kopiere ihnen was weg? >:( )
if ((ch == 0x0a) || (ch == 0x0d)) // CR or LF
{
s[n] = 0; // null terminate the string
return(n);
}
Diese Code hat keinen Sinn da Du der Variable ch ja nur einmal den Wert 0 zuweist.
Auch diese Konstrukt hat wenig sinn:
while(ms--)
{
while (Serial.available() > 0)
{
Sinnvoller finde ich:
- Du sendest die Anfrage auf Daten
- Kurze Wartezeit
- Du liest die Daten von der serielle Schnittstelle mit
while (Serial.available() > 0)
{
Serial.print(char(Serial.read()));
}
fertig.
Falls Du sie in eine Variable speichen möchtest:
while (Serial.available() > 0)
{
ch[n]= (Serial.read();
Serial.print(char(ch[n]);
n++;
}
Und bitte scheribe einen sauberen Kode und verwende nicht 2 Schnittstellen um die Daten zu Senden/Empfangen.
Grüße Uwe