background image

2016-05-15

1

AKiSO

Interfejsy cyfrowe: I2C, SPI, 1-Wire, CAN

Interfejsy cyfrowe

I2C

Interfejs I2C (ang. inter-integrated circuit bus)

– standardowy protokół transmisji szeregowej 

opracowany przez firmę Philips i przyjęty 
powszechnie do sterowania zespołami cyfrowymi

– inne oznaczenia (I

2

C, IIC, SMBUS, Two-wire)

Materiały i szczegółowe informacje

www.semiconductors.philips.com/i2c

background image

2016-05-15

2

Interfejsy cyfrowe

Cechy interfejsu I2C 

– transmisja dwukierunkowa przy użyciu dwóch linii SCL (zegar) i 

SDA (dane)

– układ nadrzędny (Master) oraz jeden lub więcej układów 

podrzędnych (Slave)

– przemysłowa norma szyny I2C (Philips)  zakłada możliwość 

taktowania transmisji sygnałem zegarowym SCL o 
częstotliwości od 0 do 100 kHz

– spotykane maksymalne częstotliwości to 400 kHz i 3,4 MHz

– układy współpracujące z szyną I2C muszą być wyposażone w 

wyjścia z otwartym drenem dla linii SCL i SDA

– rezystory  podciągające  do VCC o  rezystancji  rzędu k

I2C

Interfejsy cyfrowe

I2C

Elementy sieci I2C

background image

2016-05-15

3

Interfejsy cyfrowe

I2C

Struktura sieci I2C

Interfejsy cyfrowe

I2C

Definicja sygnałów sterujących I2CBUS 

 

 

SDA

SCL

START

STOP

Zmiana

stanu

na linii

SDA

Stabilny 

stan

na linii

SDA

Charakterystyczne stany interfejsu  I2C

background image

2016-05-15

4

Interfejsy cyfrowe

I2C

Przesyłanie danych magistralą I2C

SDA

START

Dowolna ilość danych

STOP

SCL

1-7

8

8

9

9

1-7

ADRES

R/W

ACK

ACK

DANE

DANE

DANE

Interfejsy cyfrowe

I2C

S

S

S

Sr

R/W

R/W

R/W

R/W

DANE

DANE

DANE

D ANE

DAN E

DAN E

A

A

A

A

Format tran smisji: nadawca  - master, odbiorca - slave

Format transmisji: nadawca - slave, odbiorc a - master

For mat transmisji ze zmianą nadawcy

S - sygnał start
A  - sygnał potwier dzenia
P - sygnał stop
Sr  - powtórzenie sygnału start

dane prze syłane do urząd zenia slave

dane prze syłane do urząd zenia master

A

A

A/A

A/A

A/A

A/A

P

P

P

A dres urz. Slave

A dres urz. Slave

A dres urz. Slave

Adres urz. Slave

Formaty transmisji I2C

background image

2016-05-15

5

Interfejsy cyfrowe

I2C

Problemy sieci I2C

Interfejsy cyfrowe

I2C

Problemy sieci I2C

background image

2016-05-15

6

Interfejsy cyfrowe

I2C

Problemy sieci I2C

Interfejsy cyfrowe

I2C

PCA9554

PCA9554A

Przykład:  8-bitowy port I/O z wyjściem przerwań

background image

2016-05-15

7

Interfejsy cyfrowe

SPI

Interfejs SPI (ang. Serial Peripheral Interface)

– opracowany przez firmę Motorola

– wykorzystywany do połączeń między urządzeniami peryferyjnymi  

i/lub mikroprocesorem

– transmisja realizowana za pomocą rejestru przesuwającego

– transmisja synchroniczna, w pełni dupleksowa

– 4 linie sygnałowe:

SCLK

: Serial Clock

MOSI

: Master Out Slave In - dane z Master do Slave

MISO

: Master In Slave Out - dane z Slave do Master

SS    

: Slave Select

– sieć typu Master-Slave, w danej chwili tylko jeden Master

– max. częstotliwość zegara (SCLK), np. 20 MHz 

– Microwire - odpowiednik  firmy National Semiconductors

Interfejsy cyfrowe

SPI - Microwire

Interfejs Microwire – opis sygnałów

– CS (Chip Select)

sygnał generowany przez Master, najczęściej 

mikrokontroler. Jeśli CS jest nieaktywny układ zachowuje się 
tak jakby był odłączony od szyny.     

– SK (Serial  Clock)

jest to wejście sygnału zegarowego 

generowanego przez Master. Sygnał ten jest wykorzystywany 
do synchronizacji komunikacji pomiędzy współpracującymi 
urządzeniami. 

– DI (Data Input)

linia danych wejściowych. Służy do przesyłania 

danych do urządzenia, synchronizowanych sygnałem z linii 
SK.  

– DO (Data Output)

linia danych wyjściowych. Służy do 

