English
Language : 

MC68HC05BD3 Datasheet, PDF (57/112 Pages) Motorola, Inc – HCMOS microcontroller
7.4
Programming Considerations
7.4.1 Initialization
Reset will put the M-Bus Control register to its default status. Before the interface can be used to
transfer serial data, the following initialization procedure must be carried out.
1) Update Frequency Divider Register (MFDR) to select an SCL frequency.
2) Update M-Bus Address Register (MADR) to define its own slave address.
3) Set MEN bit of M-Bus Control Register (MCR) to enable the M-Bus interface
system.
4) Modify the bits of M-Bus Control Register (MCR) to select Master/Slave
mode, Transmit/Receive mode, interrupt enable or not.
7.4.2 Generation of a START Signal and
the First Byte of Data Transfer
7
After completion of the initialization procedure, serial data can be transmitted by selecting the
master transmit mode. If the device is connected to a multi-master bus system, the state of the
M-Bus busy bit (MBB) must be tested to check if the serial bus is free. If the bus is free (MBB=0),
the START condition and the first byte (the slave address) can be sent. An example program which
generates the START signal and transmits the first data byte (slave address) is shown below:
CHFLAG
TXSTART
SEI
BRSET
BSET
BSET
LDA
STA
CLI
; DISABLE INTERRUPT
5,MSR,CHFLAG ; CHECK THE MBB BIT OF THE
; STATUS REGISTER. IF IT IS
; SET, WAIT UNTIL IT IS CLEAR
4,MCR
; SET TRANSMIT MODE
5,MCR
; SET MASTER MODE
; i.e. GENERATE START CONDITION
#CALLING
; GET THE CALLING ADDRESS
MDR
; TRANSMIT THE CALLING
; ADDRESS
; ENABLE INTERRUPT
7.4.3
Software Responses after Transmission or
Reception of a Byte
Upon the completion of the transmission or reception of a data byte, the data transferring bit (MCF)
will be set, indicating one byte communication has been finished. The M-Bus interrupt bit (MIF)
will also be set to generate an M-Bus interrupt if the interrupt is enabled. Software must clear the
MC68HC05BD3
M-BUS SERIAL INTERFACE
TPG
MOTOROLA
7-11