.


:




:

































 

 

 

 





2. I2C - 860 2 -, , EEPROM, , - .

I2C - , ( SDA SCL), master-slave multimaster. I2COM (. 5.56). M/S = 0, slave-, M/S = 1, - master.

SCL SDA . , (open drain), multimaster. Ι2- , SCL SDA 1 .

2 - I2MOD (. 5.57).

EN:= 1. ( EN = 0) .

PC- . slave, SCL. master- BRG. BRGCLK BRG- . PDIV (. 5.36).

BRG- 2 - . I2BRG 2 (I2BRG+3). BRG- . 25 520 (BRGCLK/(4x2x(0+3)= BRGCLK/48),

2 - , , . FLT:= 1 , - .

REVD . REVD = 0, SLB. REVD = 1, MSB, Motorola.

GCD I2MOD , master-. GCD = 1, . GCD = 0, (general call address).

860 2 - 1 - (parameter RAM) + 0x1 80 . 2 - - (. . 5.30). , I2C base+28 I2C base+2C.

2 - , TxBD () RxBD (). SCC- /. RBASE TBASE 2 -. , W:= 1 . , R:= 1, .

2 -. master 2 slave-. slave- , ( ). , SDA , slave-.

master- TxBD, R:= 1 , RxBD. STR:= 1 I2COM. , FIFO SDMA- , , 2 - . FIFO . MSB .

2 - start- ( slave-) SDA , , SCL. SDA (), (collision) master-. Ȼ , , 1, 0. slave .

master slave-. , master-. stop- start- .

slave- master- n+1 , slave- , /. n - , slave-. R/W = 1, slave.

2 - slave, I2ADD (. 5.58) 7 , , 128 slave-. slave- , RxBD, , , SDA master- start/stop-. , slave- start-. Slave- , overrun FIFO.

master- , , ( L = 1 ), STR = 1 . STR .

slave, SCL master-. master- , , .

slave- (TxBD) (RxBD), STR:= 1 I2COM. STR slave- , . master-.

start- slave- ( 7- 1-), 0 - R/W. R/W = 0, master-, RxBD-, start- stop-. R/W = 1, FIFO slave- master-. , . , , , .

master-. , . , underrun FIFO . (underrun), slave- 1 , stop- master-.

2 -, RISC- INITTX PARAMETERS, CLOSE RX, INIT RX PARAMETERS, INITTX and RX PARAMETERS.


. 5.59. SPIMODE SPI-

. 860 SPI (Serial Peripheral Interface). SPI -, , - , 4- ( SPIMISO, SPIMOSI, SPICLK slave- SPISEL), , ISDN- . SPIMODE (. 5.59).

, SPI-, master ( M/S = 1) slave ( M/S = 0). multimaster SPI- , (open-drain).

master SPI- slave-, ( back-to-back). .

. master, BRG-. master ( ) SPISEL slave- SPICLK, , slave-. slave, .

master, BGR-. BRG (SynCLK). DIV16 1, BRGCLK 16 (BRGCLK = SynCLK/16). DIV16 = 0, .

, , . BRGCLK 4([-])+1), , 4 64. .

master SynCLK/ 4, slave - SynCLK/2. SynCLK/50.

. SPI- , . . . (MSB) , REV = 1, , LSB-, REV = 0.

4 16 . LEN 1 ( 0000) 16 ( 1111), , 4 , .

/, SPI- , , . SPI- 1 EN SPIMODE, . 5.59. .

( L00P = 0) ( L00P = 1). , , .

SPIMOSI SPIMISO (. 5.37). multimaster.

5.37

 


 

 

SPISEL master- slave-. multimaster, SPISEL , master- . , master- slave- SPISEL master, .

slave-, / slave-.

SPI- CI. CI = 0, TXD , RXD - (. 5.60). SPI- , 0. CI = 1, , . SPI- , 1.

 


 

. = 0, SPICLK . = 1, .

SPI- INIT PARAMETERS, CLOSE RX BD INIT RX PARAMETERS.

. 860 SPI- 2- (parameter RAM) + 0x1 D80 . SPI- - (. . 5.30). , SPI base+28 SPI base+2C.

SPI- , () RxBD (). SCC- /. RBASE TBASE SPI-. , W:= 1 . , RBASE TBASE, 8.

, , SCC-.

