VTs Seite
Zisterne
Projekte
SOFI 1999
Urlaubsbilder
Kontakt
MegaAVR HW
NTP-Timeserver
RS232-Ethernet
DCF-Uhr
Ultraschall
Diasteuerung
NTP-Timeserver

Zurück

Der NTP-Timeserver liefert die Uhrzeit über ein Ethernet-Interface auf Port 123 (UDP) aus. Der Server selbst ist per DCF77 synchronisiert und liefert somit eine hochgenaue Uhrzeit im LAN, ohne dass die versorgten Geräte auf eine externe Internetverbindung zu einem Zeitserver angewiesen sind. Mit der verwendeten Hardware kommt der Server mit einer Stromaufnahme von ca. 1,5W aus. Als CPU wird ein Atmel MEGA32 verwendet.
Der TCP/IP-Stack ist eine leicht modifizierte Version der uIP-Portierung für Atmel-AVR uipAVR (Original uIP-Stack von Adam Dunkel).

Meine Erweiterung besteht darin, einen UDP-Port (Listen auf UDP Port 123) für NTP zu öffnen, was in der Original-Version nicht vorgesehen war. Ausserdem ist der Treiber des RTL8019AS für das Auslesen der MAC-Adresse aus dem seriellen EEPROM erweitert worden und das Bustiming an die den CPU-Takt von 16,384MHz angepasst worden (kaum zu glauben, aber der “kleine” AVR Prozessor ist selbst mit per I/O-Ports emuliertem CPU-BUS-Interface zu schnell für den betagten ISA-Bus)

Ausserdem ist noch eine RS232-Ethernet Bridge enthalten, mit dem Geräte mit serieller Schnittstelle über Ethernet bzw. Internet “fernbedient” werden können. Einen passenden COM-Port Redirector für Windows gibt’s z.B. von Lantronix (RAW-Mode).
Die Bridge ist getestet mit dem Baud Raten von 1200 bis 115200 Baud. Mit 19200 Baud konfiguriere ich z.B. eine Ackermann ISDN-Telefonanlage.

Zur Statusanzeige verwende ich ein 2x20-Zeichen LCD-Display

Achtung neue Version 1.3 vom 1.3.2008 korrigiert einen Fehler in der Schaltjahresberechnung.
Bitte neu herunterladen und die Firmware flashen, sonst entsteht ein Versatz von einem Tag.

Downloads:
Sourcecode NTP-Server

Wenn Fragen auftauchen: Kontakt