DE102012110537A1 - Method for transmitting data with a baud rate between data processing units through interface, involves determining whether number of clocks of durations of low bits is located in first region in which code word is interpreted as false - Google Patents

Method for transmitting data with a baud rate between data processing units through interface, involves determining whether number of clocks of durations of low bits is located in first region in which code word is interpreted as false Download PDF

Info

Publication number
DE102012110537A1
DE102012110537A1 DE201210110537 DE102012110537A DE102012110537A1 DE 102012110537 A1 DE102012110537 A1 DE 102012110537A1 DE 201210110537 DE201210110537 DE 201210110537 DE 102012110537 A DE102012110537 A DE 102012110537A DE 102012110537 A1 DE102012110537 A1 DE 102012110537A1
Authority
DE
Germany
Prior art keywords
bit
bits
data processing
processing unit
low
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.)
Pending
Application number
DE201210110537
Other languages
German (de)
Inventor
Björn Haase
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.)
Endress and Hauser Conducta GmbH and Co KG
Original Assignee
Endress and Hauser Conducta Gesellschaft fuer Mess und Regeltechnik mbH and Co KG
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 Endress and Hauser Conducta Gesellschaft fuer Mess und Regeltechnik mbH and Co KG filed Critical Endress and Hauser Conducta Gesellschaft fuer Mess und Regeltechnik mbH and Co KG
Priority to DE201210110537 priority Critical patent/DE102012110537A1/en
Publication of DE102012110537A1 publication Critical patent/DE102012110537A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

The method involves sending a code word of first data processing unit (2.1) to second data processing unit (2.2). Code word is included with start bit, information word and stop bit. Number of clocks of durations of low bits is counted by second data processing unit (3.1). Determination is made to determine whether the number of clocks of durations of low bits is located in first region in which code word is interpreted as false or is located in second region in which code word is interpreted as true or is located in all possible regions in which code word is interpreted as invalid. An independent claim is included for arrangement for transmitting data with a baud rate between two data processing units.

Description

Die Erfindung betrifft ein Verfahren zur Datenübertragung über eine UART-Schnittstelle zwischen einer ersten Datenverarbeitungseinheit und einer zweiten Datenverarbeitungseinheit.The invention relates to a method for data transmission via a UART interface between a first data processing unit and a second data processing unit.

Eine UART-Schnittstelle ist eine digitale serielle Schnittstelle und dient zum Senden und Empfangen von Daten über eine Datenleitung und bildet den Standard der seriellen Schnittstellen an PCs, Mikrocontrollern und im industriellen Umfeld an verschiedenen Interfaces, insbesondere beim Standard EIA-232 oder EIA-485 . „UART“ steht dabei für Universal Asynchronous Receiver Transmitter.A UART interface is a digital serial interface used to send and receive data over a data line and forms the standard of serial interfaces on PCs, microcontrollers and industrial environments on various interfaces, especially the Standard EIA-232 or EIA-485 , "UART" stands for Universal Asynchronous Receiver Transmitter.

Die Daten werden als serieller digitaler Datenstrom mit einem fixen Rahmen übertragen, der aus einem Startbit, fünf bis maximal neun Datenbits, einem optionalen Paritätsbit zur Erkennung von Übertragungsfehlern und einem Stopp-Bit besteht. Die Besonderheit besteht darin, dass bei der asynchronen Betriebsweise kein eigenes Taktsignal auf einer Übertragungsleitung verwendet wird. Stattdessen synchronisiert sich der Empfänger über die Länge des Rahmens, vermittelt durch die Schaltflanke von Start- und Stoppbit, sowie die eingestellte Baudrate. Da der Beginn einer Übertragung mit dem Startbit zu beliebigen Zeitpunkten erfolgen kann, wird diese serielle Schnittstelle als asynchron bezeichnet. Um eine Synchronisation gewährleisten zu können, ist die Anzahl der übertragbaren Bits eingeschränkt.The data is transmitted as a serial digital data stream with a fixed frame consisting of a start bit, five to a maximum of nine data bits, an optional parity bit for detecting transmission errors, and a stop bit. The special feature is that in the asynchronous mode of operation no separate clock signal is used on a transmission line. Instead, the receiver synchronizes itself over the length of the frame, mediated by the switching edge of start and stop bits, as well as the set baud rate. Since the beginning of a transmission with the start bit can take place at arbitrary times, this serial interface is referred to as asynchronous. To ensure synchronization, the number of transferable bits is limited.

Damit die Datenübertragung funktioniert, wird eine fest vereinbarte Baudrate vorausgesetzt. Bei einer Abweichung von mehr als 5 % scheitert die Kommunikation in der Regel. Bei Einhaltung einer Toleranz von 3 % ist in der Regel eine fehlerfreie Kommunikation gewährleistet, wobei eine Toleranz von 0,5 % bevorzugt wird. Um eine Taktfrequenz mit diesen Genauigkeiten generieren zu können, ist in der Praxis der Einsatz von keramischen Resonatoren oder Quarzen erforderlich. Dies gilt insbesondere, wenn die Schaltung in einem erweiterten Temperaturbereich von z. B. –20 °C bis 85 °C oder 125 °C betrieben werden soll.For the data transfer to work, a fixed baud rate is required. With a deviation of more than 5% the communication usually fails. With a tolerance of 3%, error-free communication is generally guaranteed, with a tolerance of 0.5% being preferred. In order to generate a clock frequency with these accuracies, the use of ceramic resonators or quartz is required in practice. This is especially true when the circuit in an extended temperature range of z. B. -20 ° C to 85 ° C or 125 ° C to be operated.

Im Bereich der Prozessautomatisierung sind Feldgeräte technische Einrichtungen, die mit einem Produktionsprozess in direkter Beziehung stehen. "Feld" bezeichnet dabei den Bereich außerhalb von Schaltschränken bzw. Leitwarten. Feldgeräte sind damit sowohl Aktoren (Stellglieder, Ventile, ...), Sensoren (pH, Temperatur, Leitfähigkeit, Trübung, ...) als auch Messumformer.In the area of process automation, field devices are technical devices that are directly related to a production process. "Field" refers to the area outside of control cabinets or control rooms. Field devices are thus both actuators (actuators, valves, ...), sensors (pH, temperature, conductivity, turbidity, ...) and transducers.

Die Problemstellung soll anhand der Kommunikation zwischen zwei Feldgeräten erläutert werden. Das erste Feldgerät ist dabei als Messumformer, das zweite Feldgerät als Sensor bzw. als Kabel mit angeschlossenem Sensor ausgestaltet.The problem will be explained by the communication between two field devices. The first field device is designed as a transmitter, the second field device as a sensor or as a cable with a connected sensor.

Im Messumformer befindet sich eine sehr leistungsfähige Datenverarbeitungseinheit, beispielsweise ein Mikrocontroller, FPGA o.ä. Für den Mikrocontroller im Feldgerät ist sowohl ausreichend Platz als auch Energieversorgung vorhanden, d.h. der Mikrocontroller wird großzügig dimensioniert hinsichtlich Rechenkapazität, Speicherplatz, Schnittstellen etc.The transmitter contains a very powerful data processing unit, such as a microcontroller, FPGA or similar. For the microcontroller in the field device there is sufficient space as well as power supply, i. The microcontroller is generously dimensioned in terms of computing capacity, storage space, interfaces, etc.