, R:= 1, .

STR SPICOM (. 5.61). SPICOM 0. SPI- master, STR:= 1 . , SDMA- FIFO . slave, SPISEL . STR λ .

FIFO .

Master- SPICLK SPIMOSI SPIMISO. , , R:= 0 := 0 .

, STR. L = 1, . , .

 

 

7 6 5 4 3 2 1 0

STR

. 5.61. SPICOM

 

slave SPI- SPI master- . slave- , TxBD R:= 1. , RxBD. , STR:= 1 SPICOM, SPI- . , SPISEL = 0 SPICLK. SPIMISO SPIMOSI. . SPI- RxBD, SPISEL.

SPISEL , , , TxBD . SPISEL SPICLK . , SPISEL , 1.

multimaster SPIMOSI, SPIMISO, SPICLK SPI- , SPISEL . SPI- master-, - slave. SPI- master-, SPISEL = 0 master-, multimaster-, MIME . SPI- , EN SPIMODE.

USB. USB- 823. USB- 823 : , (protocol state machines). , , function, - host. , USB- 823 function, host, ( loop-back ).

USB- 823 (USB reference clock), , . . 12 / 48 , 1,5 / - 6 .

function CRC16/CRC5, NRZI-/ / - (bit stuffing). 12 1,5 / .

host CRC16, NRZI-/ / - (bit stuffing). master 12 / (local loopback). , 823 host- .

1,5 /, .

USB- 823 (root hub).

: CRC5 (token); ; 1 SOF tokens.

, , USB- FIFO. USB- - 16- FIFO, . . (endpoint) . USB- 16- - FIFO .

USB- USMOD (. 5.62), (IMMR&0xFFFF000)+0xA00.

EN USB-. EN = 1, , EN = 0, . - .

LSS USB-. LSS = 0, 12 /, LSS = 1, 1,5 /.

HOST USB-. HOST = 0. , HOST = 1 - (host).

RESUME = 1 - (suspend mode).

TEST = 1 . 3 1,5 /, , HOST = 1, Endpoint 0 , a Endpoint 1-Endpoint 3 - .

(endpoints), (control, interrupt, bulk, sochronous). , Endpoint 0 control-. - USEPx (. 5.63), (IMMR&0xFFFF000)+0xA04 - USEP0, [IMMR&0xFFFF000)+0xA06 - USEP1, (IMMR& 0xFFFF0OO)+0xA08 - USEP2, (IMMR&0xFFFF000)+0xA0A - USEP3. .

, USEPx, EPN (Endpoint Number). (Transfer Mode) , (00 - Control, 01 - Interrupt, 10 - Bulk, 11 - Isochronous).

, MF (MultiFrame). MF = 0, FIFO . MF = 1, FIFO .

 



 


, - , USB-, RTE = 1, .

, (isochronous) MF RTE .

USB- slave, THS RHS , - OUT IN (. 5.38). , NAK STALL Control.



 

 

USB- 823. Motorola OSI, D+ D- USB- . 823 (. 5.64): USBOE - ( - ),

USB- ; USBRXD - ; USBRXP, USBRXN - (USBRXP=1, USBRXN = 0 - 12 /, USBRXP = 0, USBRXN = 1-1,5 /) (singled ended) 0 ( USBRXP = USBRXN = 0);

USBTXP, USBTXN- (USBTXP = USBTXN = = 0 - singled ended 0, USBTXP = 0 USBTXN = 1, 0, USBTXP = 1 USBTXN = 0, - 1.

 
 
 

 

 


. 5.64. USB- 623

(sleep, suspend), /

 

 


 

USB. USB - . USB . . USB- - (token), , USB- . USB , , . .

USB . , . .

(data packet) , . , (handshake packet), , .

USB- 0x00 USB-.

USB- (token). . , 3 , CRC ( ), PID . :

1) Setup token -
;

2)IN tokenm -
USB- host-;

3)OUT token - USB- ;

4)SOF token.

USB- SETUP token, , Control Endpoint. SETUP , USB-. SETUP- , USB- , OUT. SETUP- , USB- , IN.

SETUP- , . Set Address, Slave, , USB- SAD USAOR (. 5.65), (IMMR & 0xFFFF0000) + 0xA0l

 


 

. 5.65. Slave USB-

 

