Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
z1013:literatur:practic-90-11-1 [2010/07/28 09:38] – Externe Bearbeitung 127.0.0.1z1013:literatur:practic-90-11-1 [2017/04/08 09:59] (aktuell) volkerp
Zeile 1: Zeile 1:
-//practic 11/90, S. 37-38//+====== practic 11/90, S. 37-38 ======
  
-//O. Matthäi//+//O. Matthäi//
  
-====== Real-Time-Clock-Modul für den Z 1013 ======+====== Real-Time-Clock-Modul für den Z 1013 ======
  
-In vielen 8-Bit-Rechnern ist noch keine Echtzeituhr implementiert. Wir stellen eine vor, die außerdem+In vielen 8-Bit-Rechnern ist noch keine Echtzeituhr implementiert. Wir stellen eine vor, die außerdem
  
-  * keine Speicherzellen des Grundrechners benötigt+  * keine Speicherzellen des Grundrechners benötigt
-  * keinen Einfluß auf die Datenübertragung zum Massenspeicher hat, da sie keinen PIO-Port benutzt, +  * keinen Einfluß auf die Datenübertragung zum Massenspeicher hat, da sie keinen PIO-Port benutzt, 
-  * geringen Platz benötigt (nur drei Schaltkreise),+  * geringen Platz benötigt (nur drei Schaltkreise),
   * billig ist,   * billig ist,
   * keinen Abgleich erfordert,   * keinen Abgleich erfordert,
   * unkritisch im Aufbau ist (Uni-Platine) und   * unkritisch im Aufbau ist (Uni-Platine) und
-  * unabhängig von der Rechnertaktfrequenz arbeitet.+  * unabhängig von der Rechnertaktfrequenz arbeitet.
  
