Einfacher und billiger Webserver mit AtMega32

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

Beschreibung

Diese Webserver-Hardware besteht aus:

  • einer kleinen Leiterkarte (ca. 15cm*5cm)
  • einem alten ISA-Steckplatz (von einem Motherboard ausgelötet)
  • einer alten ISA-Netzwerkkarte (mit RTL8019 oder 3COM-Chip)
  • einem gesockelten Atmega32 (bzw. Atmega644 siehe unten!)
  • einer seriellen Schnittstelle
  • einer Stiftleiste, die ich als SD-Karten-Steckplatz benutze
  • ein bischen Kleinkram

Was macht diese Hardware?

Es ist ein kompletter Webserver, das heisst: "meine Homepage läuft darauf"! Die Homepage ist auf einer SD-Karte gespeichert! Einen kleinen Telnet-Server hat Ulrich Radig auch implementiert. Ein kleiner FTP-Server ist auch mit drauf. Die Homepage erstellt man einfach am PC, speichert sie auf der SD-Karte, und los gehts.

Welche Internet-Adresse hat dann solch ein Webserver?

Bei meinem Internet-Router kann ich einen sogenannten "dynDNS-Dienst" (kostenlos) eintragen. Dann hat mein Webserver im Internet z. B. folgende Adresse: "www.MeinWebserver.dyndns.org". Mein Webserver steht dann schön bei mir zu hause und kann aus dem Internet angesprochen werden. Wenn er nicht aus dem Internet angesprochen werden soll, lasse ich die DynDNS-Geschichte weg und spreche ihn direkt über eine netzinterne IP-Adresse (in der Art 192.168.2.*) an. Dafür reicht mein kleines Haus-Netzwerk, oder einfach nur ein PC mit einem gekreuzten Netzwerkkabel.

Hardware

Die Platine kann bei mikrocontroller.cco-ev.de bestellt werden. Eine Bestelliste für die anderen Bauteile ist am Ende des Artikels angegeben. Der Aufbau ist unproblematisch, soweit etwas Löterfahrung gegeben ist.

Software

Mit der aktuellen Software V1.40 (ACHTUNG: hierbei einen MEGA644 verwenden) wurde der Funktionsumfang stark erweitert. Die Software kann u.a. die Zeitinformation von einem NTP-Server abfragen, E-Mails getriggert verschicken, Daten auf die SD-Karte schreiben (z. B. zeit- oder ereignisgesteuert Bilder von der WebCam) oder die WebCam-Bilder zu einem FTP-Server übertragen. Das ganze funktioniert nicht nur im internen Netz, sondern auch durch einen Router nach 'draussen'. Die Datenübergabe und - verarbeitung zum/vom Browser ist 'einfacher' geworden. Man kann mit speziellen Tags im HTML-Code direkt auf ein Array im RAM des Controllers zugreifen, um Werte auszugeben oder zu setzen. Für eine detailliertere Beschreibung der Funktionen, bitte den Link unten auf dieser Seite benutzen.

Inbetriebnahme

  • Fuse-bit auf Quartz einstellen (XTAL), JTAG deaktivieren
  • Software aufspielen (Source)
  • Seriellen Ausgang mit Terminal-Programm überwachen (9600 Baud, 8 Datenbits, 1 Stopbit, keine Flusskontrolle)
  • Mit Netzwerk verbinden. Bei Problemen sicherstellen: Ist dein Rechner in der selben IP-Gruppe (192.168.x.*)?

Siehe auch

Bestellliste

Layout
Anzahl
Reichelt-Nr Bezeichnung Preis in €
Gesamtpreis in €
IC1
1
ATMEGA 32-16 DIP
ATMEGA 644-20PU
ATMega AVR-RISC-Controller, DIL-40
bzw. alternativ: Pinkompatibler Atmega 644
4,45 bzw. 6,35
4,45 bzw. 6,35

1
GS 40
IC-Sockel, 40-polig, doppelter Federkontakt 0,10
0,10
IC2
1
MAX 232 CPE RS232-Driver, DIL-16 0,41
0,41

1
GS 16
IC-Sockel, 16-polig, doppelter Federkontakt 0,05
0,05
SV1
1
WSL 10G
Wannenstecker, 10-polig, gerade 0,07
0,07
SV2
1
WSL 14G
Wannenstecker, 14-polig, gerade 0,14
0,14
MMC/SD
1
SL 2x10G 2,54
auf 2x7 kürzen
0,07
0,07
C1 - C2
2
KERKO 22P
0,06
0,12
C3 - C9 / C13
9
KERKO 100N
0,06
0,54
C10
1
100nF
?
?
?
C11 / C12
2
TANTAL 22/16
0,28
0,56
X1
1
STECKER 62-254
0,57
0,57

1
STECKER 46-254 um 5 kürzen (oder ganz weglassen, weil völlig überflüssig)
n.v.
n.v.
X2
1
D-SUB BU 09EU D-SUB-Buchse, 9-polig, gewinkelt, RM 9,4 0,27
0,27
X4
1
AKL 101-02
Anschlussklemme 2-polig, RM 5,08
0,28
0,28
R1 / R2 / R4
3
1/4W 1,8K Preis für 10 Stück
0,33
0,33
R3 / R10
2
1/4W 10K Preis für 10 Stück 0,33
0,33
R5 / R6 / R7
3
1/4W 3,6K Preis für 10 Stück 0,33
0,33
R8 / R9/ R11 / R12
4
1/4W 470 Preis für 10 Stück 0,33
0,33
D1-D2
2
1N4148

0,02
0,04
D3
1
1N 4001

0,02
0,02
LED1
1
LED 5MM ST GN grün
0,06
0,06
LED2
1
LED 5MM ST RT rot
0,07
0,07
N1
1
µA 7805 Spannungsregler 1A positiv, TO-220 0,26
0,26
Q1
1
16,000-HC18 Standardquarz, Grundton, 16,0 MHz 0,18
0,18




Summe:
9,58

(2007 noch 9,16€)

Ähnliche Projekte

  • avrETH1 Webserver von Simon Schulz. You can connect an old cellular phone add-on camera to the Internet using an ATmega32 microcontroller and an ENC28J60 Ethernet controller. The compact system’s hardware can fit in a matchbox (1.25² × 1.88²).
  • Etherrape Project by Alexander Neumann and Michael Schwab. Atmega644 Microcontroller with Ethernet using ENC28J60. Additional applications like OneWire(TM), RS485, Infrared Remote Control RX/TX, Webcam Interface already on main PCB. PCB, construction-kit and housing avaiable via Webshop. Software is open source.
  • OpenMCP Kleines und wenig bekanntes Projekt von Dirk Broßwick und Peter Wiedorn. Sehr schöne Ausführung. Trotz relativ kleiner Abmaße und ein SMD-Bauteil einfacher einseitiger Aufbau. Netter Kontakt.