Im Sensor bzw. im Kabel mit angeschlossenem Sensor befindet sich auch eine Datenverarbeitungseinheit, beispielsweise eine Mikrocontroller. Dort ist allerdings der Platz beschränkt. Außerdem muss darauf geachtet werden, dass der Sensor energiesparend betrieben wird. Aufgrund der Einschränkungen hinsichtlich Platz und Energieverbrauch ist es nicht möglich, eine Peripherie für eine Kommunikation mit UART bereit zu stellen. Entweder eine ausreichend genaue Taktquelle bräuchte zu viel Platz, oder es ist nicht genug Energie vorhanden um dies zu bewerkstelligen.In the sensor or in the cable with a connected sensor is also a data processing unit, such as a microcontroller. There, however, the space is limited. In addition, care must be taken that the sensor is operated energy-saving. Due to space and power constraints, it is not possible to provide peripherals for communication with UART. Either a sufficiently accurate clock source would take up too much space, or there is not enough energy to accomplish this.

Der Erfindung liegt die Aufgabe zugrunde, eine UART-Kommunikation mit Standard-UART-Komponenten, insbesondere Softwaretreiber und Hardwarekomponenten, auch für leistungsbeschränkte Feldgeräte bereit zu stellen.The invention is based on the object of providing UART communication with standard UART components, in particular software drivers and hardware components, also for power-limited field devices.

Die Aufgabe wird gelöst durch ein Verfahren zur Datenübertragung mit einer Baudrate zwischen einer ersten Datenverarbeitungseinheit mit einer ersten Taktquelle und einer zweiten Datenverarbeitungseinheit (Slave) mit einer zweiten Taktquelle. Die erste Taktquelle hat eine Toleranz kleiner 5 %, insbesondere kleiner 0,5 % und die zweite Taktquelle hat eine Toleranz größer 0,5 %, insbesondere größer 5 % besitzt. Das Verfahren umfasst die Schritte

  • – Senden zumindest eines Codeworts von der ersten Datenverarbeitungseinheit zur zweiten Datenverarbeitungseinheit, wobei das Codewort UART-konform gesendet wird, also das Codewort zumindest ein Startbit, ein Informationswort und ein Stoppbit umfasst, wobei das Informationswort zwischen fünf und neun, bevorzugt acht, Datenbits umfasst, und wobei das Startbit, die Datenbits und/oder das Stoppbit zumindest ein low-Bit beinhalten,
  • – Zählen der Anzahl der Takte der Dauer aller low-Bits durch die zweite Datenverarbeitungseinheit, und
  • – Entscheiden ob Anzahl der Takte der Dauer aller low-Bits – in einem ersten Bereich liegt, worauf das Codewort als logische 0 interpretiert wird, – in einem zweiten Bereich liegt, worauf das Codewort als logische 1 interpretiert wird, oder – in allen weiteren möglichen Bereichen liegt, worauf das Codewort als ungültig interpretiert wird.
The object is achieved by a method for data transmission at a baud rate between a first data processing unit having a first clock source and a second data processing unit (slave) having a second clock source. The first clock source has a tolerance of less than 5%, in particular less than 0.5%, and the second clock source has a tolerance greater than 0.5%, in particular greater than 5%. The method comprises the steps
  • Sending at least one code word from the first data processing unit to the second data processing unit, the code word being UART-compliant, ie the codeword comprises at least one start bit, one information word and one stop bit, the information word comprising between five and nine, preferably eight, data bits, and wherein the start bit, the data bits and / or the stop bit include at least one low bit,
  • Counting the number of clocks of the duration of all low bits by the second data processing unit, and
  • Deciding whether the number of clocks of the duration of all low bits lies in a first range, whereupon the codeword is interpreted as logical 0, lies in a second range, whereupon the codeword is interpreted as logical 1, or in all other possible ones Ranges, whereupon the codeword is interpreted as invalid.

Durch das dargestellte Verfahren ist es auch mit leistungsschwachen Datenverarbeitungseinheiten möglich eine Datenübertragung zu tätigen. Insbesondere ist eine Datenübertragung zu einer Datenverarbeitungseinheit möglich, die für eine Datenübertragung per UART keine ausreichend stabile Taktfrequenz hat.By the illustrated method, it is also possible with low-power data processing units to make a data transfer. In particular, a data transmission to a data processing unit is possible, which does not have a sufficiently stable clock frequency for a data transmission via UART.

Zur Erkennung fehlerhaft übertragener Codewörter umfasst das Codewort zusätzlich ein Paritätsbit.To detect incorrectly transmitted codewords, the codeword additionally comprises a parity bit.

In einer Weiterbildung ist der erste Bereich B1 als 1/baud·lbit1·f·tol1 ≤ B1 < 1/baud·lbit1·f·tol2 und der zweite Bereich B2 als 1/baud·lbit2·f·tol1 ≤ B2 < 1/baud·lbit2·f·tol2 definiert wird, wobei baud der Baudrate der Datenübertragung, f der Taktfrequenz der zweiten Datenverarbeitungseinheit, tol1 der unteren Toleranzgrenze, tol2 der oberen Toleranzgrenze, lbit1 der Anzahl der low-Bits im ersten Bereich, und lbit2 der Anzahl der low-Bits im zweiten Bereich entspricht. Der ungültige Bereich ist als der Bereich definiert, der nicht durch den ersten Bereich und den zweiten Bereich abgedeckt wird.In a further development, the first area B1 is as 1 / baud · lbit1 · f · tol1 ≦ B1 <1 / baud · lbit1 · f · tol2 and the second area B2 as 1 / baud · lbit2 · f · tol1 ≦ B2 <1 / baud · lbit2 · f · tol2 where baud is the baud rate of the data transmission, f is the clock frequency of the second data processing unit, tol1 is the lower tolerance limit, tol2 is the upper tolerance limit, lbit1 is the number of low bits in the first range, and lbit2 is the number of low bits in the second range , The invalid area is defined as the area not covered by the first area and the second area.

Durch die Verwendung der beiden Bereiche kann klar unterschieden werden, ob eine logische 0 oder 1 übertragen wurde. Durch eine untere und obere Toleranzgrenze wird der jeweils gültige Bereich erweitert, und die Zählung der einzelnen Takte braucht nicht so genau erfolgen.By using the two ranges, it can be clearly distinguished whether a logical 0 or 1 has been transmitted. By a lower and upper tolerance limit, the valid range is extended, and the count of the individual clocks need not be so accurate.

Für eine sichere und eindeutige Übertragung wird für die Anzahl der low-Bits im ersten Bereich lbit1 ≥ 4, insbesondere lbit1 = 8, verwendet.For a secure and unambiguous transmission, lbit1 ≥ 4, in particular lbit1 = 8, is used for the number of low bits in the first range.

Des Weiteren wird für eine sichere und eindeutige Übertragung für die Anzahl der low-Bits im zweiten Bereich lbit2 < 4, insbesondere lbit2 = 3, verwendet.Furthermore, lbit2 <4, in particular lbit2 = 3, is used for a secure and unambiguous transmission for the number of low bits in the second area.

Bevorzugt wird für die untere Toleranzgrenze tol1 = 0,75 und für die obere Toleranzgrenze tol2 = 1,25 verwendet.It is preferable to use tol1 = 0.75 for the lower tolerance limit and tol2 = 1.25 for the upper tolerance limit.

Mit dem Verfahren kann ein UART-Telegramm gesendet werden. Das UART-Telegramm besteht vorteilhafterweise aus einem Codewort, bevorzugt aus einer Sequenz von Codewörtern, als Datenpräambel und einem Codewort, bevorzugt einer Sequenz von Codewörtern, zur Datenübertragung.The method can be used to send a UART telegram. The UART telegram advantageously consists of a codeword, preferably a sequence of codewords, as a data preamble and a codeword, preferably a sequence of codewords, for data transmission.

Um die sichere Übertragung zu überprüfen, wird vorzugsweise für ein UART-Telegramm zusätzlich eine Prüfsumme berechnet und gesendet.In order to check the secure transmission, a checksum is preferably additionally calculated and sent for a UART telegram.