USB- . USB USB- - USB-. , . , . , . , , USB-. USB-, (Default Address = 0), , 0. Get_Descriptor/Device 0 0.

, , , .

, USB , Set_Address, , . - USB-, , USB-. - , .

, . , , , .

USB-. USB- , . USB--, . USB- . USB- - , USB-, .

. USB- OUT token, . , , , , , . , := 0 (Empty) , I = 1 (Interrupt), .

, , , , = 1. , . L = 1 (Last) .

(DATAO/DATA1 packet ID (PID)), , PID PID .

USB- - . , . CRC , OUT- . RHS USEPx.

. . - , .

, USB- 823 , . , .

FIFO (Overrun). , USB- (endpoints) FIFO , , FIFO- . , OV:= 1 RXB USB-. , USB- NAK.

(Busy). ,
, RISC- .
USB- BSY.

(Non Octet Aligned). ,
, 8 .
, ,
NO:= 1
RXB USB-.

(CRC Error). - , CR:= 1 RXB USB-.

/ -.
, , -
AB(Frame Aborted):= 1

. FIFO . , STR:= 1 USB-. USB- FIFO- (endpoint) IN,

IN- FIFO Endpoint USEPx THS = 10, IN NAK. THS , IN.

L = 1 (Last), .

USB- . , := 1 (Time Out).

, DATAO/ DATA1 PID .

, , .


 

FIFO (underrun).
-, -
, , UN:= 1 -
USB--
.

- (Timeout). RTE = 1
, USB-
, . RTE = 0
,
, := 1 -
USB-.

(TxData not Ready). ,
IN-, FIFO
,
NAK STALL. -
USB-.


. SOF (Start of Frame) USB-- SOF FRAME_N (. 5.66), SOF. SOF- , FRAME_N V:= 1.

PRE USB- (. . ) host ( PRE- host ). .

USB- 823. USB-. USB- : USB- (. 5.39) (. 5.40). - 82- , USBBase = (IMMR & 0xFFFF0000)+0x3C.


 

EPxPTR (. 5.67) -. (, 32).

USB- (. 5.40) - SCC- SMC-.

5.40


 

 

TBCNT , SDMA-.

RBCNT USB-koh- , FIFO , , MRBLR SDMA-.

 

USB-. USB-koh-, CPCR (. 5.68), (IMMR & 0xFFFF0000)+0x9C0. USBCMD (. 5.41). , ENDPOINT (00-Endpoint0, 01 Endpointi, 10-Endpoint2, 11-Endpoint3). USB- , FLG = 1. .


 

 

RST = 1 , , RISC- RISC- . RISC- 60 . RST 0.

 

 

 

USB-, USB- (. 5.69), (IMMR & 0xFFFF0000)+0xA02. STR:= 1, FIFO , . IN.

, , FIFO . STOP ENDPOINT FLUSH:= 1. RESTART TX ENDPOINT.

USB-. USB- , , 16 ( - (. 5.70, 5.71), - , 3- 4- ).

,

.


 

(Empty) - (0 - , 1 - ). R (Ready) - (0 , 1 - ). W (Wrap) - (0 - , 1 - ). I (Interrupt)- (0 - , 1 - RXB ). F (First) L (Last) , () (0 - , 1 - () ).

= 1 (Transmit CRC), ( L = 1) . = 0, (End of Packet).

( L = 1), CNF = 1, . CNF = 0, , , FIFO .

 

 

NO (Non Octet) , . (Frame Aborted) -. CR (CRC Error). FIFO OV (Overrun), FIFO - UN (Underrun).

PID (Packed ID) . PID ( F = 1). ( F = 1) . PID = 00, DATA0. PID = 01, DATA1.

, , NAK ( ) STALL ( STALL). .

, := 1 (Time Out).

. USBER (. 5.72) (IMMR&0xFFFF0000)+0xA10. . USB- , 1 USBMR, . (IMMR&0xFFFFOO00)+0xA14 , .

 


USB- , 1 RESET .

IDLE , .

1, : , Underrun.

SOF (Start of Frame) SOF:= 1 FRAME_N .

USB- , RISC- , BSY .

, ( ) FIFO , , , .

RXB , .

 

 






:


: 2016-10-06; !; : 491 |


:

:

, .
==> ...

1696 - | 1573 -


© 2015-2024 lektsii.org - -

: 0.152 .