mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mit dem AVR ins Internet?


Autor: Jazz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

AVR Webserver Projekte gibt es ja schon wie Sand am Meer.
Aber hat es denn jemand mal anderstherum probiert?

Einen AVR einfach an ein Netzwerkkabel anschließen, und dann eine IP 
Aufrufen und dann Daten einlesen?
Es geht nur um eine html Datei, die im Internet eine Zeichenfolge 
bereitstellt.
Und diese soll de AVR auslesen. Tipps dazu wie man das am besten angeht?

Danke

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Tipps dazu wie man das am besten angeht?

Versuchen den Sourcecode vom Firefox in einen AVR zu quetschen?

Autor: Zwölf Mal Acht (hacky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nee. Firefox ist ein Interpreter. Es geht darum einen String zu lesen.
http-get ergibt einen String. Meist ist dieser groesser wie das RAM.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Nee. Firefox ist ein Interpreter.

Und genau das muss auch der AVR werden. Er muss HTML
interpretieren, mit all dem Schrott der da üblicherweise
mit in den Seiten drin steht. Versuchs mal mit ner Text Datei per FTP.
Das könnte vieleicht einfacher werden.

Autor: Jazz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nene, ich kann da doch kein komplettes Betriebssystem laufen lassen, 
worauf ich dann nen Browser installier. Ich will keinen AVR32 oder so 
nehmen, sondern was kleines. Dazu ein Netzwerkcontroller (ENC28J60)

Also ich nehme an, dass hat noch keiner gemacht, oder (Bei Google habe 
ich nichts gefunden)

Autor: Jazz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Zusatzfrage hätte ich allerdings auch noch. Wäre es möglich die 
aktuelle IP Adresse am Netzwerkkabel zu bestimmen, und zwar ohne http. 
Steckt das vllt schon im Protokoll mit drin?

Autor: Zwölf Mal Acht (hacky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es sollte kein Problem sein den String einzulesen und auf eine 
Zeichenfolge zu durchsuchen.

Autor: Oliver Heinrichs (Firma: OliverHeinrichs.de) (dobson)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hört sich schwer nach ein paar Versuchen mit dem AVR-NET-IO von Pollin 
an...
AVR Net-IO Bausatz von Pollin
Schau doch da mal rein.
Ulrich Radig und auch andere haben dafür sehr brauchbaren Code 
geschrieben. Ich persönlich habe Ulis Code etwas angepasst und nutze das 
jetzt zur Temperaturüberwachung meiner Räume.

Autor: Jazz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da geht es ja nur um Server, aber ich will ja als Client ins Internet

Autor: Oliver Heinrichs (Firma: OliverHeinrichs.de) (dobson)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab ich auch gerade gesehen. wollte meinen Beitrag eigentlich löschen, 
da hattest du schon geantwortet. Wieder mal zu schnell gelesen. Sorry.

Autor: Zwölf Mal Acht (hacky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das wuerde erst eine DNS Anfrage bedingen um dem Namen aufzuloesen, dann 
einen HTTP-GET auf diese IP.

Autor: Jazz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber wie soll ich meinen Namen auflösen können? Ich weiß doch nicht die 
Domain an die ich angeschlossen werde.
Das Modem reicht ja transparent zur angeschlossenen Netzwerkkarte durch. 
Somit weiß die Netzwerkkarte ja nur ihre feste, bzw. ihre zugewiesene 
IP.

Aber die InternetIP lässt sich wohl nur durch einen Internetservice wie 
meineIP.de feststellen, oder?

Autor: hdd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deine eigene IP bekommst du in einem Netzwerk entweder per DHCP vom 
Router o.ä. zugewiesen oder du suchst dir selbst in einem bestimmten 
Bereich eine aus. Deine öffentliche IP braucht dich eigentlich gar nicht 
zu interessieren wenn du hinter einem Router sitzt.

hacky meint, dass du die Domain, von der du Daten haben willst, in eine 
IP auflösen musst und mit dem daran angeschlossenen Server zu 
kommunizieren. Dazu gibt es DNS-Server im Internet, bei denen du 
nachfragst und dann die IP zurück bekommst. Zum Anfang kannst du die 
auch von Hand am Computer abfragen und dann fest einprogrammieren, aber 
das dürfte dein kleinstes Problem sein.

Du schickst an den Server ein Datenpaket in dem du mit HTTP angibst, 
welche Datei du haben willst. Dabei stehen u.a. deine lokale IP und die 
IP des Servers im Header. Dein Router verpackt das ganze dann nochmal 
mit der öffentlichen IP. Der Server versteht deine Nachricht und schickt 
seinerseits ein Datenpaket an deine öffentliche IP, das dein Router dann 
an dein Gerät weiterleitet und schon hast du deine Daten.

Ob das nun reiner Text, HTML oder MPEG4 ist, ist für die 
Datenübertragung (relativ) egal, damit muss sich dann dein Controller 
auseinandersetzten und das Interpretieren.

Autor: hab noch was (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Jazz schrieb:
> Aber hat es denn jemand mal anderstherum probiert?
Ja

> Einen AVR einfach an ein Netzwerkkabel anschließen, und dann eine IP
> Aufrufen und dann Daten einlesen?
genau das ist mit dem Code von Ulrich Radig schon möglich
http://www.ulrichradig.de/home/index.php/avr/eth_m32_ex

> Und diese soll de AVR auslesen. Tipps dazu wie man das am besten angeht?
AVR-NetIO kaufen und die Software von Urlich Radig drauftun.
Dann solltest du dir dich über Tcp und http informieren und Code von 
Ulrich Radig entsprechend deiner Vorstellungen anpassen.

> Es geht nur um eine html Datei, die im Internet eine Zeichenfolge
> bereitstellt.
Einfacher wäre eine Zeichenfolge ohne den ganzen html Müll drumherum. 
Weil die Datei nicht in den Ram passt müsstest du diese während des 
Empfangs analysieren und den relevanten Teil herrausfiltern.

Jazz schrieb:
> Aber wie soll ich meinen Namen auflösen können?
Deine eigene, externe IP ist als Client unwichtig.

Jazz schrieb:
> Das wuerde erst eine DNS Anfrage bedingen um dem Namen aufzuloesen,
Jazz meint die IP der Website die du runterladen möchtest.

Autor: Grolle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie fast immer lautet der Tipp: Schau mal bei ethersex rein.

Ich kenne Leute, die mit einer HTTP GET-Abfrage Sensor-Daten über ein 
PHP-Script des Servers in Datenbanken schieben.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.