In einer vorteilhaften Ausgestaltung wird diese Prüfsumme über zyklische Redundanzprüfung berechnet. Die zyklische Redundanzprüfung ist ein gängiges Verfahren um Fehler bei der Übertragung erkennen zu können.In an advantageous embodiment, this checksum is calculated by cyclic redundancy check. The cyclic redundancy check is a common method for detecting errors in the transmission.

In einer bevorzugten Weiterbildung umfasst das Verfahren zusätzlich die Schritte

  • – Interpretieren des zumindest einen Codeworts,
  • – Zurücksenden einer Antwort von der zweiten Datenverarbeitungseinheit an die erste Datenverarbeitungseinheit, wobei die Antwort aus zumindest einem Antwort-Codewort besteht, wobei das Antwort-Codewort zumindest ein Startbit, ein Informationswort und ein Stoppbit umfasst, wobei das Informationswort zwischen fünf und neun, bevorzugt acht, Datenbits umfasst, und wobei das Startbit, die Datenbits und/oder das Stoppbit zumindest ein low-Bit beinhalten, wobei eine logische 0 so gesendet wird, dass die Anzahl der Takte der Dauer aller zurückgesendeten low-Bits im ersten Bereich liegt, insbesondere entspricht die Anzahl der zurückgesendeten low-Bits im Antwort-Codewort genau der Anzahl der empfangenen low-Bits im Codewort für eine logische 0, und wobei eine logische 1 so gesendet wird, dass die Anzahl der Takte der Dauer aller zurückgesendeten low-Bits im zweiten Bereich liegt, insbesondere entspricht die Anzahl der zurückgesendeten low-Bits im Antwort-Codewort genau der Anzahl der empfangenen low-Bits im Codewort für eine logische 1.
In a preferred embodiment, the method additionally comprises the steps
  • Interpreting the at least one code word,
  • Returning a response from the second data processing unit to the first data processing unit, the response consisting of at least one response codeword, the answer codeword comprising at least a start bit, an information word and a stop bit, wherein the information word comprises between five and nine, preferably eight, data bits, and wherein the start bit, the data bits and / or the stop bit include at least one low bit, wherein a logical 0 is sent so that the number of clocks of the duration of all returned In particular, the number of returned low bits in the response codeword corresponds exactly to the number of received low bits in the codeword for a logical 0, and a logical 1 is sent such that the number of clocks the duration of all returned low bits is in the second range, in particular, the number of returned low bits in the response codeword corresponds exactly to the number of received low bits in the codeword for a logical 1.

Dadurch, dass sowohl für das Senden als auch das Zurücksenden die gleiche Anzahl an low-Bits verwendet wird (für eine logische 0 bzw. eine logische 1 jeweils verschieden), ist eine eindeutige Übertragung gewährleistet. Darüber hinaus braucht für die zweite Datenverarbeitungseinheit die Anzahl der low-Bits für eine zu sendende logische 0 oder 1 nicht gespeichert zu werden. Die zweite Datenverarbeitungseinheit kann einfach die jeweilige Anzahl an low-Bits der Anfrage „imitieren“.By using the same number of low bits for both transmission and retransmission (different for a logical 0 and a logical 1, respectively), a unique transmission is ensured. In addition, for the second data processing unit, the number of low bits for a logical 0 or 1 to be sent need not be stored. The second data processing unit can simply "mimic" the respective number of low bits of the request.

Vorzugsweise wird das UART-Telegramm zur Abfrage insbesondere zumindest eines der Elemente: Seriennummer, Firmwareversion, Status, Betriebsstunden, Temperatur und/oder Leistung, und/oder insbesondere zumindest eine der Anweisungen: Einschalten von Anzeigeelementen, insbesondere von zumindest einer LED, Ausschalten von Anzeigeelementen, insbesondere von zumindest einer LED, Firmwareupdate, Versetzen in einen anderen Betriebszustand, und/oder Rücksetzen in einen Grundzustand verwendet.Preferably, the UART telegram for querying in particular at least one of the elements: serial number, firmware version, status, operating hours, temperature and / or power, and / or in particular at least one of the instructions: turning on display elements, in particular of at least one LED, turning off display elements , in particular of at least one LED, firmware update, shifting to another operating state, and / or resetting to a ground state.

Die Aufgabe wird weiterhin gelöst durch eine Anordnung, wobei die erste Datenverarbeitungseinheit einem ersten Mikrocontroller und die zweite Datenverarbeitungseinheit einem zweiten Mikrocontroller entspricht.The object is further achieved by an arrangement, wherein the first data processing unit corresponds to a first microcontroller and the second data processing unit corresponds to a second microcontroller.

Bevorzugt ist der erste Mikrocontroller einem ersten Feldgerät, insbesondere einem Messumformer zugeordnet.Preferably, the first microcontroller is associated with a first field device, in particular a transmitter.

Weiterhin ist bevorzugt, dass der zweite Mikrocontroller einer Sensorikkomponente zugeordnet ist, wobei an der Sensorikkomponente auf einer ersten Seite Mittel zum Anschluss an das erste Feldgerät und auf einer zweiten Seite Mittel zum Anschluss an ein zweites Feldgerät, insbesondere an einen Sensor, vorgesehen sind.Furthermore, it is preferred that the second microcontroller is assigned to a sensor component, wherein means for connection to the first field device are provided on the sensor component on a first side and means for connection to a second field device, in particular to a sensor on a second side.

Zusammenfassend handelt es sich beim oben beschriebenen Verfahren um die Beschreibung einer Art „physical layer“ der Datenübertragung. Dieser physical layer arbeitet mit einer Untermenge der gültigen Symbole einer Standart-UART. Auf der Master-Seite (erste Datenverarbeitungseinheit) ist für diesen physical layer ein üblicher UART-Treiber (sowohl Software als auch Hardware) verwendbar, sowohl fürs Senden als auch fürs Empfangen von Telegrammen. Der Vorteil besteht darin, dass auf der Slave-Seite (zweite Datenverarbeitungseinheit) keine UART-Peripherie erforderlich ist und keine stabile Taktquelle benötigt wird.In summary, the method described above is the description of a kind of "physical layer" of the data transmission. This physical layer works with a subset of the valid symbols of a standard UART. On the master side (first data processing unit), a conventional UART driver (both software and hardware) can be used for this physical layer, both for sending and for receiving telegrams. The advantage is that no UART peripherals are required on the slave side (second data processing unit) and no stable clock source is required.

Die Erfindung wird anhand der nachfolgenden Figuren näherer erläutert. Es zeigenThe invention will be explained in more detail with reference to the following figures. Show it

1 eine erfindungsgemäße Anordnung zur Kommunikation zwischen zwei Feldgeräten, 1 an arrangement according to the invention for communication between two field devices,

2a ein Diagramm eines Codeworts zur UART-Kommunikation, das als logisch 0 interpretiert wird, 2a a diagram of a code word for UART communication that is interpreted as logical 0,

2b ein Ausschnitt des Diagramms aus 2a in Vergrößerung, und 2 B a section of the diagram 2a in magnification, and

3 ein Diagramm eines Codeworts zur UART-Kommunikation, das als logisch 1 interpretiert wird. 3 a diagram of a code word for UART communication, which is interpreted as logical 1.

In den Figuren sind gleiche Merkmale mit gleichen Bezugszeichen gekennzeichnet.In the figures, the same features are identified by the same reference numerals.

Die erfindungsgemäße Anordnung in ihrer Gesamtheit hat das Bezugszeichen 1 und ist in der Figur 1 dargestellt.The arrangement according to the invention in its entirety has the reference numeral 1 and is in the figure 1 shown.

