English
Language : 

ATMEGA16M1_1 Datasheet, PDF (221/365 Pages) ATMEL Corporation – 8-bit Microcontroller with 16K/32K/64K Bytes In-System Programmable Flash
ATmega16/32/64/M1/C1
Figure 17-13. LIN Interrupt Mapping
LINERR.7
LINERR.6
LINERR.5
LINERR.4
LINERR.3
LINERR.2
LINERR.1
LINERR.0
LABORT
LTOERR
LOVERR
LFERR
LSERR
LPERR
LCERR
LBERR
LINSIR.3
LERR
LINSIR.2
LINSIR.1
LINSIR.0
LIDOK
LTXOK
LRXOK
LINENIR.3 LINENIR.2 LINENIR.1 LINENIR.0
LENERR LENIDOK LENTXOK LENRXOK
LIN ERR
LIN IT
17.5.14
Message Filtering
Message filtering based upon the whole identifier is not implemented. Only a status for frame
headers having 0x3C, 0x3D, 0x3E and 0x3F as identifier is available in the LINSIR register.
Table 17-4. Frame Status
LIDST[2..0]
Frame Status
0xx b
100 b
101 b
110 b
111 b
No specific identifier
60 (0x3C) identifier
61 (0x3D) identifier
62 (0x3E) identifier
63 (0x3F) identifier
The LIN protocol says that a message with an identifier from 60 (0x3C) up to 63 (0x3F) uses a
classic checksum (sum over the data bytes only). Software will be responsible for switching cor-
rectly the LIN13 bit to provide/check this expected checksum (the insertion of the ID field in the
computation of the CRC is set - or not - just after entering the Rx or Tx Response command).
17.5.15 Data Management
17.5.15.1
LIN FIFO Data Buffer
To preserve register allocation, the LIN data buffer is seen as a FIFO (with address pointer
accessible). This FIFO is accessed via the LINDX[2..0] field of LINSEL register through the LIN-
DAT register.
LINDX[2..0], the data index, is the address pointer to the required data byte. The data byte can
be read or written. The data index is automatically incremented after each LINDAT access if the
LAINC (active low) bit is cleared. A roll-over is implemented, after data index=7 it is data
index=0. Otherwise, if LAINC bit is set, the data index needs to be written (updated) before each
LINDAT access.
The first byte of a LIN frame is stored at the data index=0, the second one at the data index=1,
and so on. Nevertheless, LINSEL must be initialized by the user before use.
7647F–AVR–04/09
221