przesyłania informacji o stanie pracy układu np. zajęty lub 
gotowy do wykonania zadania nakazanego przez urządzenie 
sterujące, oraz do przesyłania danych do Master, 
synchronizowanych sygnałem  SK.

background image

2016-05-15

8

Interfejsy cyfrowe

SPI

Struktura połączeń SPI

Sygnały SS muszą być oddzielne !

Interfejsy cyfrowe

SPI

Może być różna konfiguracja sygnałów SCLK

background image

2016-05-15

9

Interfejsy cyfrowe

SPI

Przykładowe przebiegi Microwire (EEPROM FM93C46)

Interfejsy cyfrowe

SPI

np.  

FM93C46N

FM93C46LEM8

Symbol układu FM93C46 i pełne oznaczenie

background image

2016-05-15

10

Interfejsy cyfrowe

1-Wire

Interfejs jednoprzewodowy 1-Wire

1-Wire

– interfejs szeregowy opracowany przez firmę Dallas Semiconductors, 

składający się z 2 przewodów (linii sygnałowej i masy).

1-Wire® net

– system komunikacyjny w którym pojedyncze układ Master 

komunikuje się z jednym lub więcej układami Slave poprzez protokół 1-Wire.

Master inicjuje i steruje wszystkimi urządzeniami poprzez sieć 1-Wire

Transfer danych odbywa się w trybie półdupleks, bajtowo bit po bicie 

w kolejności od LSB do MSB.

Interfejsy cyfrowe

1-Wire

Cechy:

– poziomy logiczne: typowe CMOS/TTL

– maksymalna szybkość: 16,3kb/s

– maksymalna długość połączeń: do kilkudziesięciu m

– rezystor podciągający do V+

– synchronizacja odbywa się przez zbocze opadające i poprzez 

określenie odcinków czasowych o różnych długościach (tzw. 
time slots)

– istnieje możliwość zasilania układów Slave z układu Master

Sposób adresowania:

– każdy układ posiada niepowtarzalny 64-bitowy adres

– adres składa się z 8-bitowego pola określającego rodzinę 

układu, 48-bitowego numeru seryjnego oraz 8-bitowego pola 
CRC wyznaczonego z pierwszych siedmiu bajtów

background image

2016-05-15

11

Interfejsy cyfrowe

1-Wire

Przykład podłączenia czujnika temperatury DS18B20

Podstawowe przebiegi

Reset i potwierdzenie obecności

Interfejsy cyfrowe

1-Wire

Podstawowe przebiegi  cd.

Zapis 1. bitu

Odczyt 1. bitu

background image

2016-05-15

12

Interfejsy cyfrowe

CAN

CAN − (ang. controller area network), protokół transmisji szeregowej
przy użyciu dwóch linii w warunkach silnych zakłóceń; zaprojektowany
specjalnie do zastosowania mikrokontrolerów w samochodach.

Cechy: 

•  asynchroniczną szyną transmisji szeregowej z tylko jedną linią transmisyjną 

•  ma  strukturę  otwartą,  to  znaczy  może  być  rozszerzana  o  nowe  węzły 

(odbiorniki/nadajniki) oraz liniową, czyli nie zawiera pętli 

•  liczba węzłów w trakcie pracy szyny może się zmieniać bez wpływu na działanie szyny 

•  poszczególne węzły są przyłączone do szyny na zasadzie funkcji „zwarty iloczyn” 

•  maksymalna  szybkość  transmisji  szyną  CAN  wynosi  1  Mbps  przy  długości  linii  nie 

przekraczającej 40 m 

•  dane przesyłane są transmitowane metodą NRZ 

•  specyfikacja  standardu  CAN  w  wersjach  1.0,  1.2  i  2.0A  przewiduje  11-bitowe 

identyfikatory, czyli umożliwia współpracę 2048 węzłów 

Interfejsy cyfrowe

CAN

S

z

y

b

k

o

ś

ć

 t

ra

n

s

m

is

ji

 [

k

b

it

/s

]

1000

100

10

5

40

100

1000

10000

Długość szyny CAN [m]

Szybkość
transmisji

background image

2016-05-15

13

Interfejsy cyfrowe

CAN

Typowa struktura uczestnika sieci CAN

Interfejs
fizyczny

Protokół

kontrolera

Pamięć

komunikatów

Kontroler CAN

M

a

g

is

tr

a

la

 C

A

N

Mikro-

kontroler

Interfejsy cyfrowe

CAN

Stany logiczne magistrali CAN

zgodnie ISO 11898

Recesywny 

(

)

Recesive

Napięcie

na magistrali

CANH

CANL

Dopuszczalne
napięcie
różnicowe

2.5 V

3.5 V

2.5 V

1.5 V

0 - 0.5 V

0.9 - 2.0 V

Stan magistrali

Dominujący

(

)

Dominant

N

a

p

c

ie

 [

V

]

3.5

2.5

1.5

Recesywny (

)

Recesive

Dominujący (

)

Dominant