Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

MCS51 - wykład 2. Wykład 2 2/17 Funkcjonowanie MCS51 Generator taktu Cykle maszynowe i rozkazowe Wbudowane porty równoległe Zerowanie układu.

Podobne prezentacje


Prezentacja na temat: "MCS51 - wykład 2. Wykład 2 2/17 Funkcjonowanie MCS51 Generator taktu Cykle maszynowe i rozkazowe Wbudowane porty równoległe Zerowanie układu."— Zapis prezentacji:

1 MCS51 - wykład 2

2 Wykład 2 2/17 Funkcjonowanie MCS51 Generator taktu Cykle maszynowe i rozkazowe Wbudowane porty równoległe Zerowanie układu

3 MCS51 - układ taktowania 3/17 Standardowy zakres częstotliwości: 1,2 - 12MHz. Mikrokontrolery - rozszerzenia MCS51 mogą być taktowane 0Hz - >> 12MHz XTAL2 XTAL1 GND rozwiązanie klasyczne zewnętrzny generator XTAL2 XTAL1 GND bufor TTL HMOS zewnętrzny generator XTAL2 XTAL1 GND bufor CMOS CHMOS wbudowany oscylator XTAL2 XTAL1 GND Φ 1 : 6MHz Φ 2 : 6MHz 12MHz 1 cykl maszynowy

4 wykonanie 2 rozkazów 1-bajtowych zużywających po 1 cyklu maszynowym, np. MOV DEC R2. zał. odczyt z zewnętrznej pamięci programu 1 cykl maszynowy = 1 cykl rozkazowy PC L PC H MPC+1 L PC+1 H NPC+1 L PC+1 H NPC+2 L PC+2 H OPC+2 L PC+2 H O 1 cykl maszynowy = 1 cykl rozkazowy Φ 1 Φ 2 PSEN ALE P0 P2 M, N, O - bajty kodów rozkazów: M=ROM[PC], N=ROM[PC+1], O=ROM[PC+2] MCS51 - cykle maszynowe 4/17

5 1 cykl maszynowy = 1 cykl rozkazowy PC L PC H MPC+1 L PC+1 H NPC+2 L PC+2 H OPC+3 L PC+3 H PPC+4 L PC+4 H Q wykonanie 2 rozkazów 2-bajtowych zużywających po 1 cyklu maszynowym, np. MOV R3,#5; ADD A,B. zał. odczyt z zewnętrznej pamięci programu 1 cykl maszynowy = 1 cykl rozkazowy Φ 1 Φ 2 PSEN ALE P0 P2 MN, OP, Q - bajty kodów rozkazów: M=ROM[PC], N=ROM[PC+1], O=ROM[PC+2], P=ROM[PC+3], Q=ROM[PC+4] MCS51 - cykle maszynowe 5/17

6 1 cykl maszynowy PC L PC H MPC+1 L PC+1 H NPC+1 L PC+1 H NPC+1 L PC+1 H NPC+1 L PC+1 H N wykonanie 1 rozkazu 1-bajtowego zużywającego 2 cykle maszynowe np. RET, INC DPTR. zał. odczyt z zewnętrznej pamięci programu 1 cykl maszynowy Φ 1 Φ 2 PSEN ALE P0 P2 M, N - bajty kodów rozkazów: M=ROM[PC], N=ROM[PC+1] MCS51 - cykle maszynowe 6/17 1 cykl rozkazowy

7 1 cykl maszynowy wykonanie 1 rozkazu 2-bajtowego zużywającego 2 cykle maszynowe, np. PUSH B, SJMP skok. zał. odczyt z zewnętrznej pamięci programu 1 cykl maszynowy Φ 1 Φ 2 PSEN ALE P0 P2 MN, O - bajty kodów rozkazów: M=ROM[PC], N=ROM[PC+1], O=ROM[PC+3] MCS51 - cykle maszynowe 7/17 1 cykl rozkazowy

8 1 cykl maszynowy wykonanie 1 rozkazu 3-bajtowego zużywającego 2 cykle maszynowe, np. LCALL 23AAh, MOV DPTR,#1. zał. odczyt z zewn. pamięci programu 1 cykl maszynowy Φ 1 Φ 2 PSEN ALE P0 P2 MNO, P - bajty kodów rozkazów: M=ROM[PC], N=ROM[PC+1], O=ROM[PC+2] P=ROM[PC+3] MCS51 - cykle maszynowe 8/17 1 cykl rozkazowy

