Advertisement  

Saturday, 28 March 2020
     
 
Main Menu
Home Home
Shop Shop
News News
BASCOM-AVR BASCOM-AVR
BASCOM-8051 BASCOM-8051
Products Products
Application Notes Application Notes
Publications Publications
Links Links
Support Center Support Center
Downloads Downloads
Forum Forum
Resellers Resellers
Contact Us Contact Us
Updates Updates
MCS Wiki MCS Wiki
Online Help
BASCOM-AVR Help BASCOM-AVR Help
BASCOM-8051 Help BASCOM-8051 Help
Contents in Cart
Show Cart
Your Cart is currently empty.
Search the Shop

Products Search

User Login
Username

Password

If you have problem after log in with disappeared login data, please press F5 in your browser

RSS News
 
     
 

 
   
     
 
AN #206 - Stundenplan 3000 (DE) Print
Stundenplan 3000 (Germany language)

Der Stundenplan 3000 ist eine Mikrocontroller Applikation und erfühlt die Aufgabe eines elektronischen Stundenplanes. Dieser Stundenplan kann für sechs Wochentage bis zu 14 Unterrichtsstunden pro Tag speichern und anzeigen. Alle Eingaben werden in dem  Mikrocontroller dauerhaft gespeichert und gehen auch bei einem Batteriewechsel nicht verloren. Die Unterrichtsfächer können in einer Wochenübersicht oder in einer Tagesreihenfolge abgerufen werden. Zudem ist der Stundenplan mit einer automaischen Abschaltfunktion versehen, die aktiviert wird wenn er für ca. 3min nicht benutzt wird.

 

Konzept:

Dieses Elektronikprojekt ist für Schüler, Azubis und Elektronikeinsteiger konzipiert worden.

Es wurde als ein einfache und leicht verständliche Mikrocontroller Applikation entwickelt, die als Grundlage für folgende Themen dienen soll:

- Bauteile

o Transitoren

o Widerstände

o LEDs

o Tasten

o Mikrocontroller

- Bestückung von Platinen

- Löten

- Einführung BASCOM AVR IDE

- Mikrocontroller Programmtechnik

o Initialisierung

o Interrupts

o Multitasking

o Multiplex Anzeige

o Tastatur

o Sleepmodus / Reset

o EEprom

-Relevanter Anwendungsbereich

Bedienung:

Der Stundenplan wird über die Taste „EIN aktiviert. Es stehen zwei Anzeigemodi zu Verfügung. Der erste ist die Wochenübersicht. Hierbei werden die die Tage und die entsprechenden Fächer im Rotationverfahren („Mo“ bis „Sa“) für eine Sekunde angezeigt. Es spielt dabei keine Rolle ob ein Tag mit Unterrichtsfächern programmiert ist. Der Wochenmodus ist nach einem Tastendruck der Taste „EIN“ aktiviert.

 

Der zweite Anzeigemodus ist die Tagesansicht. Sie wird durch eine direkt Anwahl eines Tages  („Mo“-„Sa“) aktiviert. In der Tagesansicht wird nur der angewählte Tag und die entsprechenden Fächer angezeigt. Die Besonderheit ist jedoch, dass die Unterrichtstunden nun rotierend in der Reihenfolge in ihrer Programmierung angezeigt werden. Somit kann bei der Programmierung der Fächer auch die chronologische Reihenfolge der Unterrichtsstunden festgelegt werden.

Um die Unterrichtsstunden für einen Tag zu programmieren, muss der Stundenplan sich in der Tagesansicht befinden und der gewünschte Tag angewählt sein.

Über die Taste „Prog./Speichern“ wird der Programmiermodus aktiviert. Mit der Taste „Fach“ wird das gewünschte Fach ausgewählt. Die LED des entsprechenden Faches blinkt nun auf. Dabei spielt die Blinkweise  der LED eine wichtige Rolle. Blink die LED nur kurz auf,  ist  dieses Fach nicht für die Tag gespeichert. Blinkt die LED lange auf mit einer kleinen Pause, ist dieses Fach für diesen Tag gespeichert. Um ein Fach zu speichern oder wieder zu löschen, wird die Taste „Setzen/Löschen“ benutzt.

Der Mikrocontroller merkt sich bei der Programmierung, in welcher Reihenfolge die Unterrichtsstunden angewählt werden und gibt diese Reihenfolge später bei der Tagesansicht wieder. Ein erneuter Tastendruck „Prog./Speichern schließt die Programmierung ab.

Wird die Programmierung ohne eine Anwahl abgeschlossen, wird der entsprechende Tag gelöscht.

Der Stundenplan verfügt über eine „Auto off“ – Funktion. Das heißt, er schaltet sich ca. 3min nach dem letzten Tastendruck aus.

 

Schaltungsbeschreibung:

Das Herz der Schaltung ist der Mikrocontroller IC1. Er steuert alle Funktionen, wie LED –Anzeige, Tastaturabfrage und die Speicherverwaltung.