Zu sehen ist ein erstes Feldgerät 2, hier als Messumformer ausgestaltet. Der Messumformer 2 hat eine Datenverarbeitungseinheit 2.1, hier als Mikrocontroller ausgestaltet. Der Mikrocontroller 2.1 agiert als Master. Der Mikrocontroller 2.1 ist mit Standardkomponenten für eine UART-Kommunikation ausgestattet. Insbesondere hat der Mikrocontroller 2.1 eine Taktquelle 2.2. Die Taktquelle 2.2 ist als präzise Taktquelle ausgestaltet. Insbesondere hat die Taktquelle 2.2 eine Toleranz von unter 5 %. Bevorzugt hat die Taktquelle 2.2 sogar eine Toleranz von unter 0,5 %.You can see a first field device 2 , designed here as a transmitter. The transmitter 2 has a data processing unit 2.1 , designed here as a microcontroller. The microcontroller 2.1 acts as master. The microcontroller 2.1 is equipped with standard components for UART communication. In particular, the microcontroller has 2.1 a clock source 2.2 , The clock source 2.2 is designed as a precise clock source. In particular, the clock source has 2.2 a tolerance of less than 5%. Preferably, the clock source has 2.2 even a tolerance of less than 0.5%.

An den Messumformer 2 angeschlossen ist eine Sensorikkomponente 3. Die Sensorikkomponente 3 ist etwa als Kabel ausgestaltet. Die Sensorikkomponente 3 wiederum ist ein zweites Feldgerät 4, hier ein Sensor angeschlossen. Kabel 3 und Sensor 4 sind über eine Schnittstelle 5 miteinander verbunden. Die Schnittstelle 5 ist dabei etwa galvanisch entkoppelt als induktive, kapazitive oder optische Schnittstelle ausgestaltet. Galvanisch gekoppelte Schnittstellen sind allerdings auch möglich. Über die Schnittstelle werden sowohl Daten (bidirektional) als auch Energie (unidirektional von Messumformer 2 zu Sensor 4) übertragen. To the transmitter 2 connected is a sensor component 3 , The sensor component 3 is designed as a cable. The sensor component 3 again, there is a second field device 4 , here a sensor connected. electric wire 3 and sensor 4 are via an interface 5 connected with each other. the interface 5 is about galvanically decoupled designed as inductive, capacitive or optical interface. Galvanically coupled interfaces are also possible. Through the interface both data (bidirectional) and energy (unidirectional from transmitter 2 to sensor 4 ) transfer.

In der Sensorikkomponente 3 bzw. in der Schnittstelle 5 (auf der Seite der Sensorikkomponente 3) befindet sich eine Datenverarbeitungseinheit 3.1, hier als Mikrocontroller ausgestaltet. Der Mikrocontroller 3.1 agiert als Slave. Der Mikrocontroller umfasst auch eine Taktquelle 3.2. Die Taktquelle 3.2 ist deutlich weniger präzise als Taktquelle 2.2 ausgestaltet. Insbesondere hat die Taktquelle 3.2 eine Toleranz von über 0,5 %. Es ist sogar möglich, dass die Taktquelle 3.2 eine Toleranz von über 5 % besitzt.In the sensor component 3 or in the interface 5 (on the side of the sensor component 3 ) is a data processing unit 3.1 , designed here as a microcontroller. The microcontroller 3.1 acts as a slave. The microcontroller also includes a clock source 3.2 , The clock source 3.2 is much less precise than clock source 2.2 designed. In particular, the clock source has 3.2 a tolerance of more than 0.5%. It is even possible that the clock source 3.2 has a tolerance of more than 5%.

Schon in der schematischen Übersicht in 1 ist deutlich, dass die Datenverarbeitungseinheit 3.1 deutlich schwächer dimensioniert ist wie die Datenverarbeitungseinheit 2.1. „Schwächer“ im Sinne dieser Erfindung bedeutet dabei hauptsächlich die schon angesprochene Toleranz der Taktquelle. Es ist aber sehr wahrscheinlich, dass die Datenverarbeitungseinheit 3.1 gegenüber der Datenverarbeitungseinheit 2.1 auch eine geringere Prozessorleistung, einen kleineren Speicher, eine geringe Bit-Zahl o.ä. besitzt.Already in the schematic overview in 1 is clear that the data processing unit 3.1 much smaller dimensions than the data processing unit 2.1 , "Weaker" in the sense of this invention means mainly the already mentioned tolerance of the clock source. However, it is very likely that the data processing unit 3.1 opposite the data processing unit 2.1 also a lower processor performance, a smaller memory, a small bit number or similar. has.

Durch die Einbußen hinsichtlich der genannten Eigenschaften verbraucht Mikrocontroller 3.1 allerdings auch weniger Energie und Platz. Insbesondere der vorhandene Platz in der Sensorikkomponente 3 bzw. in der Schnittstelle 5 lassen keine leistungsstärkeren Mikrocontroller mit einer Taktquelle mit einer kleineren Toleranz zu.Due to the losses in terms of the properties mentioned consumes microcontroller 3.1 but also less energy and space. In particular, the existing space in the sensor component 3 or in the interface 5 do not allow more powerful microcontrollers with a clock source with a smaller tolerance.

Um weiter so energiesparsam wie möglich zu agieren, wird der Mikrocontroller 3.1 bei sehr niedrigen Taktfrequenzen f betrieben, etwa bei 250 kHz oder bei 125 kHz.To continue acting as energy efficient as possible, the microcontroller becomes 3.1 operated at very low clock frequencies f, about 250 kHz or 125 kHz.

Aufgrund der Einschränkungen hinsichtlich Leistung und Platz ist es nicht möglich, den Mikrocontroller 3.1 mit Standardkomponenten auszustatten, die eine UART-Kommunikation ermöglichen würden.Due to the limitations in performance and space, it is not possible to use the microcontroller 3.1 equipped with standard components that would enable UART communication.

Das erfindungsgemäße Verfahren schlägt deswegen eine Kommunikation zwischen den Mikrocontrollern 2.1/3.1 vor, wie sie in 2a dargestellt ist. Genauer zeigt 2a ein Diagramm eines Codeworts, das als logische 0 (d.h. „low“) interpretiert wird.The method according to the invention therefore proposes communication between the microcontrollers 2.1 / 3.1 before, as in 2a is shown. Exactly shows 2a a diagram of a codeword that is interpreted as logical 0 (ie "low").

Die Baudrate beträgt wie bei UART üblich 9600.The baud rate is 9600 as usual at UART.

Wenn keine Kommunikation vorliegt, in 2a als Q bezeichnet, liegt bei UART standardmäßig der Pegel bei logisch 1 (d.h. „high“)If there is no communication, in 2a labeled as Q, UART default to logic 1 (ie, high)

Nach einem Startbit S, folgen zwischen fünf und neun, bevorzugt acht Datenbits, bezeichnet als Bit 0 bis Bit 7. Nach einem Paritätsbit P wird ein Stoppbit X gesendet.After a start bit S, follow between five and nine, preferably eight data bits, designated as bit 0 to bit 7. After a parity bit P, a stop bit X is sent.

Wie bereits erwähnt, ist der Mikrocontroller 3.1 nicht in der Lage, eine UART-Peripherie in Software nachzubilden. Dies gilt selbst dann, wenn man das Problem eines ungenügend genauen Takts außen vor lässt.As mentioned earlier, the microcontroller is 3.1 unable to mimic a UART peripheral in software. This is true even if you omit the problem of insufficiently accurate timing.

Der Mikrocontroller 3.1 ist jedoch in der Lage, die Dauer von low-Pegeln zu stoppen.The microcontroller 3.1 however, is able to stop the duration of low levels.

