Michaels NET-IO von Pollin


Eine kleine feine Testseite, um die Leistungsfähigkeit eines AVR Mikrocontrollers zu demonstrieren.
Die Seite ist mit einem normalen Texteditor für HTML geschrieben und wird als Binärdatei vom AVR
direkt an den Browser geschickt.

Die Technik:

Michaels NET IO Dieser Server hier ist der sogenannte NET-IO von Pollin und basiert im Wesentlichen auf einem Mikrocontroller ATmega32 von AVR und einem ENC28J60 Ethernet-Controller der Firma Microchip.
Die Platine beinhaltet noch 2 Spannungsregler, einmal mit 5V für den AVR und einmal 3,3V für den Netzwerkcontroller. Ein 10poliger ISP-Stecker zum Programmieren des AVR und ein 10poliger Erweiterungsstecker befinden sich auf der Platine. Ebenso ein 25poliger SUB-D-Stecker am Rand für weitere Erweiterungen wie z.B. PWM und I2C Ports. Auf der anderen Seite befinden sich Stromanschluß, Ethernet-Buchse und ein serieller Anschluß, über den diverse Debug-Meldungen ausgegeben werden können. Vier AD-Wandler Ports sind auf 10 Schraubklemmen am Rand herausgeführt, neben mehreren GND- und Vcc Anschlüssen.

Software:

Die Software ist komplett in Basic mit Bascom-AVR geschrieben.
Ja, richtig, Basic für Mikrocontroller. Eine saubere Sprache ohne ausschweifende Klammern und in der keine verschachtelten Rechnungen erlaubt sind.
Die nicht mehr ganz aktuelle Software kann man sich im Thread Pollin AVR Net-I/O und Bascom auf der 25.Seite holen. Die Version ist V098, allerdings ist in dem Paket noch eine alte Webseitenversion, nicht diese hier ;)
Die Software beinhaltet die komplette Behandlung der GET-Abfragen des Browsers, also Aufbau einer SYNC-Verbindung, das Senden der Daten und das Schließen der Verbindung. Beim Start wird ein DHCP-Server nach der IP-Adresse angefragt, ein NTP-Server nach der aktuellen Zeit gefragt und die interne Uhr gestellt. Dazu ist natürlich der 32kHz Quarz an PortC.6 und 7 nötig. Jede Minute wird die Temperatur eines DS1820 abgefragt und an das LCD-Display und die serielle Schnittstelle gesendet.

Was seit der letzten Version 098 erledigt ist:

Error 404 bei falscher Eingabe
Nichterreichen des Servers nach 10-12 Zugriffen
Der Server läßt nur 1 Verbindung zu.

Was noch zu tun ist:

mehr als 1 Zugriff erlauben
Einbinden der Configdatei von HansHans für IP, MAC etc.
Headertexte ausführlicher gestalten (Uhrzeit, etc.)
Einbinden der Schaltfunktionen für die I/Os
Darstellen derselben
Einbinden der Meßwerte des Temperaturfühlers
Verschlanken des Codes (es gibt viele Wiederholungen in HTTP, UDP, Telnet)
evtl. Code auslagern in eine http.inc
Anbindung einer externen Echtzeituhr
W3C-TÜV

Mitwirkende aus dem Bascom-Forum:

(alphabetisch geordnet)

boeserkorn,
HansHans,
Huetti,
Michael,
Samson2

Links:

NET-IO von Michael
NET-IO von HansHans
NET-IO von Samson2
Bascom Forum
Team-IWAN
Ulrich Radigs Webseite mit Link auf seinen Server

Inhalt:

index.htm
NET-IO.jpg
favicon.ico

mkinz@gmx.de

Aktueller Softwarestand 25.02.09 Version 099_2