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 PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4295—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding 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
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
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.
- 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
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.
- 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
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
Zu sehen ist ein erstes Feldgerät
An den Messumformer
In der Sensorikkomponente
Schon in der schematischen Übersicht in
Durch die Einbußen hinsichtlich der genannten Eigenschaften verbraucht Mikrocontroller
Um weiter so energiesparsam wie möglich zu agieren, wird der Mikrocontroller
Aufgrund der Einschränkungen hinsichtlich Leistung und Platz ist es nicht möglich, den Mikrocontroller
Das erfindungsgemäße Verfahren schlägt deswegen eine Kommunikation zwischen den Mikrocontrollern
Die Baudrate beträgt wie bei UART üblich 9600.The baud rate is 9600 as usual at UART.
Wenn keine Kommunikation vorliegt, in
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
Wie bereits erwähnt, ist der Mikrocontroller
Der Mikrocontroller
Sendet der Master
In
Sendet der Master
Dies ist in
Kodiert man die zu übertragenden Daten ausschließlich über diese zwei Bytes, dann ist dem Slave-System
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
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:
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
Der Messumformer
Das zweite Feldgerät sendet dann eine entsprechende Antwort. Dem Slave-System
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
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 in2 - 2.22.2
-
Taktquelle von
2.1 Clock source of2.1 - 33
- Sensorikkomponente sensor component
- 3.13.1
-
Mikrocontroller in
3 Microcontroller in3 - 3.23.2
-
Taktquelle von
3.1 Clock source of3.1 - 44
- Sensor sensor
- 55
- Schnittstelle interface
- ff
- Taktfrequenz clock speed
- TT
- Taktdauer Pulse_duration
- 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)
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)
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)
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 |
-
2012
- 2012-11-05 DE DE201210110537 patent/DE102012110537A1/en active Pending
Patent Citations (3)
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)
Title |
---|
EIA-485 |
Standard EIA-232 |
Cited By (2)
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 |