DE4224508A1 - Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals - Google Patents

Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals

Info

Publication number
DE4224508A1
DE4224508A1 DE19924224508 DE4224508A DE4224508A1 DE 4224508 A1 DE4224508 A1 DE 4224508A1 DE 19924224508 DE19924224508 DE 19924224508 DE 4224508 A DE4224508 A DE 4224508A DE 4224508 A1 DE4224508 A1 DE 4224508A1
Authority
DE
Germany
Prior art keywords
bit
interrupt
edge
counter
time counter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19924224508
Other languages
English (en)
Other versions
DE4224508C2 (de
Inventor
Ralf Ranzenberger
Armin Egger
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mannesmann VDO AG
Original Assignee
Mannesmann VDO AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mannesmann VDO AG filed Critical Mannesmann VDO AG
Priority to DE19924224508 priority Critical patent/DE4224508C2/de
Publication of DE4224508A1 publication Critical patent/DE4224508A1/de
Application granted granted Critical
Publication of DE4224508C2 publication Critical patent/DE4224508C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0262Arrangements for detecting the data rate of an incoming signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • H04L7/044Speed or phase control by synchronisation signals using special codes as synchronising signal using a single bit, e.g. start stop bit

Description

Die Erfindung betrifft ein Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals mit einem vorgegebenen Bitmuster.
Bei verschiedenen Datenübertragungssystemen ist die Bittaktfrequenz bzw. die Baud-Rate von angeschlossenen Teilnehmern in einem vorgegebenen Bereich von beispielsweise 500 Bit/s bis 9600 Bit/s frei wählbar. Zum Empfang derartiger Datentelegramme ist daher eine Erkennung der Bittaktfrequenz erforderlich.
Aufgabe der vorliegenden Erfindung ist es, ein Verfahren anzugeben, mit dem die Bittaktfrequenz in einfacher Weise ermittelt werden kann.
Das erfindungsgemäße Verfahren ist dadurch gekennzeichnet, daß der Beginn des Bitmusters dadurch erkannt wird, daß vor der ersten Flanke für eine vorgegebene Zeit keine Flanke aufgetreten ist, daß ein Zeitzähler (Timer) eines Mikrocomputers durch eine vorgegebene Flanke gestartet und durch eine weitere vorgegebene Flanke des Signals angehalten wird und daß der Zählerstand des Zeitzählers in die Bittaktfrequenz umgerechnet wird.
Der Vorteil des erfindungsgemäßen Verfahrens besteht in der Realisierbarkeit mit jedem Prozessortyp, sofern dieser über einen Zeitzähler (Timer) verfügt. Das erfindungsgemäße Verfahren ist für beliebige Bittaktfrequenzen innerhalb eines vorgegebenen Bereichs von beispielsweise 500 Bit/s bis 9600 Bit/s geeignet.
Die Genauigkeit des erfindungsgemäßen Verfahrens wird durch eine Weiterbildung gesteigert, die darin besteht, daß der Zeitzähler erst nach mehreren Bitperioden des Signals angehalten wird.
Insbesondere bei einem von der ISO festgelegten Datenformat, wobei das Signal mit einem vorgegebenen Bitmuster ein Synchronisationswort eines Datentelegramms ist und von Bit zu Bit wechselnde Pegel aufweist und wobei das Signal einem Interrupt-Eingang eines Mikrocomputers zugeführt wird, ist gemäß einer anderen Weiterbildung vorgesehen, daß mit der ersten Flanke über einen Interrupt der Zeitzähler gestartet und der Mikrocomputer für weitere Interrupts gesperrt wird, daß von folgenden Flanken erzeugte Interrupt-Anforderungen gezählt werden und daß mit Erreichen einer vorgegebenen Zahl von Interrupt-Anforderungen der Mikrocomputer wieder für Interrupts freigegeben wird, so daß der Zähler bei einer darauffolgenden Flanke angehalten wird.
Diese Weiterbildung ist in vorteilhafter Weise bei Mikrocomputern anwendbar, welche am Interrupt-Eingang ein Register aufweisen, in welchem eine Interrupt-Anforderung gespeichert wird, die durch geeignete Programmierung aus dem Register ausgelesen werden kann. Dadurch ist ein Zählen der Flanken möglich, obwohl der Interrupt gesperrt ist. Ein geeigneter Mikrocomputer ist beispielsweise unter der Typenbezeichnung HD6305X von der Firma Hitachi erhältlich.
Bei einem Datentelegramm, bei dem das Synchronisationswort ein Startbit und ein Acht-Bit-Wort mit wechselnden Pegeln enthält, ist gemäß einer vorteilhaften Ausgestaltung vorgesehen, daß der Mikrocomputer nach der dritten gleichartigen Flanke wieder für Interrupts freigegeben wird und daß die Bittaktfrequenz fBT nach folgender Gleichung berechnet wird:
fBT = 8/(TT·CT),
wobei TT die Auflösung des Zeitzählers, also die Periodendauer des dem Zeitzähler zugrundeliegenden Taktes und CT der erreichte Zählerstand ist.
Die Erfindung läßt zahlreiche Ausführungsformen zu. Eine davon ist schematisch in der Zeichnung anhand mehrerer Figuren dargestellt und nachfolgend beschrieben. Es zeigt:
Fig. 1 eine Anordnung zum Empfang von Daten und zur Durchführung des erfindungsgemäßen Verfahrens,
Fig. 2 ein Zeitdiagramm eines Synchronisationswortes eines Datentelegramms nach ISO und
Fig. 3 ein Flußdiagramm eines Programms nach dem erfindungsgemäßen Verfahren.
Der Anordnung nach Fig. 1 wird bei 1 das zu empfangene Signal zugeführt. Über einen Interrupt-Controller 2 wird es zu einem Interrupt-Eingang IR einer zentralen Verarbeitungseinheit 3 geführt. Die zentrale Verarbeitungseinheit 3 kann über den Interrupt-Controller 2 die Einleitung eines Interrupts trotz Vorliegen einer entsprechenden Flanke am Eingang 1 sperren. Eine Interrupt-Anforderung wird jedoch in einem Register 4 gespeichert, dessen Inhalt einem Eingang I der zentralen Verarbeitungseinheit 3 zuführbar ist und dort entsprechend dem jeweils ablaufenden Programm abgefragt werden kann. An die zentrale Verarbeitungseinheit 3 sind ferner ein Zeitzähler 5 und ein Schreib/Lesespeicher 6 angeschlossen.
Fig. 2 zeigt das Zeitdiagramm eines Synchronisationswortes eines Datentelegramms nach ISO. Nach einer Pause von mindestens 20 ms, in welcher das Signal auf dem Pegel H verharrt, folgt eine erste fallende Flanke, mit welcher ein Startbit B0 mit dem Pegel L beginnt. Im Anschluß daran folgen acht Bits B1 bis B8 mit wechselnden Pegeln. Nach dem Bit B8 folgt ein Stopbit B9 mit dem Pegel H.
Bei dem dargestellten Ausführungsbeispiel wird zunächst geprüft, ob eine Pause vorliegt. Dazu wird der Zeitzähler 5 (Fig. 1) auf 20 ms initialisiert und der Eingang I der zentralen Verarbeitungseinheit ständig auf den Pegel H abgefragt. Tritt während dieser Zeit ein Pegel L auf, dann wird der Zeitzähler angehalten und beim nächsten H-Pegel erneut gestartet.
Ist der Zeitzähler abgelaufen, ohne daß ein L-Pegel auftritt, wird auf die fallende Flanke des Startbits B0 gewartet. Diese Flanke löst einen Interrupt aus. Dadurch wird die Taktfrequenz des Zeitzählers auf einen hohen Wert initialisiert und der Zeitzähler gestartet.
Gleichzeitig wird der Mikrocomputer für die folgenden Interrupts gesperrt. Es wird jedoch der Inhalt des Interrupt-Anforderungs-Registers 4 (Fig. 1) regelmäßig abgefragt, so daß im Mikrocomputer die fallenden Flanken, die in Fig. 2 mit 1., 2. und 3. bezeichnet sind, gezählt werden können. Nach der dritten fallenden Flanke wird durch geeignete Steuerung des Interrupt-Controllers 2 (Fig. 1) der Interrupt wieder zugelassen. Sobald die nächste - also die vierte - fallende Flanke auftritt, wird wieder ein Interrupt ausgelöst und der Zeitzähler angehalten. Aus dem Zählerstand wird mit der obengenannten Gleichung die Bittaktfrequenz berechnet. Dieses erfolgt während der Dauer des Bits B8 und des Stopbits B9, so daß mit dem Eintreffen eines auf das Synchronisationswort gemäß Fig. 2 folgenden Datenwortes die Bittaktfrequenz bereits ermittelt ist und das Datenwort richtig empfangen werden kann.
Das als Flußdiagramm in Fig. 3 dargestellte Programm zur Ermittlung der Bittaktfrequenz wird bei 11 gestartet. Im Anschluß daran wird das Programm bei 12 in Abhängigkeit davon verzweigt, ob das Signal einen Pegel H aufweist. Ist dieses nicht der Fall, wird bis zum Auftreten des Pegels H eine Warteschleife durchfahren. Sobald der Pegel H vorliegt, wird bei 13 der Zeitzähler auf 20 ms gesetzt und gestartet. Danach wird bei 14 wiederum gefragt, ob der Pegel H ist. Ist dieses nicht mehr der Fall, wird bei 17 der Zeitzähler angehalten und das Programm bei 12 fortgesetzt.
Ist der Pegel jedoch noch H, wird bei 15 das Programm in Abhängigkeit davon verzweigt, ob 20 ms abgelaufen sind. Solange dieses nicht der Fall ist, werden die Programmteile 14 und 15 wiederholt durchlaufen. Ist jedoch die Zeit von 20 ms abgelaufen, wird bei 16 das Programm in Abhängigkeit davon verzweigt, ob eine fallende Flanke, also ein Wechsel vom Pegel H zum Pegel L vorliegt. Falls nicht, wird solange gewartet, bis dieser Pegelwechsel auftritt. Danach wird der Zeitzähler bei 18 auf die höhere Taktfrequenz initialisiert und eine Sperrung des Interrupts vorgenommen. Bei 19 durchläuft das Programm wieder eine Warteschleife, solange noch keine fallende Flanke vorliegt, wobei laufend der Eingang I der zentralen Verarbeitungseinheit 3 (Fig. 1) abgefragt wird.
Tritt eine fallende Flanke auf, wird bei 20 ein Flankenzähler inkrementiert. Danach wird bei 21 in Abhängigkeit davon verzweigt, ob bereits drei Flanken erkannt wurden. Ist dieses der Fall, wird ein Interrupt mit Hilfe des Programmteils 22 wieder zugelassen. Bei 23 wird wiederum eine Schleife durchfahren bis eine fallende Flanke vorliegt. Der dann erreichte Zählerstand des Zeitzählers wird bei 24 gespeichert, worauf bei 25 die Baud-Rate bzw. die Bittaktfrequenz ermittelt wird. Bei 26 wird das Programm beendet.

Claims (4)

1. Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals mit einem vorgegebenen Bitmuster, dadurch gekennzeichnet, daß der Beginn des Bitmusters dadurch erkannt wird, daß vor der ersten Flanke für eine vorgegebene Zeit keine Flanke aufgetreten ist, daß ein Zeitzähler (Timer) eines Mikroprozessors mit einer vorgegebenen Flanke gestartet und durch eine weitere vorgegebene Flanke des Signals angehalten wird und daß der Zählerstand des Zeitzählers in die Bittaktfrequenz umgerechnet wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Zeitzähler erst nach mehreren Bitperioden des Signals angehalten wird.
3. Verfahren nach Anspruch 2, wobei das Signal mit einem vorgegebenen Bitmuster ein Synchronisationswort eines Datentelegramms ist und von Bit zu Bit wechselnde Pegel aufweist und wobei das Signal einem Interrupt-Eingang eines Mikroprozessors zugeführt wird, dadurch gekennzeichnet, daß mit der ersten Flanke über einen Interrupt der Zeitzähler gestartet und der Mikroprozessor für weitere Interrupts gesperrt wird, daß von folgenden Flanken erzeugte Interrupt-Anforderungen gezählt werden und daß mit Erreichen einer vorgegebenen Zahl von Interrupt-Anforderungen der Mikroprozessor wieder für Interrupts freigegeben wird, so daß der Zähler bei einer darauffolgenden Flanke angehalten wird.
4. Verfahren nach Anspruch 3, wobei das Synchronisationswort ein Startbit und ein Acht-Bit-Wort mit wechselnden Pegeln enthält, dadurch gekennzeichnet, daß der Mikroprozessor nach der dritten gleichartigen Flanke wieder für Interrupts freigegeben wird und daß die Bittaktfrequenz fBT nach folgender Gleichung berechnet wird: fBT = 8/(TT·CT),wobei TT die Auflösung des Zeitzählers, also die Periodendauer des dem Zeitzähler zugrundeliegenden Taktes und CT der erreichte Zählerstand ist.
DE19924224508 1992-07-24 1992-07-24 Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals Expired - Fee Related DE4224508C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19924224508 DE4224508C2 (de) 1992-07-24 1992-07-24 Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19924224508 DE4224508C2 (de) 1992-07-24 1992-07-24 Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals

Publications (2)

Publication Number Publication Date
DE4224508A1 true DE4224508A1 (de) 1994-01-27
DE4224508C2 DE4224508C2 (de) 2000-07-06

Family

ID=6464028

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19924224508 Expired - Fee Related DE4224508C2 (de) 1992-07-24 1992-07-24 Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals

Country Status (1)

Country Link
DE (1) DE4224508C2 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0813321A2 (de) * 1996-06-14 1997-12-17 TEMIC TELEFUNKEN microelectronic GmbH Verfahren und Steuersystem zum Übertragen von Daten
US6249558B1 (en) 1998-03-28 2001-06-19 Temic Telefunken Microeletronic Gmbh Method for transmitting digital data impulses
EP1315337A2 (de) * 2001-10-31 2003-05-28 Infineon Technologies AG Bus-Interface
US7609147B2 (en) 2004-03-25 2009-10-27 Atmel Automotive Gmbh Method and apparatus for improving wireless data transmission

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0020070B1 (de) * 1979-05-25 1984-03-14 LUCAS INDUSTRIES public limited company Schaltung zur Unterscheidung von spezifizischen Pulsmustern in einer Pulsfolge

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0813321A2 (de) * 1996-06-14 1997-12-17 TEMIC TELEFUNKEN microelectronic GmbH Verfahren und Steuersystem zum Übertragen von Daten
EP0813321A3 (de) * 1996-06-14 2001-05-09 TEMIC TELEFUNKEN microelectronic GmbH Verfahren und Steuersystem zum Übertragen von Daten
US6249558B1 (en) 1998-03-28 2001-06-19 Temic Telefunken Microeletronic Gmbh Method for transmitting digital data impulses
EP1315337A2 (de) * 2001-10-31 2003-05-28 Infineon Technologies AG Bus-Interface
EP1315337B1 (de) * 2001-10-31 2009-08-12 Infineon Technologies AG Bus-Interface
US7609147B2 (en) 2004-03-25 2009-10-27 Atmel Automotive Gmbh Method and apparatus for improving wireless data transmission
DE102004014563B4 (de) * 2004-03-25 2011-01-13 Atmel Automotive Gmbh Verfahren und Vorrichtung zur verbesserten drahtlosen Datenübertragung

Also Published As

Publication number Publication date
DE4224508C2 (de) 2000-07-06

Similar Documents

Publication Publication Date Title
DE3700426C2 (de) Überwachungszeitgeber
DE2946081C3 (de) Schaltungsanordnung zur Überwachung der Funktion eines Mikroprozessors
DE3108568C2 (de) Informationsverarbeitungseinrichtung
DE2735397C2 (de) Überwachungseinrichtung für eine programmgesteuerte Maschine
DE3818546C2 (de)
DE4111072C2 (de)
DE2915401A1 (de) Digitalrechnervorrichtung und verfahren zum pruefen ihrer funktion
DE2000062A1 (de) Phasenempfindliche Schaltung
DE3503306A1 (de) Datensignalerkennungseinrichtung
DE3246432C2 (de)
EP0689747B1 (de) Bitratenerkennung
WO2016184641A1 (de) Verfahren und vorrichtung zur sensorsynchronisierung
DE19546805A1 (de) Impulsbreitenmodulationsschaltung
DE3036926C2 (de) Verfahren und Anordnung zur Steuerung des Arbeitsablaufes in Datenverarbeitungsanlagen mit Mikroprogrammsteuerung
DE102013213087A1 (de) Überwachungsschaltung mit einem fenster-watchdog
DE3430350A1 (de) Demodulationsschaltung fuer ein datensignal
DE2064383B2 (de) Datenverarbeitungsanlage mit mehreren zentralen Verarbeitungseinrichtungen
DE4224508C2 (de) Verfahren zur Ermittlung der Bittaktfrequenz eines digitalen Signals
DE2120289A1 (de) Gesteuerte Pause in einer Datenverarbeitungsanlage
DE2529589C2 (de) Elektronisches Sicherheitssystem mit einer Signaldetektorschaltung
DE3316681A1 (de) Computersystem mit programmueberwachungsvorrichtung
DE4035520C2 (de) Verfahren und Anordnung zur Messung der Geschwindigkeit eines Fahrzeuges
DE2712286A1 (de) Informationsdichte-bestimmungsschaltung
DE3619666C2 (de)
DE4219987B4 (de) Verfahren zum Dekodieren von seriellen Datentelegrammen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: MANNESMANN VDO AG, 60326 FRANKFURT, DE

D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: SIEMENS AG, 80333 MUENCHEN, DE

8339 Ceased/non-payment of the annual fee