- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 7 von 7

Thema: Merkwürdige Nachrichten auf dem Seriellen Bus.

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied
    Registriert seit
    05.05.2014
    Beiträge
    30
    Es handelt sich um ein Arduino Uno, der über die USB Schnittstelle mit dem Computer verbunden ist.

    Arduino :
    Code:
    int serialComunication() {
    	if (Serial.available())
    	{
    		String comand = Serial.readStringUntil(';');
    		Serial.println();
    		if (comand == "Test")
    		{
    			Serial.println("Test:ok");
    		}
    		else if (comand.startsWith("Comand:") == 1)
    		{
    			String t = comand.substring(7);
    			Serial.println(t + ":ok");
    			return stoi(t);
    		}
    		else
    		{
    			Serial.println(comand);
    		}
    	}
    	return -1;
    }
    
    int stoi(String str)
    {
    	int temp = 0;
    	for (int i = 0; i < str.length(); i++) {
    		temp = temp * 10 + (str[i] - '0');
    	}
    	return temp;
    }
    
    void setup() {
    	Serial.begin(9600);
    	pinMode(LED_BUILTIN, OUTPUT);
    	PORTB |= 0x20; 
    }
    
    // the loop function runs over and over again until power down or reset
    void loop() {
    	int c = serialComunication();
    ...
    Programm :
    Code:
    internal class SerialHelper
        {
            SerialPort port;
            public SerialHelper(string comPort)
            {
                port = new SerialPort(comPort, 115200, Parity.None, 8, StopBits.One);
            }
    
            public bool Test()
            {
                if (!port.IsOpen)
                {
                    port.Open();
                }
    
                port.WriteLine("Test;");
                String t = port.ReadLine();
                while (true)
                {
                    Debug.WriteLine(t);
                    if (t.StartsWith("Test:ok"))
                    {
                        return true;
                    }
                    else if (t.StartsWith("Test"))
                    {
                        return false;
                    }
                    t = port.ReadLine();
                }
            }
    public bool Comand(int code)
            {
                if (!port.IsOpen)
                {
                    port.Open();
                }
    
                port.WriteLine($"Comand:{code};");
                String t = port.ReadLine();
                while (true)
                {
                    Debug.WriteLine(t);
                    if (t.StartsWith(code+":ok"))
                    {
                        return true;
                    }
                    else if (t.StartsWith($"Comand:{code}"))
                    {
                        return false;
                    }
                    t = port.ReadLine();
                }
    
            }
            public void Close()
            {
                if (port.IsOpen)
                {
                    port.Close();
                }
                port.Dispose();
            }
    PS: ich habe mit Baudraten rum probiert, des wegen ist im c# Code jetzt nicht die 9600 drin.
    Geändert von Schlepser (26.08.2022 um 22:55 Uhr)

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    907
    Schade, ich hab den UNO nicht - könnte maximal mit einem ESP32 aufwarten.
    Bevor ich das tue: Ich hab mal nach "VMDPR_" gesucht und das hier gefunden:
    https://www.visualmicro.com/forums/Y...num=1542916302

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    05.05.2014
    Beiträge
    30
    Ich danke dir, es hat geholfen.

    Im Release Modus werden keine VMDPR Botschaften mehr gesendet.

    Mfg.

Ähnliche Themen

  1. Eagle Merkwürdige Massenanbindungen
    Von Blue72 im Forum Konstruktion/CAD/3D-Druck/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 4
    Letzter Beitrag: 13.05.2013, 02:02
  2. Merkwürdige Fehlermeldung
    Von elkokiller im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 11.05.2008, 22:55
  3. Antworten: 0
    Letzter Beitrag: 04.05.2008, 16:25
  4. UART Programm zum Empfangen von Nachrichten
    Von KingTobi im Forum Robby RP6
    Antworten: 6
    Letzter Beitrag: 18.08.2007, 22:43
  5. Aus Computerprogramm Nachrichten per RS 232 senden/empfangen
    Von shahri im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 19
    Letzter Beitrag: 16.08.2006, 14:33

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen