SYSTEM μP :
[ hardware] [ software]
KOMPUTER = CPU + PAMIĘĆ + I/O
CPU ≈ μP ( CLOCK+ BUFFERS +μP)
ARCHITEKTURA HARVARD : program niezależny od pozostałych pamięci, szybki, program zapisany na stałe;
[ Pamięć z programem ] ⇔ [CPU] ⇔ [Pamięć + Urządzenia I/O]
szyny systemowe A,D,S magistrala ADS
Szyny : Adresowe; Danych; Sterująca;
ARCHITEKTURA Von Neumana : system elastyczny, o mniejszej liczbie sygn. Adresów, wolniejszy
[CPU]⇔[I/ODaneProgram]
ARCHITEKTURA 8051 :
[8051]⇐(AD)⇒{[ ROM ][ RAM I/O ]} + dwie szyny łączące (ROM) Program i (RAM) dane
nie można jednocześnie wykonywać operacji i pobierać danych; adres w pamięci jest stały i niezależny od danych w programie;
ALGORYTM DZIAŁANIA :
(start)→[IR rozkaz]→(Czy kompletny rozkaz {Nie→PC=PC+1→IR} [TAK→])→[WYKONANIE ROZKAZU]→[PC=PC+1]→[IR]
KOMPILACJA :
KONSOLIDACJA :
FORMATY :
binarny : [Programzera i jedynkiProgram] {to samo co w pamięci ale brak informacji kontrolnej}
Intel Hex : XX {liczba bajtów rekordów} XXXX {adres początku bloku danych} XX (typ rekordu 00 -dane 01 -koniec pliku) XX...X {kod maszynowy} XX{suma kontrolna} XX {powrót karetki} : 00 0000 01 FF - zamyka plik;
TYPY μP : CISK {dużo skomplikowanych instrukcji wykonywanych hardverowo}
RISK { mało instrukcji, proste i b.szybko wykonywane }
Architektura CISK :
8051 Pamięć : (00h ... 1Fh)(20h...7Fh)={00b...7Fb};
SFR - rejestry specjalne :
bitowe 80h-P0; 88h-TCON; 90h-P1; 98h-SCON; A0h - P2; A8h - IE; B0h - P3; B8h - IP; C8h - T2CON; D0h - PSW; E0h-ACC; F0h -8;
RODZAJE ADRESOWANIA :
Natychmiastowe : MOV ..., #01h mov A,#01h
Bezpośrednie rejestrowe : MOV ...,R1 mov A,R1
Bezpośrednie : MOV...,01h mov A,01h
Pośrednie : MOV...,@R0 mov A,@R0
PAMIĘĆ ZEWNĘTRZNA :
DPTR [ DPH 83h :DPL 82h ] ( MOV DPTR,#01FFh; INC DPTR; )
DANYCH : MOVX (A,@Ri,@DPTR),(A,@Ri,@DPTR)
PROGRAMU : MOVC A,@A+DPTR MOVC A,@A+PC
WSKAŹNIKI OV :
CY - po przekroczeniu 255←→0
OV - po przekroczeniu 127←→128
MECHANIZM STOSU :
LIFO - last in first out ; Do realizacji powrotów z procedur RET !
SP - wskaźnik stosu
PUSH (ad) = { inc SP; stos←ad }
POP (ad) = { ad←stos; dec SP }
PORTY RÓWNOLEGŁE :
Rys. wyjścia portu . str. 22
TRANSMISJA Z POTWIERDZENIEM :
[ μP (N) ] ⇒[ I/0 (0)] 1. Nadanie danych DAV =1;
2. Odbiór danych DAC=1;
3. DAV = 0
4. DAC = 0 { punkt wyjścia}
SYSTEM PRZERWAŃ : Program główny jest przerywany na chwilę i realizowana jest krótka procedura reagująca na zdarzenie {przerwanie, procedura obsługująca przerwanie} a następnie praca programu jest wznawiana.
RESET 0000h
INT0 0003h
Timer0 000Bh
INT1 0013h
Timer1 001Bh
Serial 0023h
Timer2 002Bh
IE(A8h) : [EA] [-] [ET] [ES] [ET1] [EX1] [ET0] [EX0]
0 - zamaskowany 1- odmaskowany
Tablica wektorów przerwań : wstępuje w PC (8051 na stałe przypisane), znajdują się w niej adresy początków procedur, które mają być wykonywane jako reakcja na przerwanie.
IP (B8) - rejestr priorytetów przerwań
[-][-][-][PT2][PS][PT1][PX1][PT0][PX0] 0 -priorytet niski 1 - priorytet wysoki
Zgłaszanie przerwań może odbywać się zboczem lub poziomem.
TIMERY :
[TH0(8Ch)TL0(8Ah)]
[TH1(8Dh)TL1(8Bh)]
TMOD [ ] [ ] [ ] [ ] [GATE] [C/T] [M1][M0]
T1 T0
CT : 0 - czasomierz
1 - licznik
Gate : 0 - nieaktywny
1 - bramkowanie
Mierzony czas w μs t= 2^16 - x x do 64536
BUDOWA PAMIĘCI :
Ferrytowa
Na elementach opóźniających
Rys. 28
Półprzewodnikowa :
ROM : -zaprogramowana u producenta, tania
PROM : do jednokrotnego programowania
EPROM : kasowalno-programowalna {z okienkiem}
OTP : niekasowalna, EPROM bez okienka więc tańszy
EEPROM : kasowalna wysokim napięciem 12~24 V
FLASH: kasowanie wybiórcze bez programatora,(poleceniem) dłuższy zapis w porównaniu z odczytem
RAM :
SRAM - pamięć na bistabilnym przerzutniku, statyczna ale droga i o małej gęstości ale energooszczędna.
DRAM - pamięć na pojemności, nietrwała duża gęstość; wymaga odświeżania.
Cykl maszynowy : rys. str 30.
ŁĄCZENIE KOŚCI PAMIĘCI :
Transmisja danych :
Synchroniczna :
Asynchroniczna :
Kod HDLC :
Dane rozdziela flaga otwierająca i zamykająca postaci 0 111 111 0; Jeśli w danych nadajnik znajdzie 5 jedynek z rzędu to wstawia zero, natomiast odbiornik jeśli po pięciu jedynkach napotka 0 to je usuwa natomiast jeśli jedynka to flaga.
[SDANE111111SDANE] S - do synchronizacji zegar odbiorcy z zegarem nadawcy.
RS 232 :
1-bit stopu05~8 bitów inform.opcjonalny bit kontroli parzystości1- bit stopu
pierwsze zero synchronizuje.
Prędkości transmisji : 300 ...9600... bodów
Piny: 5 .SG masa sygnałowa; 3 TxD transmisja wyj; 2 RxD transmisja wej; 4 DTR gotowość terminala wej. 6. DSR. gotowość modemu wyj. 7. RTS rządanie wysłania znaku wyj. 8. CTS gotowy do wysłania znaku. wej. 1. DCD wykrycie fali nośnej we 9. RI przywołanie komp we
Manchester II :
Za:
a)jedną parą przewodu przesyła się dane i impulsy synchronizacji
b) kodowanie fazowe = brak składowej stałej.
c) niewrażliwy na prędkość odtwarzania {np. rozciągnięcie taśmy)
d) bardzo proste kodowanie
Wady: 2x większe pasmo częstotliwości.
SCON 98h
[SH0][SH1] tryb pracy
[SH2] -znacznik maskowania odbioru transmisji
[REN] - 0 -ukł. jest głuchy 1 - odbiera
[TB8][R88] - sterowanie bitem parzystości
[TI] - wskaźnik nadania
[RI] - wskaźnik odbioru
BandRate =txtal * 2^SMOD/ 384*(256-X)
X- wart. początkowa timera pracującego w trybie drugim
Assembler :
efektywne wykorzystanie procesora
szybko działa
mała objętość w bajtach kodu
wady: powiązanie z typem procesora
ręczna alokacja pamięci
liniowa struktura programowania { trzeba dokładnie znać program, żeby
rozbudować go o nowe procedury}
Język C : oparty o wyższe założenia abstrakcji niż rejestry i komórki pamięci.
Pytania do Banana :
Suma kontrolna : sumuje się wszystkie bajty i obcina do dwóch i mnoży przez -1 ?
Wolałbym , żebyś choć trochę pozmieniał bo znów będziemy mieli to samo a rzeźnika to może nie przejść.
1