Die Anzeige der Unterrichtsstunden, die Anzeige der Wochentage  und die Tastaturabfrage sind in drei Blöcke geteilt und werden im Multiplexverfahren verarbeitet. Das heißt, es teilen sich mehre

LEDs und Taster ein Port vom Mikrocontroller. Damit der Mikrocontroller zwischen den LEDs und Tastern unterscheiden kann, benötigt er die Transistoren T1, T2 und T3. Diese Transistoren arbeiten wie ein Schalter. Wenn der Mikrocontroller z.B. den Transistor T2 aktiviert, werden die LEDs für die Wochentage (D15 - D20) mit der Masse verbunden. Bekommen nun die LED ein EIN-Signal vom Mikrocontroller, leuchten diese auf. Deaktiviert der Mikrocontroller wiederum den Transistor wird die Verbindung zum Masse unterbrochen, worauf die LEDs nicht mehr leuchten können.

Dabei wird für alle 10ms immer nur eine LED Gruppe eingeschaltet, entweder  die Unterrichtsstunden (D1-14) oder die Wochentage (D15-D20). Dadurch werden die LEDs mit einer Frequenz von 50Hz geschaltet. Also wird jede leuchtende LED 50mal in der Sekunde ein- und ausgeschaltet. Da unsere Augen sehr träge sind, können wir dieses Ein- und Ausschalten nicht mehr erkennen und sehen nur noch ein dauerhaftes Leuchten der LEDs.

Bei den Tastern ist es etwas anders. Mit dem  Transistor T1 aktiviert der Mikrocontroller die Tasten. Wird eine  Taste gedrückt, wird der entsprechende Port des Mikrocontrollers gegen Masse gezogen. Dieses Low-Signal detektiert der Mikrocontroller als Tastendruck.

 

Damit der Mikrocontroller alle Funktionen und Aufgaben bewältigen kann, ist das Programm als Multitasking Funktion aufgebaut. Zwar ist dieses Multitasking aufgrund der Übersichtlichkeit sehr einfach gehalten worden, aber es zeigt die Grundzüge einer Multitasking Programmstruktur auf.

Es laufen also mehrere Programmprozesse gleichzeitig unabhängig voneinander. Wie zum Beispiel die Tastaturabfrage, LED Anzeige oder Zeitfunktionen.

 

Die Widerstände R1 –R14 sind Vorwiderstände für die LEDs. Sie tragen dafür Sorge, dass die LEDs nicht zu viel Spannung bekommen und ihr Betriebsstrom begrenzt wird. Da gerade bei einer batteriebetriebenen Schaltung das Strommanagement eine wichtige Rolle spielt, sind die Dioden als LOW-Current Dioden ausgelegt. Diese Sorte Leuchtdioden benötigen nur 2mA Betriebsstrom.

Ein weiterer Trick ist um bei den Leuchtdioden noch mehr Strom zu sparen, ist sie gepulst (hier mit 50Hz) zu betreiben.

Die Formel für ein LED Vorwiderstand ist recht einfach.

Eine wichtige Rolle hat der Taster „EIN“ (S10). Der Stundenplan ist eigentlich nie aus, er ist immer an und der Taster „EIN“ ist eigentlich auch kein richtiger EIN –Schalter. Mit dem Taster S10 wird an dem Mikrocontroller ein Reset ausgelöst. Das heißt, egal was der Mikrocontroller auch macht, bei einem RESET fängt der Mikrocontroller immer wieder mit allem neu an. 

Zuerst sortiert sich der Mikrocontroller neu. Er bringt alle Ports in einem definierten Zustand, löscht Speicher und Register. Da fängt er mit dem ersten Programmschritt an.

Bei einem Auto Off wird der Stundenplan wie bereits angedeutet nicht richtig ausgeschaltet. Zuerst schaltet der Mikrocontroller alle LEDs und die Tasten ab. Dann versetzt sich der Mikrocontroller in einem Sleep –Modus. In diesem Sleep –Modus verbraucht der Mikrocontroller (also auch der Stundenplan) nur 3µA Strom, also 0.000003 Ampere. Es würde Jahre dauern bis in diesem Modus die Batterien aufgebraucht wären. Ist der Stundenplan aktiv, beträgt die Stromausnahmen auch nur maximal 15mA.

Durch einen  RESET mit der Taste „EIN“ (S10) wird der Mikrocontroller „aufgeweckt“ und somit der Stundenplan aktiviert.

 Bauteile:

 Menge Artikel Pos

20 Stk. Low Current LED 5mm  D1 – D20

3 Stk. BC547 T1, T2, T3

14 Stk.  470Ω, 1/4W R1 – R14

4 Stk. 100kΩ, 1/4W R15, R17, R19, R21

3 Stk. 10kΩ, 1/4W R16, R18, R20

1 Stk. ATMEGA8 IC1

1 Stk. 100nF C1

1 Stk. Stiftleiste 1x6 K1 + K2

10 Stk. Miniaturtaster S1 – S10

2 Stk. Mignon AA 1,5V Bat 1, Bat 2


[c] Achim Tüchter , Nordhorn
:nomit - Nordhorner Mikrocontroller Technik