Hallo, ich suche eine Möglichkeit, um vom AVR über LAN (TCP/IP) einen Pc darüber zu informieren, dass sich z.Bsp. ein Portzustand geändert hat. Mir ist klar, dass es ganz einfach ist mittels regelmäßiger Anfragen vom PC aus die Daten von einem AVR WEB Server abzuholen. Aber damit verursacht man Netzlast und belastet den jeweiligen PC. Ich schaffe es leider nicht die verfügbaren Informationspuzzleteile zusammen zusetzen. Wer kann mir einen keinen Tip geben? Wie sieht die einfachste LAN Kommunikation aus die durch einen AVR gestartet wird? Danke & Gruß PS: alles auf Seiten des PC (Linux) ist kein Problem, mir fehlt das Verständnis für den AVR.
enc28j60 an den AVR und dann einen geeigneten IP-Stack laufen lassen Ist aber nichttrivial oder das fertige board von pollin nehmen
Superschnelle Antwort, Danke! Du meinst sicher diesen AVR Net IO Bausatz - der ist mir schon aufgefallen. Aus der Doku kann ich aber nicht entnehmen, wie die Kommunikation aufgebaut werden kann. Ganz blöd formuliert, ich brauche eine Idee für eine Funktion "sende_daten <io port zustand> <ip adresse>" . In der Pollin Doku ist ab Seite 12 ein Protkoll, das wurde aber ZUM AVR geöffnet und nicht DURCH den AVR selbst. Hmm, ich stehe irgendwie auf der Leitung.
Die einfachste Möglichkeit dürfte sein, dass Du einen fertigen Netzwerkstack verwendest und mit diesem UDP-Pakete verschickst. Bei UDP ist allerdings nicht sichergestellt, dass das Paket auch beim Empfänger ankommt. Soll dies abgesichert sein --> TCP anstatt UDP. Ich hatte mich im Rahmen meiner Diplomarbeit mit Netzwerkprotokollen beschäftigt. Die Diplomarbeit ist unter http://www.familie-finke.com zu finden. Der beiliegende Code kann UDP-Pakete versenden. Das Aufbauen einer TCP-Verbindung unterstützt der Code noch nicht, kann aber einfach nachgerüstet werden (hatte ich mal testweise laufen). Gruß, Thomas
Als Protokoll nicht HTTP (Webserver) benutzen sondern einfach ein eigenes. Eine TCP Verbindung aufmachen und der AVR kann Daten senden wann er will. Am Besten noch einen zyklischen Watchdog damit der PC sicher mitbekommt wenn die Übertragung unterbrochen ist.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.