Sendet der Master 2.1 beispielsweise eine Folge von low-Pegeln (d.h. ein hexadezimales 0x00 Byte), so ergibt sich auf der UART-Leitung ein Signal, bei dem der im Ruhezustand auf high-liegende Pegel für eine gewisse Dauer auf low gezogen wird. Bei einer Taktfrequenz f von 250 kHz sind dies 1.04 ms, was etwa 260 Takten entspricht. Bei einer Taktfrequenz f von 125 kHz entspricht dies etwa 130 Takten.Sends the master 2.1 For example, a sequence of low levels (ie, a hexadecimal 0x00 bytes), then results on the UART line, a signal in which the idle state to high level is pulled for a certain duration to low. At a clock frequency f of 250 kHz, this is 1.04 ms, which corresponds to about 260 clocks. At a clock frequency f of 125 kHz, this corresponds to about 130 clocks.

In 2b ist ein Ausschnitt aus 2a dargestellt, mit dem Bit 1 in Vergrößerung. Man erkennt die Taktdauer T, die dem Kehrwert der Taktfrequenz f entspricht. Der Mikrocontroller 3.1 zählt die Anzahl der Takt im low-Zustand.In 2 B is a section of 2a shown with the bit 1 in magnification. It recognizes the clock period T, which corresponds to the reciprocal of the clock frequency f. The microcontroller 3.1 counts the number of clocks in the low state.

Sendet der Master 2.1 alternativ eine Folge, die nicht ausschließlich aus low-Pegeln besteht, beispielsweise zumindest drei high-Pegel, ist eine Kodierung möglich.Sends the master 2.1 Alternatively, a sequence that does not consist exclusively of low levels, for example at least three high levels, encoding is possible.

Dies ist in 3 dargestellt. Sendet der Master 2.1 ein hexadezimales 0xF8 Byte, so ergibt sich auf der UART-Leitung ebenfalls ein einzelner low-Pegel, diesmal mit einer Dauer von 417 µs, entsprechend 104 Takten bei 250 kHz bzw. 52 Takten bei 125 kHz (Startbit, 3 Bits low, 5 Bits high, Paritätsbit high). This is in 3 shown. Sends the master 2.1 a hexadecimal 0xF8 byte, this also results in a single low level on the UART line, this time with a duration of 417 μs, corresponding to 104 clocks at 250 kHz and 52 clocks at 125 kHz (start bit, 3 bits low, 5 bits high, high parity bit).

Kodiert man die zu übertragenden Daten ausschließlich über diese zwei Bytes, dann ist dem Slave-System 3.1 über das Stoppen der Zeit möglich, zwischen diesen zwei unterschiedlichen Symbolen sicher zu unterscheiden.If one encodes the data to be transmitted exclusively over these two bytes, then it is the slave system 3.1 about stopping the time possible to surely distinguish between these two different symbols.

Es ist eine Toleranz von 25 % festgelegt, d.h. bei einer Taktfrequenz von 250 kHz wird auf logisch 0 bei einer Zyklenzahl von 195 bis 326, auf logisch 1 bei einer Zyklenzahl von 78 bis 130 entschieden. Bei einer Taktfrequenz von 125 kHz wird auf logisch 0 bei einer Zyklenzahl von 98 bis 163, auf logisch 1 bei einer Zyklenzahl von 39 bis 65 entschieden.A tolerance of 25% is set, i. at a clock frequency of 250 kHz it is decided to logically 0 at a number of cycles from 195 to 326, to logical 1 at a number of cycles from 78 to 130. At a clock frequency of 125 kHz is decided to logic 0 at a cycle number of 98 to 163, to logical 1 at a number of cycles from 39 to 65.

Die beiden Zeichen „0x00“ und „0xF8“ lassen sich daher sicher unterscheiden. Es ist nun möglich mittels einem durch den Master gesendeten 0x00 Byte ein 0 Bit zu kodieren und mittels einem 0xF8-Byte ein 1 Bit. Das ergibt dann eine Bitrate von rund 1/8 der auf der UART normalerweise möglichen Bitrate.The two characters "0x00" and "0xF8" can therefore be distinguished reliably. It is now possible to encode a 0 bit by means of a 0x00 byte sent by the master and a 1 bit by means of a 0xF8 byte. This then gives a bitrate of about 1/8 of the usual bitrate possible on the UART.

Verwendet man zum Stoppen der Zeit einen Takt von 125 kHz, so liegt die Anzahl von Zyklen unterhalb von 256 und lässt sich damit für beide Symbole mit einem Zähler von nur 8 Bits messen.If one uses a clock of 125 kHz to stop the time, then the number of cycles lies below 256 and can thus be measured for both symbols with a counter of only 8 bits.

Die folgende Tabelle gibt ein Überblick über die sich ergebenden Fälle: low-Pegel-Dauer / 125 kHz Zyklen Zustand 1 ... 38 ungültiges Symbol 39 ... 65 high-Bit 66 ... 97 ungültiges Symbol 98 ... 163 low-Bit > 164 ungültiges Zeichen The following table gives an overview of the resulting cases: low-level duration / 125 kHz cycles Status 1 ... 38 invalid symbol 39 ... 65 high-bit 66 ... 97 invalid symbol 98 ... 163 low-bit > 164 Invalid character

Fällt die Zahl der gezählten low-Pegel nicht ein einen definierten Bereich, wird auf ungültig entschieden.If the number of counted low levels does not fall within a defined range, the decision is made invalid.

Sendet der Master 2.1 etwa eine Sequenz von 16 Bytes, die entweder 0x00 oder 0xF8 sind, so kann der Slave 3.1 aus diesen 16 Bytes zwei Datenbytes dekodieren.Sends the master 2.1 for example, a sequence of 16 bytes that are either 0x00 or 0xF8, so the slave can 3.1 decode two bytes of data from these 16 bytes.

Der Messumformer 2 stellt über ein UART-Protokoll eine Anfrage an den Sensor 4 bzw. das Kabel 3. Mögliche Anfragen sind dabei insbesondere zumindest eines der Elemente: Seriennummer, Firmwareversion, Status, Betriebsstunden, Temperatur und/oder Leistung, und/oder insbesondere zumindest eine der Anweisungen: Einschalten von Anzeigeelementen, insbesondere von zumindest einer LED, Ausschalten von Anzeigeelementen, insbesondere von zumindest einer LED, Firmwareupdate, Versetzen in einen anderen Betriebszustand, und/oder Rücksetzen in einen Grundzustand.The transmitter 2 makes a request to the sensor via a UART protocol 4 or the cable 3 , Possible requests are in particular at least one of the elements: serial number, firmware version, status, operating hours, temperature and / or power, and / or in particular at least one of the instructions: switching on display elements, in particular at least one LED, turning off display elements, in particular of at least an LED, firmware update, move to another operating state, and / or reset to a default state.

Das zweite Feldgerät sendet dann eine entsprechende Antwort. Dem Slave-System 3.1 ist es möglich sowohl die Zeitdauer eines „0“-Symbols als auch die Zeitdauer eines „1“-Symbols zu vermessen. In der Antwort kann dann die Datenleitung für genau diese Zyklenzahl auf low gezogen werden, d.h. die Dauer der low-Pegel der Antwort entspricht der gezählten Dauer der low-Pegel der Frage.The second field device then sends a corresponding response. The slave system 3.1 It is possible to measure both the duration of a "0" symbol and the duration of a "1" symbol. In the response, the data line can then be pulled low for exactly this number of cycles, ie the duration of the low level of the response corresponds to the counted duration of the low level of the question.

