tech mikro wyklad 2007 SPI


Interfejs SPI -
RS-232, I2C oraz SPI
Serial Peripheral Interface
" Opracowany w firmie Motorola - tani i prosty
interfejs pomiędzy mikrokontrolerami i
układami peryferyjnymi
" Szybkość przesyłu - do megabitów na
sekundę
" Pamięci, przetworniki AC i CA, zegary
czasu rzeczywistego, wyświetlacze LCD,
czujniki, inne mikroprocesory
Interfejs SPI
Zasady
" dwukierunkowa (full-duplex), synchroniczna,
" Transmisja synchroniczna, odniesiona do
szeregowa transmisja danych pomiędzy uP,
a zewnętrznymi układami peryferyjnymi: wspólnego sygnału zegarowego,
generowanego przez układ master
" przetwornikami A/C i C/A, szeregowymi pamięciami
EEPROM, innymi uP, układami scalonymi z
" Jeden master, wiele układów slave
regulowanymi cyfrowo potencjometrami, dekadami
" Master wybiera jeden z układów slave
pojemnościowymi,
poprzez dodatkowe wejście układu slave
" interfejs cztero\yłowy:
" Układy nie wybrane nie biorą udziału w
 dwie linii synchronicznie przesyłających dane w
przeciwnych kierunkach
komunikacji.
 linia z sygnałem zegarowym synchronizującym ten
transfer.
 linia wyboru aktywnego układu slave