-Kernstück neben den Â»Pfennig-IC« 74LS00 und 8205 ist der RTC 62421. Er wird für etwa 10,- DM gehandelt und beinhaltet eine komplette Echtzeituhr (Quarzgenerator, Uhrzeitspeicher mit Sekunden, Minuten, Stunden, Tag, Monat, Jahr, Woche und drei Kontrollregistern. Die insge samt 16 I/O-Register können gelesen und beschrieben werden.+Kernstück neben den »Pfennig-IC« 74LS00 und 8205 ist der RTC 62421. Er wird für etwa 10,- DM gehandelt und beinhaltet eine komplette Echtzeituhr (Quarzgenerator, Uhrzeitspeicher mit Sekunden, Minuten, Stunden, Tag, Monat, Jahr, Woche und drei Kontrollregistern. Die insgesamt 16 I/O-Register können gelesen und beschrieben werden.
  
-Der Betrieb der Baugruppe ist an allen 8-Bit-Rechnern möglich. Die hier vorgestellten Anschlüsse und das Maschinenprogramm entsprechen jedoch dem Z1013. Demzufolge wählte ich die I/O-Adressen 70H-7FH Es sind noch folgende Adressen möglich 10H-1FH, 30H-3FH, BoH-BFH, DoH-DFH. Eine Kollision mit anderen Adressen (z.B. der RAM-Floppy-Karte) müssen Sie vermeiden!+Der Betrieb der Baugruppe ist an allen 8-Bit-Rechnern möglich. Die hier vorgestellten Anschlüsse und das Maschinenprogramm entsprechen jedoch dem Z1013. Demzufolge wählte ich die I/O-Adressen 70H-7FH Es sind noch folgende Adressen möglich 10H-1FH, 30H-3FH, BoH-BFH, DoH-DFH. Eine Kollision mit anderen Adressen (z.B. der RAM-Floppy-Karte) müssen Sie vermeiden!
  
-Nach dem unkritischen Aufbau stecken Sie das Modul ohne RTC an den Rechnerbus und starten das BASIC-Programm. Nun muß die I/O-LED leuchten. Danach (Betriebsspannung abschalten!) kann der RTC in seine Fassung. Nach erneutem Start des BASIC-Programms können Sie die unten links zu sehende Uhrzeit einstellen und haben, solange Sie das BASIC-Programm laufen lassen, die aktuelle Zeit.+Nach dem unkritischen Aufbau stecken Sie das Modul ohne RTC an den Rechnerbus und starten das BASIC-Programm. Nun muß die I/O-LED leuchten. Danach (Betriebsspannung abschalten!) kann der RTC in seine Fassung. Nach erneutem Start des BASIC-Programms können Sie die unten links zu sehende Uhrzeit einstellen und haben, solange Sie das BASIC-Programm laufen lassen, die aktuelle Zeit.
  
-Ein Maschinenprogramm ist besser und universeller einsetzbar. Die hier vorgestellte Version ist nicht optimiert. Sie besteht aus den Teilen INITRTC zur Initialisierung und RTC zur Zeltdarstellung in der rechten oberen Ecke (Bildschirmadresse EC17H-EC1FH). Während der Initialisierung müssen Sie die aktuelle Zeit in der Reihenfolge der Abfrage eingeben. Diese ist vom Schaltkreis vorgegeben und darf nicht verändert werden. Unter dem Betriebssystem SCP2RFxxx kann man diesen Teil z.B. durch BooT aufrufen.+Ein Maschinenprogramm ist besser und universeller einsetzbar. Die hier vorgestellte Version ist nicht optimiert. Sie besteht aus den Teilen INITRTC zur Initialisierung und RTC zur Zeitdarstellung in der rechten oberen Ecke (Bildschirmadresse EC17H-EC1FH). Während der Initialisierung müssen Sie die aktuelle Zeit in der Reihenfolge der Abfrage eingeben. Diese ist vom Schaltkreis vorgegeben und darf nicht verändert werden. Unter dem Betriebssystem SCP2RFxxx kann man diesen Teil z.B. durch BOOT aufrufen.
  
 Das Programm RTC ruft TSTS im Pollingbetrieb auf. Die aktuelle Zeit wird also immer dann angezeigt, wenn bei Bildschirmein- oder -ausgaben, beim Drucken usw. die Tastatur abgefragt wird (INKEY). Also 1...50 mal in der Sekunde. Das Programm RTC ruft TSTS im Pollingbetrieb auf. Die aktuelle Zeit wird also immer dann angezeigt, wenn bei Bildschirmein- oder -ausgaben, beim Drucken usw. die Tastatur abgefragt wird (INKEY). Also 1...50 mal in der Sekunde.
  
-[[practic-90-111.htm|{{practic-90-111.jpg?572x250}}]]\\  Zeichnung: H Schütze+{{practic-90-111.jpg?572x250}}\\  Zeichnung: H Schütze
  
-==== BASIC-Programm ====+===== BASIC-Programm =====
  
-  1   OUT(125),1: out(127),15+<code> 
 +  1   OUT(125),1: Out(127),15
   2   CLS: PRINT" TIME ?": PRINT:   2   CLS: PRINT" TIME ?": PRINT:
       INPUT"H*10";HZ: INPUT"H*1";HE       INPUT"H*10";HZ: INPUT"H*1";HE
   3   INPUT"M*10";MZ: INPUT"M*1";ME   3   INPUT"M*10";MZ: INPUT"M*1";ME
-  1o  oUT(112),0: OUT(113),0: +  10  OUT(112),0: OUT(113),0: 
-      oUT(114),ME: OUT(115),MZ: +      OUT(114),ME: OUT(115),MZ: 
-  2o  oUT(116),HE: OUT(117),HZ: +  20  OUT(116),HE: OUT(117),HZ: 
-  3o  oUT(125),0 +  30  OUT(125),0 
-  4o  oUT(126),4 +  40  OUT(126),4 
-  5o  oUT(127),0 +  50  OUT(127),0 
-  6o  CLS +  60  CLS 
-  7o  A=INP(112): B=INP(113) +  70  A=INP(112): B=INP(113) 
-  8o  C=INP(114): D=INP(115) +  80  C=INP(114): D=INP(115) 
-  9o  E=INP(116): F=INP(117) +  90  E=INP(116): F=INP(117) 
-  1oo PRINT AT(30,6);D: PRINT AT(30,8);C+  100 PRINT AT(30,6);D: PRINT AT(30,8);C
       PRINT AT(30,12);B: PRINT AT(30,14);A       PRINT AT(30,12);B: PRINT AT(30,14);A
-  11o PRINT AT(30,0);F: PRINT AT(30,2)E +  110 PRINT AT(30,0);F: PRINT AT(30,2)E 
-  129 GoTo 70+  120 GOTO 70 
 +</code>
  
-==== INITRTC ==== 
  
 +===== INITRTC =====
 +
 +<code>
   700 F5 C5 3E 01 D3 7D 3E 00 387   700 F5 C5 3E 01 D3 7D 3E 00 387
   708 D3 7F E7 02 54 49 4D 45 36A   708 D3 7F E7 02 54 49 4D 45 36A
Zeile 57: Zeile 61:
   728 71 D3 7D 3E 04 D3 7E 3E 392   728 71 D3 7D 3E 04 D3 7E 3E 392
   730 00 D3 7F C1 F1 C9 00 00 3CD   730 00 D3 7F C1 F1 C9 00 00 3CD
 +</code>
  
-==== RTC ====+===== RTC =====
  
 +<code>
   800 C5 D5 E5 0E 70 ED 78 0E 470   800 C5 D5 E5 0E 70 ED 78 0E 470
   808 71 ED 40 0E 72 ED 50 0E 369   808 71 ED 40 0E 72 ED 50 0E 369
Zeile 69: Zeile 75:
   838 7D C6 30 32 18 EC E1 D1 45B   838 7D C6 30 32 18 EC E1 D1 45B
   840 C1 C9 00 00 00 00 00 00 18B   840 C1 C9 00 00 00 00 00 00 18B
 +</code>
  
-| **Offset** | **Name** | **D3** | **D2** | **D1** | **D0** | **Zählweite** |+Offset Name D3 D2 D1 D0 ^ Zählweite |
 | +0 | SECEINER | S8 | S4 | S2 | S1 | 0..9 | | +0 | SECEINER | S8 | S4 | S2 | S1 | 0..9 |
 | +1 | SECZEHNER | * | S40 | S20 | S10 | 0..5 | | +1 | SECZEHNER | * | S40 | S20 | S10 | 0..5 |
Zeile 84: Zeile 91:
 | +B | YZEHNER | Y80 | Y40 | Y20 | Y10 | 0..9 | | +B | YZEHNER | Y80 | Y40 | Y20 | Y10 | 0..9 |
 | +C | WEEKDAY | * | W4 | W2 | W1 | 0..6 | | +C | WEEKDAY | * | W4 | W2 | W1 | 0..6 |
-| +D | Kontrollregister D |           +| +D | Kontrollregister D |      
-| +E | Kontrollregister E |           +| +E | Kontrollregister E |      
-| +F | Kontrollregister F |           |+| +F | Kontrollregister F |      |
  
  • z1013/literatur/practic-90-11-1.1280309936.txt.gz
  • Zuletzt geändert: 2010/07/27 22:00
  • (Externe Bearbeitung)