Damit wird die effektiv vom Slave verwendete Baudrate auf die Baudrate des Masters aufsynchronisiert. Aus Sicht der Hardware und Software auf Seite des Masters bestehen die ausgetauschten Daten aus konventionellen UART-Symbolen. Damit können für die Datenübertragung bestehende Software-Treiber in einem Betriebssystem unverändert genutzt werden. Der Unterschied besteht für den Master lediglich darin, dass die übertragenen Daten anders zu interpretieren sind, da z. B. nur ein übertragenes UART-Zeichen nur einem übertragenen Datenbit entspricht.This will synchronize the baud rate effectively used by the slave to the baud rate of the master. From the point of view of hardware and software on the master's side, the exchanged data consists of conventional UART symbols. This means that existing software drivers for the data transfer can be used unchanged in an operating system. The difference is for the master only in that the transmitted data are to be interpreted differently because z. B. only a transmitted UART character corresponds to only one transmitted data bit.

Um weiter Energie zu sparen, befindet sich der Mikrocontroller 3.1 meist in einem Schlafmodus. Wird er durch das erste gesendete Zeichen aus dem Schlafmodus aufgeweckt, dann ist damit zu rechnen, dass das erste Zeichen nicht vollständig erkannt wird: Während der Anlaufphase, insbesondere während der Anlaufzeit der Taktquelle kann der Slave-Controller 3.1 nicht reagieren.To save further energy, there is the microcontroller 3.1 mostly in a sleep mode. If he is woken up by the first sent character from the sleep mode, then it is to be expected that the first character is not completely detected: During the start-up phase, especially during the start-up time of the clock source, the slave controller 3.1 not react.

Als Lösungsansatz wird dem eigentlichen Anfragetelegramm eine Präambel vorgeschaltet, die für eine erfolgreiche Kommunikation nicht vollständig fehlerfrei empfangen werden braucht. Beispielsweise kann eine Sequenz von Präambel-Bytes, z. B. vier Präambel-Bytes (0x00, 0x00, 0x00, 0xF8) gesendet werden, wobei nach einem bestimmten Symbol, z. B. nach dem ersten erkannten „1“-Symbol (0xF8) auf das Ende der Präambel erkannt wird.As a solution approach the preamble telegram is preceded by a preamble, which does not need to be received completely error-free for a successful communication. For example, a sequence of preamble bytes, e.g. For example, four preamble bytes (0x00, 0x00, 0x00, 0xF8) are sent, and after a particular symbol, e.g. B. is recognized after the first recognized "1" symbol (0xF8) on the end of the preamble.

Ein UART-Telegramm besteht somit aus einer Präambel mit einer Sequenz von vier Bytes, sowie weiteren Codewörtern. Insbesondere kann eine Sequenz von acht Codewörtern zur Datenübertragung gesendet werden.A UART telegram thus consists of a preamble with a sequence of four bytes, as well as further codewords. In particular, a sequence of eight codewords can be sent for data transmission.

Darüber hinaus kann eine Prüfsumme berechnet werden, etwa durch zyklische Redundanzprüfung. Insgesamt kann das Telegramm somit aus 20 Bytes bestehen.In addition, a checksum can be calculated, for example by cyclic redundancy check. Overall, the telegram can thus consist of 20 bytes.

Das vorgenannte Verfahren nutzt Symbole, die sich durch nur einen logischen Pegelwechsel auf dem physical layer der UART auszeichnen. Es ergeben die UART-Symbole 0xF8 und 0x00 in ihrem zeitlichen Verlauf auf der Signalleitung jeweils nur einen low-Puls unterschiedlicher Dauer. Damit lässt sich pro UART-Symbol ein Datenbit übertragen.The aforementioned method uses symbols which are distinguished by only one logical level change on the physical layer of the UART. The UART symbols 0xF8 and 0x00 only show one low pulse of different durations on the signal line in their time course. This allows one data bit to be transmitted per UART symbol.

Alternativ ist ebenso möglich, die Datenübertragungsrate dadurch zu erhöhen, dass UART-Symbole verwendet werden bei denen im Signalverlauf nicht nur ein (wie hier gezeigt), sondern zwei low-Pulse unterschiedlicher Dauer beobachtet werden können, deren Dauer vom System mit ungenauer Taktquelle gestoppt werden kann. Bei zwei low-Pulsen könnten etwa die vier Zeichen 0x1C, 0x1F, 0xEC, 0xFE verwendet werden. Pro UART-Zeichen könnten so zwei Bits an Stelle von einem Bit übertragen werden, um den Preis einer höheren für die Zeitermittlung erforderlichen Taktfrequenz. Auch die Erweiterung auf UART-Symbole mit drei oder mehr low-Pulsen ist möglich.Alternatively, it is also possible to increase the data transmission rate by using UART symbols in which not only one (as shown here) but two low pulses of different durations can be observed in the waveform, whose duration is stopped by the system with inaccurate clock source can. For two low pulses, for example, the four characters 0x1C, 0x1F, 0xEC, 0xFE could be used. For each UART character, two bits could be transmitted instead of one bit at the price of a higher clock frequency required for the time determination. The extension to UART symbols with three or more low pulses is also possible.

BezugszeichenlisteLIST OF REFERENCE NUMBERS

11
Anordnung arrangement
22
Messumformer transmitters
2.12.1
Mikrocontroller in 2 Microcontroller in 2
2.22.2
Taktquelle von 2.1 Clock source of 2.1
33
Sensorikkomponente sensor component
3.13.1
Mikrocontroller in 3 Microcontroller in 3
3.23.2
Taktquelle von 3.1 Clock source of 3.1
44
Sensor sensor
55
Schnittstelle interface
ff
Taktfrequenz clock speed
TT
Taktdauer Pulse_duration
QQ
Ruhe Quiet
SS
Start begin
XX
Stop Stop
PP
Parität parity

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte Nicht-PatentliteraturCited non-patent literature

  • Standard EIA-232 [0002] Standard EIA-232 [0002]
  • EIA-485 [0002] EIA-485 [0002]

Claims (15)

