W13: Obsługa zewnętrznych układów peryferyjnych cz. 2
Transkrypt
W13: Obsługa zewnętrznych układów peryferyjnych cz. 2
Zewnętrzne układy peryferyjne cz. 2 Wykład 13 Techniki mikroprocesorowe EEPROM I2C Standardowa pamięć EEPROM I2C 2 Techniki mikroprocesorowe Pamięć EEPROM I2C • Pamięci EEPROM I2C są popularną rodziną prosty układów z pamięcią nieulotną EEPROM, kasowaną elektrycznie, z magistralą I2C • Układy te różnią się rozmiarem pamięci i obudową, lecz w większości przypadków są wzajemnie zamienne z punktu widzenia podłączenia i obsługi 3 Techniki mikroprocesorowe Pamięć EEPROM I2C • Pamięci EEPROM I2C, jak większość układów I2C, posiadają piny pozwalające na konfigurację adresu w liczbie, ich liczba waha się od 3 do 0 – w przypadku pamięci o większej pojemności część lub wszystkie konfigurowalne bity adresowe pełnią rolę prefiksu adresu (bity wyboru strony) i nie mogą być użyte do rozróżniania układów I2C 4 Techniki mikroprocesorowe Pamięci EEPROM I2C • Przykładem takich pamięci są układy AT24CXX: – AT24C01: 1K (128 x 8bit) – AT24C02: 2K (256 x 8bit) – AT24C04: 4K (512 x 8bit) – AT24C08: 8K (1024 x 8bit) – AT24C16: 16K (2048 x 8bit) 5 Techniki mikroprocesorowe Pamięci EEPROM I2C - podłączenie Pin Funkcja 1 Wejścia konfiguracyjne adresu I2C 2 3 4 Masa zasilania 5 Magistrala I2C 6 7 Blokada zapisu 8 Zasilanie 6 Techniki mikroprocesorowe Organizacja pamięci • AT24C01 – 16 stron po 8 bajtów każda, wymagany adres 7-bitowy • AT24C02 – 32 stron po 8 bajtów każda, wymagany adres 8-bitowy • AT24C04 – 32 stron po 16 bajtów każda, wymagany adres 9-bitowy • AT24C08 – 64 stron po 16 bajtów każda, wymagany adres 10-bitowy • AT24C16 – 128 stron po 16 bajtów każda, wymagany adres 11-bitowy 7 Techniki mikroprocesorowe Pamięci EEPROM I2C – adresy I2C • 1K/2K – Odczyt: 1010 A2A1A01 – Zapis: 1010 A2A1A00 • 4K – Odczyt: 1010 A2A1P01 – Zapis: 1010 A2A1P00 • 8K – Odczyt: 1010 A2P1P01 – Zapis: 1010 A2P1P00 • 16K – Odczyt: 1010 P2P1P01 – Zapis: 1010 P2P1P00 8 Techniki mikroprocesorowe Pamięci EEPROM I2C – adresy I2C • Wyjaśnienia – Ax=0, jeśli pin Ax jest podłączony do masy – Ax=1, jeśli pin Ax jest podłączony do Vcc – Px – bit wyboru strony - najstarsze bity (prefix) adresu 9 Techniki mikroprocesorowe Termometr DS18B20 Termometr DS18B20 10 Techniki mikroprocesorowe DS18B20 – informacje ogólne • Układ DS18B20 jest prostym termometrem temperatur od -55°C do +125°C z dokładnością ±0.5°C • Do komunikacji wykorzystuje magistralę 1-Wire • Czas pomiaru wynosi 750ms, wynik z konfigurowaną przez użytkownika precyzją od 9 do 12 bitów • Układ posiada wbudowany alarm przekroczenia zdefiniowanego zakresu temperatur 11 Techniki mikroprocesorowe DS18B20 - podłączenie 12 Techniki mikroprocesorowe DS18B20 - podłączenie 13 Techniki mikroprocesorowe DS18B20 – rejestry Bajt Opis 0 Temperatura (LSB) 1 Temperatura (MSB) 2 Rejestr TH (przechowywany w EEPROM) 3 Rejestr TL (przechowywany w EEPROM) 4 Rejestr konfiguracyjny (przechowywany w EEPROM) 5 Zarezerwowany 6 Zarezerwowany 7 Zarezerwowany 8 CRC 14 Techniki mikroprocesorowe DS18B20 – rejestr konfiguracyjny Bit Opis 0 0 1 R0 2 R1 3-7 11111 R0 R1 Rozdzielczość Maksymalny czas konwersji 0 0 9 bit 93.75ms 0 1 10 bit 187.5ms 1 0 11 bit 375ms 1 1 12 bit 750ms 15 Techniki mikroprocesorowe DS18B20 – komendy ROM • Oprócz standardowych komend ROM: SEARCH_ROM (0xf0), SKIP_ROM (0xcc), MATCH_ROM (0x55), READ_ROM (0x33), układ DS12B20 posiada dodatkową komendę ALARM_SEARCH (0xec), pozwalającą wyszukać układy zgłaszające alarm po przekroczeniu przez temperaturę ustalonego zakresu 16 Techniki mikroprocesorowe DS18B20 - funkcje • CONVERT_T (0x44) – wymuś konwersję temperatury • READ_SCRATCHPAD (0xbe) – odczytaj zawartość wszystkich (9) rejestrów roboczych • WRITE_SCRATCHPAD (0x4e) – zapisz zawartość roboczą rejestrów TH, TL i konfiguracyjnego • COPY_SCRATCHPAD (0x48) – skopiuj wartość roboczą rejestrów TH, TL i konfiguracyjnego do EEPROM • RECALL_E2 (0xb8) – załaduj zawartość EEPROM do rejestrów roboczych TH, TL i konfiguracyjnego • READ_POWER_SUPPLY (0xb4) – odczytaj status zasilania 17 Techniki mikroprocesorowe Podwójny mostek H L293D sterowanie silnikiem krokowym Podwójny mostek H L293D Sterowanie silnikiem krokowym 18 Techniki mikroprocesorowe L293D • Mostek H typu L293D jest podwójnym symetrycznym stopniem mocy, pozwalającym na – Podłączenie odbiornika do zasilania – Zmiany polaryzacji zasilania odbiornika – Odłączenie odbiornika od zasilania • Układ zawiera 2 identyczne mostki, które mogą być sterowane niezależnie od siebie 19 Techniki mikroprocesorowe L293D • Układ L293D wyposażony jest w zabezpieczenie termiczne, chroniące układ przed przegrzaniem • Wersja D może pracować z napięciami od 4.5V do 36V oraz prądem 600mA (prąd szczytowy 1.2A) • Wejścia sterujące są kompatybilne z TTL 20 Techniki mikroprocesorowe L293D - zastosowanie • Sterowanie silnikami DC • Sterowanie silnikami krokowymi bipolarnymi • Sterowanie obciążeniem oporowym (grzejnik, żarówka) • Sterowanie obciążeniem indukcyjnym (elektromagnesy, przekaźniki) 21 Techniki mikroprocesorowe L293D - budowa 22 Techniki mikroprocesorowe L293D – sterowanie silnikiem DC 23 Techniki mikroprocesorowe L293D – sterowanie silnikiem DC • Powyższy slajd prezentuje sposób podłączenie silnika DC małej mocy do mostka L293D – Silnik podłączony do stopni 1 i 2 ma możliwość zmiany kierunku obrotu – Silniki podłączone do stopni 3 i 4 mogą obracać się tylko w jednym kierunku – Wejścia 1,2EN (pin 1) i 3,4EN (pin 9) pozwala włączać i wyłączać silniki 24 Techniki mikroprocesorowe L293D i PWM • Wejścia 1,2EN i 3,4EN pozwalają wykorzystać przebieg PWM do sterowania mocą dostarczaną do odbiornika – W przypadku odbiorników takich jak diody czy żarówki częstotliwość PWM powinna wynosić powyżej kilkudziesięciu Hz, żeby zapobiec migotaniu – W przypadku odbiorników takich jak grzejniki, częstotliwość nie ma większego znaczenia – W przypadku silników DC minimalna częstotliwość powinna wynosić FPWM = LICZBA_OBROTÓW/(2*LICZBA_UZWOJEŃ) 25 Techniki mikroprocesorowe Silniki krokowe 26 Techniki mikroprocesorowe Silniki krokowe • Silnik elektryczny prądu stałego, w którym wirnik nie obraca się ruchem płynnym, lecz skokowym • Składa się ze uzwojonego stojanu i wirnika z magnesu • Liczba kroków wynosi od kilkudziesięciu do kilkuset • Mają bardzo duży moment obrotowy, mogą pracować z dowolnie małą prędkością • Mają stosunkowo niewielką maksymalną prędkość obrotu • Ich trwałość jest ograniczona trwałością łożysk 27 Techniki mikroprocesorowe Silniki krokowe - rodzaje • Budowa – Z magnesem stałym (PM) – Ze zmienna reluktancją (VR) – Hybrydowe (HB) – najpopularniejsze • Uzwojenia – Bipolarne – Unipolarne • Liczba faz – Dwufazowe – Trójfazowe 28 Techniki mikroprocesorowe Silniki krokowe – budowa 29 Techniki mikroprocesorowe Silnik krokowy – budowa 30 Techniki mikroprocesorowe Silnik krokowy – budowa 31 Techniki mikroprocesorowe Silnik krokowy – budowa 32 Techniki mikroprocesorowe Silniki krokowe – parametry • • • • Wielkość kroku (kąty)/liczba kroków na obrót Maksymalny prąd uzwojenia Moment obrotowy Maksymalna temperatura uzwojeń 33 Techniki mikroprocesorowe Silniki krokowe - sterowanie • Silnik unipolarny 34 Techniki mikroprocesorowe Silniki krokowe - sterowanie • Silnik bipolarny 35 Techniki mikroprocesorowe L293D – podłączenie silnika krokowego 36 Techniki mikroprocesorowe Silniki krokowe – tryby pracy • Sterowanie falowe – wirnik zatrzymuje się zawsze w pozycji stabilnej w stosunku do stojana • Sterowanie pełnokrokowe – silnik zatrzymuje się zawsze pomiędzy dwoma pozycjami stabilnymi w stosunku do stojana • Sterowanie półkrokowa – tryb łączący cechy obu powyższych 37 Techniki mikroprocesorowe Silniki krokowe – sterowanie falowe 38 Techniki mikroprocesorowe Silniki krokowe – sterowanie falowe • Sekwencja sterująca (sterownik L293D) dla silnika krokowego bipolarnego Wejście L293D Krok 1 Krok 2 Krok 3 Krok 4 Krok 5 1A 1 nc 0 nc 1 2A 0 nc 1 nc 3A nc 0 nc 1 nc 4A nc 1 nc 0 nc 1,2EN 1 0 1 0 1 3,4EN 0 1 0 1 0 39 Techniki mikroprocesorowe Silniki krokowe – sterowanie pełnokrokowe 40 Techniki mikroprocesorowe Silniki krokowe – sterowanie pełnokrokowe • Sekwencja sterująca (sterownik L293D) dla silnika krokowego bipolarnego Wejście L293D Krok 1 Krok 2 Krok 3 Krok 4 Krok 5 1A 1 0 0 1 1 2A 0 1 1 0 0 3A 0 0 1 1 0 4A 1 1 0 0 1 1,2EN 1 1 1 1 1 3,4EN 1 1 1 1 1 41 Techniki mikroprocesorowe Silniki krokowe – sterowanie półkrokowe 42 Techniki mikroprocesorowe Silniki krokowe – sterowanie półkrokowe 43 Techniki mikroprocesorowe Silniki krokowe – sterowanie półkrokowe Wejście L293D Krok 1 Krok 2 Krok 3 Krok 4 Krok 5 Krok 6 Krok 7 Krok 8 Krok 9 • Sekwencja sterująca (sterownik L293D) dla silnika krokowego bipolarnego 1A 1 1 nc 0 0 0 nc 1 1 2A 0 0 nc 1 1 1 nc 0 0 3A nc 0 0 0 nc 1 1 1 nc 4A nc 1 1 1 nc 0 0 0 nc 1,2EN 1 1 0 1 1 1 0 1 1 3,4EN 0 1 1 1 0 1 1 1 0 44 Techniki mikroprocesorowe Serwomechanizmy Serwomechanizmy 45 Techniki mikroprocesorowe Serwomechanizm • Serwomechanizm to silnik prądu stałego wyposażony w układ kontroli i sterowania położeniem • Kąt obrotu zwykle mieści się w przedziale 0180° • Do sterowania kątem obrotu wykorzystywany jest przebieg PWM 46 Techniki mikroprocesorowe Serwomechanizm 47 Techniki mikroprocesorowe Serwomechanizm – budowa 48 Techniki mikroprocesorowe Serwomechanizm – budowa 49 Techniki mikroprocesorowe Serwomechanizm – sterowanie • Jeden cykl przebiegu sterującego dla większości serwomechanizmów trwa 20ms • Impuls sterujący ma długość od 0.4 do 2.5ms • Nawet pomiędzy dwoma serwomechanizmami tego samego typu mogą występować istotne różnice w reakcji na przebieg o danym wypełnieniu 50 Techniki mikroprocesorowe Serwomechanizm - sterowanie 51 Techniki mikroprocesorowe Odbiornik podczerwieni Odbiornik podczerwieni TFMS5xx0 52 Techniki mikroprocesorowe TFMS5xx0 – informacje ogólne • Odbiorniki serii TFMS5xx0 są scalonymi odbiornikami sygnałów podczerwieni, wyposażonymi w filtr optyczny, wzmacniacz, układ kontroli wzmocnienia, demodulator i cyfrowe wyjście zgodne z TTL 53 Techniki mikroprocesorowe TFMS5xx0 - budowa 54 Techniki mikroprocesorowe TFMS5xx0 – częstotliwości robocze Oznaczenie Częstotliwość nośna TFMS 5300 30 kHz TFMS 5330 33 kHz TFMS 5360 36 kHz TFMS 5370 36.7 kHz TFMS 5380 38 kHz TFMS 5400 40 kHz TFMS 5560 56 kHz 55 Techniki mikroprocesorowe TFMS5xx0 • Podczas projektowania układu do transmisji danych w podczerwieni należy zwrócić szczególną uwagę na częstotliwość nośną oraz długość fali nadajnika - dla układu TFMS5xx0 powinna być z przedziału 900-1000 nm, optymalna to 950 nm 56 Techniki mikroprocesorowe TFMS5xx0 • Relacja responsywności (% bezbłędnych odbiorów) i odchylenia częstotliwości nośnej 57 Techniki mikroprocesorowe TFMS5xx0 • Stosunek zasięgu działania i kąta padania promienia 58 Techniki mikroprocesorowe TFMS5xx0 - zastosowanie • Odbiorniki rodziny TFMS5xx0 umożliwiają odbiór sygnału pilotów zdalnego sterowania sprzętu RTV, pracujących w oparciu o protokoły takie jak NEC, Sony SIRC, Philips RC5 i Philips RC6 59 Techniki mikroprocesorowe