CMOS — Änderungen 2375 → 2376

Zeile 76: Zeile 76:
 
! Beschreibung
 
! Beschreibung
 
|-
 
|-
−
| 7 || Zeit-Update-Zyklus (1 = Update läuft, Zeitangaben undefiniert)
+
| 7 || Zeit-Update-Zyklus (1 = Update läuft => Zeitangaben undefiniert)
 
|-
 
|-
−
| 6-4 || Zeit-teiler (Standard = 010b = 32.768 kHz)
+
| 6-4 || Zeit-Basis (Standard = 010b = 32768 Hz)
 
|-
 
|-
−
| 3-0 || Auswahl-Bits für Interrupts
+
| 3-0 || Auswahl-Bits für Interrupt-Rate
 
             0000b = kein Interrupt
 
             0000b = kein Interrupt
 
             0011b = alle 122 Mikrosekunden (minimum)
 
             0011b = alle 122 Mikrosekunden (minimum)
Zeile 97: Zeile 97:
 
! Beschreibung
 
! Beschreibung
 
|-
 
|-
−
| 7 || Zeit-Update (0 = normales Update, 1 = Update läuft)
+
| 7 || Zeit-Update (0 = Zeit aktualisieren, 1 = Zeit-update anhalten)
 
|-
 
|-
−
| 6 || Periodischer Interrupt (0 = deaktiviert (Standard), 1 = aktiviert)
+
| 6 || Periodischer Interrupt mit Rate aus Statusregister A (0 = deaktiviert (Standard), 1 = aktiviert)
 
|-
 
|-
−
| 5 || Alarm Interrupt (0 = deaktiviert (Standard), 1 = aktiviert)
+
| 5 || Alarm Interrupt wenn Uhrzeit = Alarmzeit (0 = deaktiviert (Standard), 1 = aktiviert)
 
|-
 
|-
−
| 4 || Update-Ende-Interrupt (0 = deaktiviert (Standard), 1 = aktiviert)
+
| 4 || Update-Interrupt (0 = deaktiviert (Standard), 1 = aktiviert)
 
|-
 
|-
−
| 3 || Rechtecks-Frequenz (0 = deaktiviert (Standard), 1 = aktiviert)
+
| 3 || Rechtecks-Frequenz mit Rate aus Statusregister A erzeugen (0 = deaktiviert (Standard), 1 = aktiviert)
 
|-
 
|-
−
| 2 || Daten Modus (0 = BCD, 1 = Binary)
+
| 2 || Daten Modus (0 = BCD, 1 = Binär)
 
|-
 
|-
−
| 1 || 24/12 Stunden Wahl (0 = 24 Stunden (Standard), 1 = 12 Stunden)
+
| 1 || 24 Stundenformat (0 = 12 Stunden, 1 = 24 Stunden (Standard))
 
|-
 
|-
 
| 0 || Sommerzeit (0 = deaktiviert (Standard), 1 = aktiviert)
 
| 0 || Sommerzeit (0 = deaktiviert (Standard), 1 = aktiviert)
 +
|}
 +
</center>
 +
<br>
 +
 +
 +
=== 0x0C - Statusregister C ===
 +
<center>
 +
{| border="1" cellspacing="0"
 +
|-
 +
! Bit
 +
! Beschreibung
 +
|-
 +
| 7 || Interrupt-Request (1 = RTC hat Interrupt angefordert)
 +
|-
 +
| 6 || IRQ-Quelle ist periodischer Interrupt (0 = nein, 1 = ja)
 +
|-
 +
| 5 || IRQ-Quelle ist Alarm-Interrupt (0 = nein, 1 = ja)
 +
|-
 +
| 4 || IRQ-Interrupt ist Update-Interrupt (0 = nein, 1 = ja)
 +
|-
 +
| 3-0 || Reserviert
 +
|}
 +
</center>
 +
<br>
 +
 +
 +
=== 0x0D - Statusregister D===
 +
<center>
 +
{| border="1" cellspacing="0"
 +
|-
 +
! Bit
 +
! Beschreibung
 +
|-
 +
| 7 || Gültigkeit der Daten im CMOS (0 = ungültig, 1 = Daten sind gültig)
 +
|-
 +
| 6-0 || Reserviert
 
|}
 
|}
 
</center>
 
</center>
Zeile 118: Zeile 154:
 
== Programmierung ==
 
== Programmierung ==
  
−
Die Programmierung des CMOS ist denkbar einfach: Die fünf niederwertigen Bits des I/O Ports 0x70 dienen als Offset (siehe Tabelle). Durch Lesen bzw. Schreiben des I/O Ports 0x71 kann dann der Wert an diesem Offset gelesen bzw. geschrieben werden.
+
Die Programmierung des CMOS ist denkbar einfach: Die sieben niederwertigen Bits des I/O Ports 0x70 dienen als Offset (siehe Tabelle). Das höchste Bit sollte nicht verändert werden, es dient als NMI-Markierungsregister. Durch Lesen bzw. Schreiben des I/O Ports 0x71 kann dann der Wert an diesem Offset gelesen bzw. geschrieben werden.
  
 
== Weblinks ==
 
== Weblinks ==