Verfahren zur Datenübertragung mit einer Baudrate über eine UART-Schnittstelle zwischen einer ersten Datenverarbeitungseinheit (2.1) mit einer ersten Taktquelle (2.2) und einer zweiten Datenverarbeitungseinheit (3.1) mit einer zweiten Taktquelle (3.2), wobei die erste Taktquelle (2.2) eine Toleranz kleiner 5 %, insbesondere kleiner 0,5 % besitzt und die zweite Taktquelle (3.2) eine Toleranz größer 0,5 %, insbesondere größer 5 % besitzt, umfassend die Schritte – Senden zumindest eines Codeworts von der ersten Datenverarbeitungseinheit (2.1) zur zweiten Datenverarbeitungseinheit (2.2), wobei das Codewort UART-konform gesendet wird, also das Codewort zumindest ein Startbit (Bit S), ein Informationswort und ein Stoppbit (Bit X) umfasst, wobei das Informationswort zwischen fünf und neun, bevorzugt acht, Datenbits (Bit 0 ... Bit 7) umfasst, und wobei das Startbit (Bit S), die Datenbits (Bit 0 ... Bit 7) und/oder das Stoppbit (Bit X) zumindest ein low-Bit beinhalten, – Zählen der Anzahl der Takte der Dauer aller low-Bits durch die zweite Datenverarbeitungseinheit (3.1), und – Entscheiden ob die Anzahl der Takte der Dauer aller low-Bits • in einem ersten Bereich (B1) liegt, worauf das Codewort als logische 0 interpretiert wird, • in einem zweiten Bereich (B2) liegt, worauf das Codewort als logische 1 interpretiert wird, oder • in allen weiteren möglichen Bereichen liegt, worauf das Codewort als ungültig interpretiert wird. Method for data transmission at a baud rate via a UART interface between a first data processing unit ( 2.1 ) with a first clock source ( 2.2 ) and a second data processing unit ( 3.1 ) with a second clock source ( 3.2 ), the first clock source ( 2.2 ) has a tolerance of less than 5%, in particular less than 0.5%, and the second clock source ( 3.2 ) has a tolerance greater than 0.5%, in particular greater than 5%, comprising the steps of - transmitting at least one code word from the first data processing unit ( 2.1 ) to the second data processing unit ( 2.2 ), wherein the code word is sent UART-compliant, that is, the code word comprises at least a start bit (bit S), an information word and a stop bit (bit X), wherein the information word between five and nine, preferably eight, data bits (bit 0 .. Bit 7), and wherein the start bit (bit S), the data bits (bit 0 ... bit 7) and / or the stop bit (bit X) comprise at least one low bit, - counting the number of cycles of the duration all low bits through the second data processing unit ( 3.1 deciding whether the number of clocks of the duration of all low bits lies in a first range (B1), whereupon the codeword is interpreted as logical 0, lies in a second range (B2), whereupon the codeword is logical 1 is interpreted, or • lies in all other possible areas, whereupon the codeword is interpreted as invalid. Verfahren nach Anspruch 1, wobei das Codewort zusätzlich ein Paritätsbit (Bit P) umfasst.The method of claim 1, wherein the codeword additionally comprises a parity bit (bit P). Verfahren nach Anspruch 1 oder 2, wobei der erste Bereich (B1) als 1/baud·lbit1·f·tol1 ≤ B1 < 1/baud·lbit1·f·tol2 und der zweite Bereich (B2) als 1/baud·lbit2·f·tol1 ≤ B2 < 1/baud·lbit2·f·tol2 definiert wird, wobei baud der Baudrate der Datenübertragung, f der Taktfrequenz der zweiten Datenverarbeitungseinheit, tol1 der unteren Toleranzgrenze, tol2 der oberen Toleranzgrenze, lbit1 der Anzahl der low-Bits im ersten Bereich, und lbit2 der Anzahl der low-Bits im zweiten Bereich entspricht, und wobei der ungültige Bereich als der Bereich definiert wird, der nicht durch den ersten Bereich (B1) und den zweiten Bereich (B2) abgedeckt wird.The method of claim 1 or 2, wherein the first region (B1) as 1 / baud · lbit1 · f · tol1 ≦ B1 <1 / baud · lbit1 · f · tol2 and the second area (B2) as 1 / baud · lbit2 · f · tol1 ≦ B2 <1 / baud · lbit2 · f · tol2 where baud is the baud rate of the data transmission, f is the clock frequency of the second data processing unit, tol1 is the lower tolerance limit, tol2 is the upper tolerance limit, lbit1 is the number of low bits in the first range, and lbit2 is the number of low bits in the second range , and the invalid area is defined as the area not covered by the first area (B1) and the second area (B2). Verfahren nach Anspruch 3, wobei für die Anzahl der low-Bits im ersten Bereich lbit1 ≥ 4, insbesondere lbit1 = 8, verwendet wird.Method according to Claim 3, wherein lbit1 ≥ 4, in particular lbit1 = 8, is used for the number of low bits in the first range. Verfahren nach Anspruch 3 oder 4, wobei für die Anzahl der low-Bits im zweiten Bereich lbit2 < 4, insbesondere lbit2 = 3, verwendet wird.Method according to Claim 3 or 4, wherein lbit2 <4, in particular lbit2 = 3, is used for the number of low bits in the second range. Verfahren nach zumindest einem der Ansprüche 3 bis 5, wobei für die untere Toleranzgrenze tol1 = 0,75 verwendet wird. Method according to at least one of claims 3 to 5, wherein for the lower tolerance limit tol1 = 0.75 is used. Verfahren nach zumindest einem der Ansprüche 3 bis 6, wobei für die obere Toleranzgrenze tol2 = 1,25 verwendet wird.Method according to at least one of claims 3 to 6, wherein tol2 = 1.25 is used for the upper tolerance limit. Verfahren nach zumindest einem der Ansprüche 1 bis 7, wobei für ein UART-Telegramm – ein Codewort, bevorzugt eine Sequenz von Codewörter, als Datenpräambel und – ein Codewort, bevorzugt eine Sequenz von Codewörtern, zur Datenübertragung verwendet werden.Method according to at least one of claims 1 to 7, where for a UART telegram A codeword, preferably a sequence of codewords, as data preamble and A codeword, preferably a sequence of codewords, for data transmission be used. Verfahren nach Anspruch 8, wobei für ein UART-Telegramm zusätzlich eine Prüfsumme berechnet und gesendet wird.The method of claim 8, wherein additionally a checksum is calculated and sent for a UART telegram. Verfahren nach Anspruch 9, wobei die Prüfsumme über zyklische Redundanzprüfung berechnet wird.The method of claim 9, wherein the checksum is calculated via cyclic redundancy checking. Verfahren nach zumindest einem der Ansprüche 1 bis 10, zusätzlich umfassend die Schritte – Interpretieren des zumindest einen Codeworts, – Zurücksenden einer Antwort von der zweiten Datenverarbeitungseinheit (3.1) an die erste Datenverarbeitungseinheit (2.1), wobei die Antwort aus zumindest einem Antwort-Codewort besteht, wobei das Antwort-Codewort zumindest ein Startbit (Bit S), ein Informationswort und ein Stoppbit (Bit X) umfasst, wobei das Informationswort zwischen fünf und neun, bevorzugt acht, Datenbits (Bit 0 ... Bit 7) umfasst, und wobei das Startbit (Bit S), die Datenbits (Bit 0 ... Bit 7) und/oder das Stoppbit (Bit X) zumindest ein low-Bit beinhalten, wobei eine logische 0 so gesendet wird, dass die Anzahl der Takte der Dauer aller zurückgesendeten low-Bits im ersten Bereich (B1) liegt, insbesondere entspricht die Anzahl der zurückgesendeten low-Bits im Antwort-Codewort genau der Anzahl der empfangenen low-Bits im Codewort für eine logische 0, und wobei eine logische 1 so gesendet wird, dass die Anzahl der Takte der Dauer aller zurückgesendeten low-Bits im zweiten Bereich (B2) liegt, insbesondere entspricht die Anzahl der zurückgesendeten low-Bits im Antwort-Codewort genau der Anzahl der empfangenen low-Bits im Codewort für eine logische 1. Method according to at least one of claims 1 to 10, additionally comprising the steps of - interpreting the at least one code word, - returning a response from the second data processing unit ( 3.1 ) to the first data processing unit ( 2.1 ), wherein the answer consists of at least one response codeword, the answer codeword comprising at least a start bit (bit S), an information word and a stop bit (bit X), the information word comprising between five and nine, preferably eight, data bits ( Bit 0 ... bit 7), and wherein the start bit (bit S), the data bits (bit 0 ... bit 7) and / or the stop bit (bit X) include at least one low bit, wherein a logical 0 is sent so that the number of clocks of the duration of all returned low-bits in the first range (B1) is, in particular, the number of returned low bits in the response code word exactly the number of received low-bits in the code word for a logical 0, and wherein a logical 1 is sent so that the number of clocks of the duration of all returned low-bits in the second area (B2), in particular, the number of returned low bits in the response code word exactly corresponds to the number of received low Bits in the codeword f for a logical 1. Verfahren nach zumindest einem der Ansprüche 1 bis 11, wobei das UART-Telegramm insbesondere zur Abfrage insbesondere zumindest eines der Elemente: Seriennummer, Firmwareversion, Status, Betriebsstunden, Temperatur und/oder Leistung, und/oder insbesondere zumindest eine der Anweisungen: Einschalten von Anzeigeelementen, insbesondere von zumindest einer LED, Ausschalten von Anzeigeelementen, insbesondere von zumindest einer LED, Firmwareupdate, Versetzen in einen anderen Betriebszustand, und/oder Rücksetzen in einen Grundzustand verwendet wird.Method according to at least one of claims 1 to 11, the UART telegram in particular for querying in particular at least one of the elements: serial number, firmware version, status, operating hours, temperature and / or power, and / or in particular at least one of the instructions: switching on display elements, in particular of at least one LED, switching off display elements, in particular of at least one LED, firmware update, shifting to another operating state, and / or resetting to a ground state. Anordnung (1) zur Anwendung des Verfahrens nach zumindest einem der Ansprüche 1 bis 12, wobei die erste Datenverarbeitungseinheit (2.1) einem ersten Mikrocontroller und die zweite Datenverarbeitungseinheit (3.1) einem zweiten Mikrocontroller entspricht.Arrangement ( 1 ) for applying the method according to at least one of claims 1 to 12, wherein the first data processing unit ( 2.1 ) a first microcontroller and the second data processing unit ( 3.1 ) corresponds to a second microcontroller. Anordnung (1) nach Anspruch 13, wobei der erste Mikrocontroller (2.1) einem ersten Feldgerät, insbesondere einem Messumformer (2) zugeordnet ist. Arrangement ( 1 ) according to claim 13, wherein the first microcontroller ( 2.1 ) a first field device, in particular a transmitter ( 2 ) assigned. Anordnung (1) nach Anspruch 13 oder 14, wobei der zweite Mikrocontroller (3.1) einer Sensorikkomponente (3) zugeordnet ist, wobei an der Sensorikkomponente (3) auf einer ersten Seite Mittel zum Anschluss an das erste Feldgerät und auf einer zweiten Seite Mittel zum Anschluss an ein zweites Feldgerät, insbesondere an einen Sensor (4), vorgesehen sind.Arrangement ( 1 ) according to claim 13 or 14, wherein the second microcontroller ( 3.1 ) a sensor component ( 3 ), wherein at the sensor component ( 3 ) on a first side means for connection to the first field device and on a second side means for connection to a second field device, in particular to a sensor ( 4 ) are provided.
DE201210110537 2012-11-05 2012-11-05 Method for transmitting data with a baud rate between data processing units through interface, involves determining whether number of clocks of durations of low bits is located in first region in which code word is interpreted as false Pending DE102012110537A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE201210110537 DE102012110537A1 (en) 2012-11-05 2012-11-05 Method for transmitting data with a baud rate between data processing units through interface, involves determining whether number of clocks of durations of low bits is located in first region in which code word is interpreted as false

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE201210110537 DE102012110537A1 (en) 2012-11-05 2012-11-05 Method for transmitting data with a baud rate between data processing units through interface, involves determining whether number of clocks of durations of low bits is located in first region in which code word is interpreted as false

Publications (1)

Publication Number Publication Date
DE102012110537A1 true DE102012110537A1 (en) 2014-05-08

Family

ID=50489676

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201210110537 Pending DE102012110537A1 (en) 2012-11-05 2012-11-05 Method for transmitting data with a baud rate between data processing units through interface, involves determining whether number of clocks of durations of low bits is located in first region in which code word is interpreted as false

Country Status (1)

Country Link
DE (1) DE102012110537A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109450607A (en) * 2018-09-10 2019-03-08 北京中电华大电子设计有限责任公司 A kind of calibration of baud rate and device of UART Universal Asynchronous Receiver Transmitter

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3643766A1 (en) * 1986-12-20 1988-07-07 Standard Elektrik Lorenz Ag DATA BUS SYSTEM FOR A SERIAL DATA BUS
US5838254A (en) * 1995-11-22 1998-11-17 Kabushiki Kaisha Tokai-Rika-Denki-Seisakusho Transmission-reception time correction system
US20040233937A1 (en) * 2001-10-15 2004-11-25 Stmicroelectronics Sa Device for transmitting asynchronous data having clock deviation control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3643766A1 (en) * 1986-12-20 1988-07-07 Standard Elektrik Lorenz Ag DATA BUS SYSTEM FOR A SERIAL DATA BUS
US5838254A (en) * 1995-11-22 1998-11-17 Kabushiki Kaisha Tokai-Rika-Denki-Seisakusho Transmission-reception time correction system
US20040233937A1 (en) * 2001-10-15 2004-11-25 Stmicroelectronics Sa Device for transmitting asynchronous data having clock deviation control

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
EIA-485
Standard EIA-232

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109450607A (en) * 2018-09-10 2019-03-08 北京中电华大电子设计有限责任公司 A kind of calibration of baud rate and device of UART Universal Asynchronous Receiver Transmitter
CN109450607B (en) * 2018-09-10 2021-02-09 北京中电华大电子设计有限责任公司 Baud rate calibration method and device for universal asynchronous receiver-transmitter

Similar Documents

Publication Publication Date Title
EP2286551B1 (en) Serial-peripheral interface with reduced number of connection lines
EP2478670B1 (en) Method and device for waking users of a bus system and corresponding users
DE3506118C2 (en)
EP0660209B1 (en) Method and device for serial transmission of data between a position sensing means and a data processing unit
DE102014106752B4 (en) Method and control device for operating a contactless transmission system for an IO-Link
DE102012201170A1 (en) Device for transmitting sensor data
EP0171579B1 (en) Arrangement for the serial transmission of measured values of at least one transducer
EP2000866B1 (en) Monitoring device for detecting an incorrect addressing of a slave in a fieldbus-system
DE102009041434A1 (en) Method and device for waking participants of a bus system and corresponding participants
DE102014219512A1 (en) Method and device for serial data transmission via a bidirectional data transmission channel
DE102007054924A1 (en) Method for operating a field device, and communication unit and field device
DE102010040772A1 (en) Decoding unit for conversion of differential Manchester signal into binary signal, has logic unit that detects whether flanks are provided in Manchester signal or not, where decoding unit sets level in binary signal during absence of flanks
DE102018009228A1 (en) IO-Link scanner and indicator
EP2380064A1 (en) Device and method for the automated detection of an interface
WO2010049408A1 (en) Modular meter with distributed data and algorithms
EP2853862A1 (en) Position measuring device and method for checking a work cycle signal
DE102015116456A1 (en) communication devices
DE102012110537A1 (en) Method for transmitting data with a baud rate between data processing units through interface, involves determining whether number of clocks of durations of low bits is located in first region in which code word is interpreted as false
DE102015114442A1 (en) Method for activating an inactive interface on a field device of process automation
DE102022127944A1 (en) SINGLE EDGE NIBBLE TRANSMISSION (SENT) MULTIPLE TRANSMISSION MODE DEVICE
EP0908802B1 (en) Method for addressing an actuator-sensor-slave and actuator-sensor-slave and addressing apparatus for implementing the method
DE102014117446A1 (en) Method for operating a measuring point and measuring point
EP2873222B1 (en) Method for serial data transmission
DE102011115965B4 (en) Method for baud rate detection for field devices
EP2061015A2 (en) Sensor system and method for operating same

Legal Events

Date Code Title Description
R163 Identified publications notified
R081 Change of applicant/patentee

Owner name: ENDRESS+HAUSER CONDUCTA GMBH+CO. KG, DE

Free format text: FORMER OWNER: ENDRESS + HAUSER CONDUCTA GESELLSCHAFT FUER MESS- UND REGELTECHNIK MBH + CO. KG, 70839 GERLINGEN, DE

R082 Change of representative

Representative=s name: ANDRES, ANGELIKA, DIPL.-PHYS., DE

R012 Request for examination validly filed
R082 Change of representative

Representative=s name: KRATT-STUBENRAUCH, KAI, DR., DE

R082 Change of representative

Representative=s name: KRATT-STUBENRAUCH, KAI, DR., DE