beautypg.com

Serial peripheral interface (spi), Figure 6. receive burst-count example, Table 3. usart mode details – Rainbow Electronics MAXQ613 User Manual

Page 19: Bit microcontroller with infrared module maxq613

background image

16-Bit Microcontroller with Infrared Module

MAXQ613

______________________________________________________________________________________ 19

Table 3. USART Mode Details

Figure 6. Receive Burst-Count Example

Serial Peripheral Interface (SPI)

The integrated SPI provides an independent serial
communication channel that communicates synchro-
nously with peripheral devices in a multiple master or
multiple slave system. The interface allows access to
a 4-wire, full-duplex serial bus, and can be operated in
either master mode or slave mode. Collision detection

is provided when two or more masters attempt a data
transfer at the same time.
The maximum SPI master transfer rate is Sysclk/2. When
operating as an SPI slave, the device can support up to
Sysclk/4 SPI transfer rate. Data is transferred as an 8-bit
or 16-bit value, MSB first. In addition, the SPI module
supports configuration of an active SSEL state (active
low or active high) through the slave active select.

MODE

TYPE

START BITS

DATA BITS

STOP BITS

Mode 0

Synchronous

N/A

8

N/A

Mode 1

Asynchronous

1

8

1

Mode 2

Asynchronous

1

8 + 1

1

Mode 3

Asynchronous

1

8 + 1

1

1

1

4

5

6

7

8

9

TO

2

3

4

6

7

5

8

9

CARRIER FREQUENCY

CALCULATION

IRRX

IRV

IRMT

IRMT = PULSE COUNTING

IRMT = PULSE COUNTING

IRV = CARRIER CYCLE COUNTING

CAPTURE INTERRUPT (IRIF = 1).
IRV

≥ IRMT.

IRV = 0 (IF IRXRL = 1).

SOFTWARE SETS IRCA = CARRIER FREQUENCY.
SOFTWARE SETS RXBCNT = 1 (WHICH CLEARS IRMT = 0001 IN HARDWARE).
SOFTWARE CLEARS IRCFME = 0 SO THAT IRV COUNTS CARRIER CYCLES. IRV IS RESET TO 0 ON QUALIFIED EDGE DETECTION IF IRXRL = 1.
SOFTWARE ADDS TO IRMT THE NUMBER OF PULSES USED FOR CARRIER MEASUREMENT.
IRCA x 2x COUNTER FOR SPACE CAN BEGIN IMMEDIATELY (QUALIFIED EDGE RESETS).

QUALIFIED EDGE DETECTED: IRMT++
IRV RESET TO 0 IF IRXRL = 1.

IRCA x 2 PERIOD ELAPSES: IRIF = 1; CARRIER ABSENCE = SPACE.
BURST MARK = IRMT PULSES.
SOFTWARE CLEARS RXBCNT = 0 SO THAT WE CAPTURE ON THE NEXT QUALIFIED EDGE.

QUALIFIED EDGE DETECTED: IRIF = 1, CAPTURE IRV IRMT AS THE BURST SPACE (PLUS UP TO ONE CARRIER CYCLE).

SOFTWARE SET RXBCNT = 1 AS IN (5).
CONTINUE (5) TO (8) UNTIL LEARNING SPACE EXCEEDS SOME DURATION. IRV ROLLOVERS CAN BE USED.