Linie magistrali SPI
Zasada działania SPI
Master i slave zawierają połączone
pierścieniowo rejestry przesuwne.
Master rozpoczyna transmisję poprzez wpis
do swojego rejestru przesuwnego
1
Przykład połączenia interfejsu SPI
SPI single master
pomiędzy układem master i slave
" Układ master wybiera poszczególny
układ slave korzystając z czterech linii
portu równoległego.
" Dane urządzenie slave jest wybrane,
gdy na jego wejściu SS pojawi się stan
niski.
" W czasie transmisji, w celu uniknięcia
kolizji na liniach interfejsu, tylko jeden
układ slave mo\e być aktywny.
" W trakcie pracy jednocześnie odbywa się
SPI single master
transmisja w obie strony - efektywny
sposób komunikacji
" Zawartość rejestrów jest wymieniana.
" Je\eli tylko zapis - master ignoruje
odczytywane bity
" Je\eli tylko odczyt - master wysyła
dowolne, nieistotne dane do slave by
prowadzić transmisję
" Wiele układów (na przykład pamięci)
mogą prowadzić ciągłą komunikację
Tryby pracy interfejsu SPI
" Interfejs SPI ma 4 tryby, określone przez
polaryzację (CPOL) i fazę (CPHA) sygnału
" Inne układy wymagają transferu
zegarowego.
pojedynczych bajtów i umo\liwiają
" Konieczna jest zgodna polaryzacja i faza
połączenie łańcuchowe daisy-chain
sygnału zegarowego.
" Nie wszystkie układy - szczegóły w
" Częstotliwość sygnału zegarowego nie jest
dokumentacji
istotna, poniewa\ dane są synchronizowane
tym sygnałem i są aktywowane (wpisywane
lub wyprowadzane z rejestru szeregowego)
wyłącznie przez zbocza tego sygnału.
" Prędkość transmisji mo\na zmienić nawet w
trakcie przesyłania danych.
2
" MISO jest wejściem danych,MOSI wyjściem danych,
" SCK wyjściem zegara dla układu master i wejściem
zegara dla układu slave.
" Dwa rejestrów przesuwnych połączonych w licznik
pierścieniowy
" Transmisja jest synchroniczna - jeden z układów
dostarcza sygnału zegara, odseparowanego od
sygnału danych, zgodnie ze zboczami zegara
taktującego.
" Układ generujący sygnał zegara jest określony jako
nadrzędny (master).
" Wszystkie pozostałe układy na magistrali są określone
jako podrzędne (slave).
" Sygnał zegara nie jest ciągły, nadawany jest jedynie w
czasie trwania transmisji. - brak bitów startu i stopu
" Kiedy układ nadrzędny nadaje dane na linii MOSI do
uP master  układ peryferyjny slave
układu podrzędnego, to układ podrzędny odpowiada,
wysyłając do układu nadrzędnego dane na linii MISO.
" konfiguracja interfejsu SPI uP: tryb master, (SCK -
" Dwukierunkowa transmisja z jednoczesnym wysyłaniem wyjście), częstotliwość sygnału zegarowego,
i odbieraniem danych. Bajt transmitowany jest od razu
" urządzenie peryferyjne musi być uaktywnione
zastępowany bajtem odbieranym.
(przygotowane na odbiór danych)  dodatkowa
linia mikroprocesora podłączona do wejścia CS
" Do wysłania bajtu i jego odebrania wystarczy osiem
(Chip Select ) urządzenia peryferyjnego,
impulsów zegarowych na linii SCK.
" start transmisji - ustawienie odpowiedniego bitu w
" Dane są wpisywane (odbierane) do rejestru
rejestrze sterującym SPI lub wpis danej do
szeregowego jednym zboczem zegarowym, a
rejestru przesuwnego,
przesuwane (wyprowadzane na zewnątrz  nadawane)
" koniec transmisji - test flagi lub przerwanie od
drugim.
SPI,
" z rejestru przesuwnego mo\na odczytać daną
odebraną.
uP slave  układ peryferyjny master
" konfiguracja interfejsu SPI uP: tryb slave, (SCK wejście)
" wpis danej, którą chcemy wysłać, do rejestru
przesuwnego,
ADuC 831
" ustawia się odpowiedni bit w rejestrze sterującym SPI
uruchamiającym interfejs,
" urządzenie peryferyjne musi być aktywne i pracować w
trybie master,
" po czym czeka się na zakończenie transmisji, które
wywołuje przerwanie,
" z rejestru przesuwnego mo\na odczytać daną odebraną.
" Wiele układów SPI posiada dodatkowy sygnał wejściowy
Stosowany jako SPI lub I2C
(pin SS), - wymuszenie trybu slave interfejsu SPI uP
przez urządzenie peryferyjne.
Konfiguracja jako Master lub Slave
3
" mikrokontrolery,
Rejestr konfiguracyjny SPICON (adr. bitowo)
" przetworniki A/C (np. AD7866  12-bitowy, LTC2400  24-
bitowy),
" przetworniki C/A (np. AD7394  12-bitowy, LTC1650  16-
bitowy),
" cyfrowe potencjometry (np. AD5260  256 pozycji, 20k, 59k,
200k)
" multipleksery analogowe (np. ADG708  multiplekser 8:1)
" czujniki temperatury (np. ADT7320  10-bitowy),
" sterowniki interfejsów UART, CAN, itd. (np. MAX3100  SPI
na UART, MCP2510 SPIna CAN 2.0B),
" zegary czasu rzeczywistego (np. MAX6902),
" generatory sygnałów (np. DS1050  5-bitowy generator
sygnału PWM o częstotliwości1kHz),
" pamięci EEPROM (np. 25LC16  16Kbits (x8)),
" pamięci FLASH (np. AT45D081  1Mbits),
" sterowniki LCD (np. STE2001  wymiar ekranu 65x128),
Rejestr z danymi SPIDAT (adr. bajtowo)
" sterowniki LED (np. MAX6950  5 cyfr)
Dodatkowe wyjścia cyfrowe - 74HC595
Dodatkowe wyjścia cyfrowe - 74HC595
" Rejestr przesuwny: wejście i wyjście
szeregowe, wyjście równoległe
" Podwójne buforowanie - wpisywane dane
nie zamazują dotychczasowego wyjścia
" Jeden bit z procesora wyzwala wpis
nowych wartości, inny bit ustawia w stan
wysokiej impedancji
4
Dodatkowe wejścia cyfrowe - 74HC165
Dodatkowe wejścia cyfrowe - 74HC165
" Asynchroniczne, 8 bitowe wejście cyfrowe
" Synchroniczne wejście szeregowe
" Komplementarne wyjście szeregowe
" Bramkowany sygnał zegarowy ~CE
" Szybkość sygnału zegarowgo - do 44 MHz
Więcej wejść i wyjść
Szeregowe pamięci EEPROM
Szeregowe pamięci EEPROM/FLASH
WE#
SST (Silicon Storage Technology)
Host
Parallel Flash OE#
Host
Interface An-A0
Flash
Flash
(ASIC,
(ASIC,
(28+ Basic Signals)
Memory
Memory
CE#
DSP or
DSP or
MCU)
MCU)
DQn-DQ0
" Niski pobór mocy: prąd podczas zapisu maksymalnie 3mA, prąd
podczas odczytu typowo 0.5mA, prąd spoczynkowy typowo 500nA.
" Organizacja pamięci: 1024x8 bity, 16 bajtowa strona. SCK
" Czas cyklu zapisu maksymalnie 5ms.
Host
Host
Serial Flash CS#
" Wewnętrzne automatyczne cykle kasowania i zapisu.
Flash
Interface
Flash
(ASIC,
(ASIC,
SI Memory
" Ochrona zapisu bloku: ochrona \adnej,1/4,1/2 lub całej tablicy. (4 Basic Signals) Memory
DSP or
DSP or
MCU)
" Dostępne wykonania od 1kb (25xx010) do 1 Mb (25xx1024) MCU)
SO
5
Schemat blokowy
Wejście i wyjście szeregowe
Przebieg rozkazu READ
Przebieg rozkazu WRITE
Przebieg rozkazu PAGE WRITE
6
Szeregowe pamięci FLASH Układ zegara/kalendarza
Maxim DS1305
" Szybkość komunikacji do 66 MHz
" Szybkość działania: zapis bloku 4 kB
" Generator kwarcowy - zliczanie czasu
od milisekund do lat
w czasie poni\ej 100 ms
" Dodatkowe funkcje - alarmy (poprzez
" Aatwe mo\liwości rozbudowy systemu
przerwania)
- taki sam rozkład nó\ek
" Mo\na wykorzystać do wyzwalania
od 512 kb do 8Mb określonych reakcji lub jako watchdog
" Automatycznie rozpoznaje długość
miesięcy i lata przestępne
Maxim DS1305
3 wejścia zasilania:
" VCC1 - podłączone do zasilania systemu
" VCC2 - do podłączenia akumulatorka
" VBAT - do baterii
Aktywne 1 !!!
Przetwornik analogowo-cyfrowy AD7866
Odczyt AD7866
7
Cyfrowe potencjometry sterowane
Przetwornik cyfrowo - analogowy-DAC8043
interfejsem SPI
Sterownik LED - MAX6966
" 10 bitów wejściowych/wyjściowych
" Do 26 MHz
" Sterowanie prądu PWM dla ka\dej diody
" Wyjścia: do 7V, do 20 mA
Sterownik LCD 80*128 PCF8811
Sterownik LED - MAX6966
" Interfejsy: równoległy, I2C, SPI
Programowanie:
" Zintegrowane kompletny układ zasilania
16 wewnętrznych rejestrów typu R/W:
" Zintegrowana kompensacja temperatury
 wysterowanie PWM portów P0 - P9
 wspólny zapis PWM wszystkich portów
 czas rozjaśniania i gaszenia LED
 odczyt stanu wejść P0 - P9
8


Wyszukiwarka

Podobne podstrony:
tech mikro wyklad
tech mikro wyklad
tech mikro wyklad
Wyklad 07 (1)
Wyklad 07
tech int 3 wyklad 5
psychiatria wyklady 07
mikro wykład VIII
wyklad 2 07 mechanika nieba
Wyklad 07)
2010 11 07 WIL Wyklad 07
Wykład 4 (07 05 2011) ESI
Informatyka Wykład 07 B Teoria języków i automatów
wykład 07
wyklad 07 zaburzenia afektywne 1
Wyklad 07 Podstawy Genetyki AI

więcej podobnych podstron