A communication
system is described that includes a data
bus and multiple user nodes connected to the data
bus. Also described is a method for operating such a communication
system. Data frames for
data transmission each include a
data field and / or a control field and a check sum field. One user has a high-precision
clock generator (for example, precise
quartz, MEMS
resonator, etc.), and the remaining users have a
clock generator (for example, an
RC oscillator or imprecise
quartz) having a lower precision. During operation of the communication
system calibration messages are present on the data
bus, and the users having the imprecise
clock generator receive a calibration message. The users having the imprecise
clock generator calibrate the imprecise
clock generator to a system
clock signal of the data bus, taking into account information contained in the received calibration message. To expedite the calibration of such a communication system and at the same time conserve bandwidth on the data bus, any given messages transmitted via the data bus are used as calibration messages for calibrating the system. For the calibration, a distance (NOPN) between an edge in the
data field or in the control field of a received data frame and another edge in a field of the received data frame is measured in oscillator periods. The number (NB) of bits between these two edges is counted, and a clock divider which generates a system
clock signal of a data bus protocol
control system of the user to be calibrated is to be set so that a system
clock signal period has a length of NOPN / NB·NTQ oscillator periods.