Homepage von Peter Rachow Startseite - Home

Der Selbstbau-Tauchcomputer

Allgemeines 

Forschung und Entwicklung: LCD-Anzeige | Mikrocontroller | Software | Sensoren | Gehäuse | Erfahrungsberichte

Geräte: SBTC3 | SBTC4 | Datenmodem zum PC | Simulator für Drucksensor

Der Mikrocontroller ATMega32

1. Systembeschreibung
2. Die Systemplatine
3. Die ISP-Schnittstelle

Nachdem das Display ausführlich getestet und verstanden wurde, kann man sich näher mit dem Mikrocontroller selbst beschäftigen, der die Rechen-, Mess- und Steuerbefehle abarbeiten soll und das "Zentralorgan" des SBTC darstellt. Wir münden dann ein in die Platine des SBTC um ein funktionsfähiges Testgerät zu erarbeiten.

1. Systembeschreibung

Der AVR-ATMega32-Controller (MUC = micro controller unit, kurz uC) der Firma ATMEL , der das Herzstück unseres Tauchcomputers bildet, besitzt u. a. folgende Eigenschaften: Der Atmel-AVR-Kontroller benötigt sehr wenig externe Bauelemente, um ein funktionierendes uC-System bereit zu stellen: Eine Spannungsregelung (i. d. R. 5 V, "L"-Typen 3V), evtl. einen Uhrenquarz (32.767 kHz) wenn man mit einem seiner 3 Timer arbeiten will (Timer2 für einen evtl. anzuwenden Powersave-Modus wie im SBTC) bzw. einen externen Quarzoszillator. Der uC arbeitet aber auch ohne externen Takt, da der uC einen recht präzisen internen Taktgenerator besitzt. Abschließend benötigt man einige Widerstände, Kondensatoren etc.

Ein weiterer Vorteil ist, dass diese Kontrollerfamilie (AVR- ATMega...) im Internet sehr gut beschrieben wird, so dass an Informationen kein Mangel besteht. Google hilft weiter.

Um sich etwas in die Hardware einzuarbeiten, empfehle ich daher wärmstens z. B. das hervorragend gemachte Tutorial auf mikrocontroller.net . Dort gibt es weiterführende Links zu Hardware, Software und Entwicklungsumgebungen für die ATMEL-Kontroller, u. a. das Datenblatt das ATmega32 , die Dokumentation und den kostenlosen GNU AVR C-Compiler etc. Eigentlich findet man dort alles, was man als Hobbyelektroniker über Mikrocontroller wissen muss.

2. Die Systemplatine

Die Systemplatine unseres SBTC ist im Prinzip ein einfaches Mikrocontroller-Testboard, das allerdings um verschiedene tauchcomputerspezifische Baugruppen erweitert wird.

Der Kern des Systems besteht wie beschrieben aus dem Mikrocontroller ATMega32. Der Mikrocontroller benötigt eine stabilisierte Speisespannung (VDD) von 5V, VDD an PIN 10 (Reset) und ist dann einsatzbereit. Ergänzt wird er durch das LCD-Display , die Programmierschnittstelle , den Drucksensor mit seinem Messverstärker, dem Temperatursensor , einer Stromversorgung aus einem 9V-Nickel-Metallhydridakku und 2 Spannungsreglern. Zusätzlich gibt es für die Bedienersteuerung 3 Taster, um die Einstellung verschiedener Parameter vor und während des Tauchganges durchzuführen.

Hier nun die Gesamtschaltung des SBTC:

Systemplatine des SBTC
Bild 1: Systemplatine des SBTC in der Version für analogen Drucksensor
(Grafik ist verkleinert, Schaltplan in voller Größe )

Anmerkungen zur Schaltung:
 
Aktiviert wird der SBTC durch einen Reedkontakt mit einem von außen an das Gehäuse angelegten Dauermagneten. Hier benutze ich einen kleinen stabförmigen Magneten von Mükra-Elektronik, der seitlich am Gehäuse sitzt und mit einem Gummiband verschiebbar ist, das um das gesamte Gehäuse herum liegt. Eine einfache und trotzdem praktikable Lösung, gut bedienbar auch mit Handschuhen.

3. Die ISP-Schnittstelle

Das, was man selbst an Software erzeugt hat, muss in den Controller hineingeladen werden. Dazu wird der Mikrocontroller wird über die parallele Schnittstelle (Druckerport) eines PC programmiert. Ich verwende dazu das Programm yaap , mit dem sich auch die sog. "Fusebits" des uC setzen lassen, also insbesondere die Taktrate des uC auf wahlweise 1,2, 4 oder 8 MHz einstellen lässt. Davon später mehr.

Die ISP-Schnittstelle benötigt zur Datenübertragung (Schreiben und Lesen des Mikrocontroller) lediglich 5 Leitungen vom Druckerport zum Mikrocontroller. Diese 5 Anschlüsse haben folgende Bezeichnungen:

Zur Informationsübertragung verwendet man unter yaap am besten das einfache Interface, das der Programmautor Jesper Hansen vorschlägt. Es handelt sich um 4 Widerstände (100 ), über die die Signale für die 4 oben bezeichneten Leitungen SCK, MOSI, MISO, und RESET geführt werden. Ein Schaltplan befindet sich im Softwarepaket von Herrn Hansen als GIF-Datei.

Weiter zu Teil III (Die Software)

Die SBTC-Seiten

Konzeption | LCD-Anzeige | Mikrocontroller | Software | Sensoren | Gehäuse | Erfahrungsberichte