Code-Generator für 8051-Kompatible

  Allgemeine Einstellungen   serielle Schnittstelle   Timer 0   Timer 1   Interrupts   Warteschleifen   Programmanfang
Diese Seite enthält ein Java-Script zur Generierung eines ersten Programm-Skelettes, auf dessen Basis man eigene Programme schneller erstellen kann. Der Quellcode-Generator erzeugt den Assemblercode für das Initialisieren und Benutzen der Seriellen Schnittstelle, der beiden Timer, der Interrupts und der Warteschleifen.

Features:
  • komfortable Einstellung aller wichtigen Register
  • quarzabhängige Erzeugung eines sofort lauffähigen Programms
  • generieren von Code zum Zugriff auf die serielle Schnittstelle
  • hochgenaue Warteschleifen mit bis zu 3 Verschachtelungsebenen
  • automatische Bereichserweiterung der Timer auf 24 Bit im 16 Bit-Modus

getestet unter
  • Internet-Explorer 4.0
  • und Netscape 4.5
Achtung: Sie müssen selbst darauf achten, keine Werte, die negative Parameter ergeben, einzustellen! Dies kann bei der Überschreitung des möglichen Bereichs der Timer und der seriellen Schnittstelle auftreten.

Allgemeine Einstellungen

  Seitenanfang   Programmanfang
Autor:

Projektname:


Quarz
MHz

Ziel:
ASEM51
unbekannter Assembler

Serielle Schnittstelle

  Seitenanfang   Programmanfang
Serielle Schnittstelle aktivieren
Modus 0: Shift Register, Feste Baudrate von 1/12 Quarzgeschwindigkeit
Modus 1: 8-Bit UART, Variable Baudrate, von Timer 1 erzeugt
Modus 2: 9-Bit UART, Feste Baudrate mit 1/32 oder 1/64 Quarzgeschwindigkeit
Modus 3: 9-Bit UART, Variable Baudrate, von Timer 1 erzeugt

Taktverdoppler SMOD im PCON-Register

Baudrate
 


TL1 bzw. TH1 / dieser Wert gerundet
/
tatsächlich erzielte Baudrate / Fehler bezüglich gewünschter Baudrate in %
/

Einstellungen für Timer 0

  Seitenanfang   Programmanfang
Timer 0 aktivieren
Modus 0: 13-Bit Timer
Modus 1: 16-Bit Timer / Counter
Modus 2: 8-Bit Timer / Counter
Modus 3

Software-Kontrolle
Hardware-Kontrolle, Timer/Counter läuft nur wenn P3.2 high

Timer
Counter

gewünschte Intervalldauer in ms
ms  


Preloadwerte für TH0/TL0
/
24 Bit - Extension im 16 Bit - Modus

tatsächliche Intervalldauer mit diesem TH0/TL0:
ms

Einstellungen für Timer 1

  Seitenanfang   Programmanfang
Timer 1 aktivieren
Modus 0: 13-Bit Timer
Modus 1: 16-Bit Timer / Counter
Modus 2: 8-Bit Timer / Counter
Modus 3

Software-Kontrolle
Hardware-Kontrolle, Timer/Counter läuft nur wenn P3.2 high

Timer
Counter

gewünschte Intervalldauer in ms (Dezimalstellen mit '.' statt Komma!)
ms


Preloadwerte für TH1/TL1
/
24 Bit - Extension im 16 Bit - Modus

tatsächliche Intervalldauer mit diesem TH1/TL1:
ms

Einstellungen für die Interruptverwaltung

  Seitenanfang   Programmanfang
Interrupts aktivieren
Interrupt der seriellen Schnittstelle
Timer 1 Überlauf - Interrupt
Externer Interrupt1, P3.3
Timer 0 Überlauf - Interrupt
Externer Interrupt0, P3.2

Interruptpriotität (IP-Register) erhöhen für:
Interrupt der seriellen Schnittstelle
Timer 1 Überlauf - Interrupt
Externer Interrupt1, P3.3
Timer 0 Überlauf - Interrupt
Externer Interrupt0, P3.2

Warteschleifenberechnung

  Seitenanfang   Programmanfang
Aktivieren Verzögerung Label
ms
ms
ms


Achtung, die Verwendung von Interrupts verlangsamt die Warteschleife je nach Codelänge und Aufrufhäufigkeit des Interrupts! Die Warteschleife ist dafür berechnet, ohne Unterbrechung zu laufen. Die Verzögerungen durch ACALL und RET werden mit einberechnet.

Generieren

  Seitenanfang   Programmanfang

Projektname


Bitte warten, bis diese Zeile verschwindet!
Bleibt sie stehen, unterstützt Ihr Browser kein Java-Script, oder sie haben es abgeschaltet.
























































































































































































Seitenanfang   Allgemeine Einstellungen   serielle Schnittstelle   Timer 0   Timer 1   Interrupts   Warteschleifen   Programmanfang