9 wykonanie 1 rozkazu realizującego odczyt z zewnętrznej RAM, np. MOVX / MOVX M, N - bajty kodów rozkazów: M=ROM[PC], N=ROM[PC+1] MCS51 - cykle maszynowe 9/17 1 cykl maszynowy Φ 1 Φ 2 PSEN ALE RD P0 P2 1 cykl rozkazowy

10 wykonanie 1 rozkazu realizującego zapis do zewnętrznej RAM, np. / M, N - bajty kodów rozkazów: M=ROM[PC], N=ROM[PC+1] MCS51 - cykle maszynowe 10/17 1 cykl maszynowy Φ 1 Φ 2 PSEN ALE WR P0 P2 1 cykl rozkazowy

11 D Q C Q Vcc P0.X zewn. magistrala/rejestr wyj. adresów lub danych odczyt rejestru wewn. mag. danych wpis do rejestru odczyt pinu 1010 MCS51 - port P0 11/17 Struktura bitu portu P0 - dwukierunkowego

12 MCS51 - port P2 12/17 Struktura bitu portu P2 - quasi-dwukierunkowego D Q C Q Vcc P2.X zewn. magistrala/rejestr wyj. adresów odczyt rejestru wewn. mag. danych wpis do rejestru odczyt pinu 1010

13 MCS51 - port P1 13/17 Struktura bitu portu P1 - quasi-dwukierunkowego D Q C Q Vcc P1.X odczyt rejestru wewn. mag. danych wpis do rejestru odczyt pinu

14 MCS51 - port P3 14/17 Struktura bitu portu P3 - quasi-dwukierunkowego z funkcjami alternatywnymi wyj. funkcja alternatywna odczyt rejestru wewn. mag. danych wpis do rejestru odczyt pinu wej. funkcja alternatywna D Q C Q Vcc P3.X ! aby funkcja alternatywna danego bitu portu była aktywna, odpowiedni bit w rejestrze PX tego portu musi być ustawiony na 1

15 MCS51 - port P3 15/17 Alternatywne funkcje bitów portu P3: P3.0 - RxD - wejście portu szeregowego; P3.1 - TxD - wyjście portu szeregowego; P3.2 - INT0 - wejście przerwania zewnętrznego; P3.3 - INT1 - wejście przerwania zewnętrznego; P3.4 - T0 - zewnętrzne wejście timera 0; P3.5 - T1 - zewnętrzne wejście timera 1; P3.6 - WR - impuls zapisu do pamięci zewnętrznej; P3.7 - RD - impuls odczytu z pamięci zewnętrznej. W 80X52 także P1.0 i P1.1 mają funkcje alternatywne: P1.0 - T2 - zewnętrzne wejście timera 2; P1.1 - T2EX - wejście bramkujące timera 2.

16 MCS51 - porty Px 16/17 Struktura portów powoduje, że niektóre rozkazy są typu read- modify-write, tzn. czytają rejestr portu, modyfikują go w ALU i odsyłają z powrotem. Są to rozkazy: ANLPx,arg ORLPx,arg XRLPx,arg JBCPx.bit,adrrel DJNZPx,adrrel CPLPx.bit CLRPx.bit SETPx.bit MOVPx.bit,C INCPx DECPx Rozkazy czytające bezpośrednio końcówki portów: ANLarg,Px ORLarg,Px XRLarg,Px JBPx.bit,adrrel JNBPx.bit,adrrel CJNEA,Px,adrrel ADDA,Px ADDCA,Px SUBBA,Px MOVarg,Px XCHA,Px PUSHPx

17 MCS51 - zerowanie 17/17 Aby reset był skuteczny, należy utrzymać wysoki poziom napięcia na wejściu RESET przez minimum 24 okresy pracy oscylatora (co odpowiada 2 c.m.). Zawartość wewnętrznej RAM nie jest zmieniana w trakcie operacji zerowania. Rejestry SFR przyjmują wartości: PC = 0000hA = 00hTMOD = 00h DPTR = 0000hB = 00hTCON = 00h PSW = 00hP0 = 0FFhTH0 = 00h SP = 07hP1 = 0FFhTL0 = 00h PCON = 00hP2 = 0FFhTH1 = 00h SCON = 00hP3 = 0FFhTL1 = 00h SBUF = ??IP = 00hIE = 00h Vcc RESET GND Vcc RESET GND Vcc


Pobierz ppt "MCS51 - wykład 2. Wykład 2 2/17 Funkcjonowanie MCS51 Generator taktu Cykle maszynowe i rozkazowe Wbudowane porty równoległe Zerowanie układu."

Podobne prezentacje


Reklamy Google