Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1
System mikroprocesorowy? (1) Magistrala adresowa Magistrala danych Pamięć programu Magistrala adresowa Magistrala danych Pamięć danych 2
System mikroprocesorowy? (2) ROM Magistrala adresowa Pamięć programu Magistrala danych Sygnały sterujące CS, OE FLASH, SRAM, DRAM RAM Pamięć danych Mikroprocesor CS, OE WR FLASH, SRAM, DRAM Urządzenia peryferyjne EIA RS232, RTC, ADC... 3
Schemat elektryczny 4
Schemat elektryczny (1) Szyny zasilające Symbole masy 5
Schemat elektryczny (2) Połączenia na schematach połączenie elektryczne brak połączenia 6
Przykładowy schemat elektryczny jak tego nie należy robić 7
Poprawny schemat elektryczny 8
Schemat blokowy Elektroniczny schemat blokowy przedstawienia schematyczną, uproszczoną budowę urządzenia lub układów elektronicznego. Urządzenie dzieli się na tzw. bloki - części odpowiadające wydzielonym fragmentom układu: blok zasilania, bloki przetwarzania, bloki sterujące itp. Podstawową różnicą między schematem blokowym, a schematem elektrycznym jest to, że bloki rysowane są zazwyczaj na schemacie jako ogólne struktury odpowiadające i przyporządkowane kształtem całym układom, a nie pojedynczym strukturom elektronicznym (jak rezystor czy cewki). Pojedynczy blok może zostać przedstawiony schematem elektrycznym. 9
Współpraca procesora z urządzeniami peryferyjnymi. 10
Interfejsy (1) Interfejs (ang. Interface) w informatyce i elektronice urządzenie pozwalające na połączenie ze sobą dwóch innych urządzeń. 11
Interfejsy (2) 12
Interfejsy (3) Przykładowe interfejsy stosowane w systemach up: Interfejs równoległy, Interfejsy szeregowe: Interfejs zgodny ze standardem EIA RS232, Interfejs SPI (Serial Peripheral Interface), Interfejs I2C, Interfejs OneWire, Interfejs Jtag, Interfejs CAN (Controlled Area Network), Interfejs USB (Universal Serial Bus), Interfejs IEEE1394 (FireWire). Magistrala ISA, PCI, PCIx, PCIe, VME, itd. 13
Interfejsy procesora ColdFire 14
Moduł portów I/O (1) 15
Moduł portów I/O (2) Zewnętrzne magistrale danych i adresowe 16
Moduł portów I/O (3) Wyprowadzenie skonfigurowane jako DebugDATA oraz Status bits po restarcie procesora 17
Rejestry sterujące PnPAR - rejestr kontrolujący przeznaczenie portu DDRn - Rejestr kontrolujący kierunek sygnałów portu I/O PORTn - rejestr kontrolujący stan wyprowadzeń wyjściowych PORTnP - rejestr odwzorowujący stan wyprowadzenia I/O SETn/CLRn - Rejestr służący do ustawiania/zerowania przerzutnika wyjściowego 18
Uproszczony schemat blokowy portu I/O procesora ColdFire Bit określający rodzaj portu wejście/wyjście Port I/O PORTn odczyt PORTn zapis D SETn Q D Q DDRn CLRn Clk Clk Clk Rejestry sterujące portem GPIO PORTnP odczyt stanu logicznego wyprowadzenia I/O 19
Przykładowe rejestry sterujące modułu I/O 20
Port przerwań zewnętrznych (EPORT) 21
Tablica wektorów przerwań 22
Zakresy napięć wejściowych 23
Interfejs równoległy komputera PC 24
Struktura portów I/O procesora z rodziny 80'51 25
Podłączenie przełącznika do portu procesora Konfiguracja procesora i odczyt sygnału wejściowego: 1. Konfiguracja portu I/O (ustawienie kierunku portu I/O port wejściowy, ustawienie funkcji portu - I/O), 2. Włączenie wewnętrznego rezystora podciągającego (do VCC lub GND), 3. Odczyt rejestru sterującego danym portem (np. 8 bit, move.b P0, D0), 4. Maskowanie odczytanej danej (and.b #$0x01, D0). 26
Interfejs sterujący przekaźnikiem 27
Sterowanie diodą LED I = U/R I = (5 V 2 V)/220 = 13 ma R = U/I R = (5 V 2 V)/0.01 ma = 300 R Konfiguracja procesora i sterowanie diodą LED (odczyt-modyfikacja-zapis): 1. Konfiguracja portu I/O (ustawienie kierunku portu I/O port wyjściowy, ustawienie funkcji portu - I/O), 2. Odczyt rejestru sterującego danym portem (np. 8 bit, move.b P0, D0) 3. Ustawienie bitu (and.b #$0x01, D0 lub or.b #$0x01, D0). 4. Zapisanie rejestru sterującego portem I/O (move.b D0, P0) 28
Wykorzystanie tranzystora do sterowania diodą LED +5 V +5 V pull-up Tranzystor bipolarny n-p-n Tranzystor w układzie Darlingtona Tranzystor NMOS 29
Wykorzystanie negatora do sterowania diodą LED UWAGA: Wyjście typu otwarty kolektor 30
Zwiększenie wydajności prądowej portów procesora 31
Dodatkowe porty równoległe procesora Microcontroller En Addr Latch A8 A7 A6 A5 A4 A3 A2 A1 A8 A7 A6 A5 A4 A3 A2 A1 Address=0 OE LE A8 A7 A6 A5 A4 A3 A2 A1 OE LE A8 A7 A6 A5 A4 A3 A2 A1 Latch Address=1 32
Wyświetlacz 7-segmentowy 33
34
Wyświetlacz alfanumeryczny LCD 35
36
37
Instrukcje sterownika HD44780 38
Tablica znaków 39
Cykl zapisu danych do LCD 40
Cykl odczytu danych z LCD 41
Transmisja danych 4 <-> 8 bit 42
Dołączenie wyświetlacza to mikroprocesora (1) 43
Dołączenie wyświetlacza to mikroprocesora (2) 44
Graficzna reprezentacja tranzystorów MOS 45
Wzmacniacz operacyjny Wzmacniacz odwracający Wzmacniacz nieodwracający 46
Sygnały cyfrowe Rodziny układów logicznych: sygnały niesymetryczne (TTL: 5 V, CMOS: 1,5 V-18 V), sygnały symetryczne (ECL, LVDS, EIA 422/485). Stany logiczne: 1 jedynka logiczna (napięcie zależne od technologii TTL=5 V) 0 zero logiczne (napięcie zależne od technologii TTL=0 V) Z stan wysokiej impedancji (napięcie TTL 0..5 V) +5 U1A 1 R1 330 U2B 2 3 R2 330 SN7406N 4 SN7406N GND 47
Stan wysokiej impedancji Klasyczny negator CMOS Bufor CMOS z wyjściem wysokiej impedancji 48
Napięcia progowe TTL oraz CMOS Zakresy napięć progowych standardu TTL 5V Zakresy napięć progowych standardu CMOS 5V 49
Problem współpracy układów TTL i CMOS 50
Schemat blokowy modułu COBRA 51
Moduł COBRA wraz z analizatorem BDM 52
Schemat elektryczny modułu COBRA 53
Układ zerowania procesora Układ Power On Reset (POR) 54
Przykładowe układy POR 55
Generator z rezonatorem kwarcowym Podłączenie rezonatora kwarcowego Zasilanie układów generujących sygnały zegarowe 56