1.Podać podział przestrzeni adresowej dla pamięci danych i programu dla procesora rodziny 8051.
(Ram zew. w obrębie zewn. Przestrzeni adresowej)
Pierwsze 4k o adresach pokrywających się z pamięcią wewn. są nie używane !!!!
2.Podać sposób połączenia do pinu P1.0 uk 8051 diody LED oraz podać sposób sterowania programowo, aby możliwe było załączanie i wyłączanie świecenia tej diody
SETB P1.0 ->dioda nie świeci
CLR P1.0 -> dioda świeci
CPL P1.0 zmiana stanu portu
Program zapalania diody co 10ms
ORG 00BH
LCAL INT_TO
SETB ET0
SETB EAL
WART EQU 0FFFF+1-10000
MOV TMOD,#0001
MOV TL0,#LOW_WART
MOV THO,#HIGH_WART
SETB TR0
CLR P1.0
SJMP $
INT_TO:
CPL P1.0
MOV TL0,#LOW_WART
MOV THO,#HIGH_WART
RETI
3.Do uK podłączono rezonator 24MHz. W jaki sposób wykorzystać elementy kontrolera aby możliwe było przedziałów czasowych równych 30msek. Podać kolejność poleceń jakie należy umieścić w programie.
MOV TMOD, # 00000101; licznik To, tryb 16bit
MOV IE, #10000010; włączenie przerwań i przerwania od licznika T0
MOV TH0,# (trzeba wpisać 5536)
MOV TL0,# (trzeba wpisać 5536)
SETB TR0 uruchomienie licznika T0
Po 30msek od SETB TR0 zostanie wywołane przerwanie T0
4.Jednostka ALU wykonała rozkaz dodawania logicznego dwu liczb zapisanych w rejestrach A= 16, B= 255. jaki będzie wynik dodawania log. i gdzie się będzie on znajdował po wykonaniu rozkazu.
A= 00001111
B= 11111111
Po ORL (dodawanie logiczne)
A= 11111111
5. Połączono dwa uK 8051 łączem synchronicznym. Przepustowość zastosowanego kanału teleinformatycznego równa jest 56kb/sek. Jak należy ustawić parametry portu szeregowego dla tej komunikacji, aby uzyskać minimalny poziom błędu. Uzasadnić odpowiedź.
- synchroniczny jest tylko tryb 0
- częstotliwość pracy fxtal/12 (zawsze!!!)
- dopasować do kanału trzeba dobierając odpowiedni rezonator aby prędkość transmisji była ≤ 56 kb/sek
6.W uK 8051 ustawiono na ten sam poziom ważności. Wskaźnik stanu SP ustawiono na wartość 10d. Przyszło przerwanie od licznika T0 i zostało przyjęte a następnie przerwanie zewnętrzne INT0. W programie obsługi przerwania od licznika T0 użyto dwukrotnie rozkazu PUSH oraz dwukrotnie rozkazu POP. Jaka będzie wartość wskaźnika stanu SP przed rozkazem RETI w programie obsługi przerwania od licznika T0
SP=10
Przyjęcie od T0 SP=12
(zgłoszenie INT0=12)
Obsługa przerwania T0
PUSH SP=13
PUSH SP=14
…
POP SP=13
POP SP=12
RETI SP=10
ODP. SP=12 BO MIAŁO BYĆ PRZED RETI !!!
7 .w rejestrze R0 należy ustawić na jeden bity 0,3,7,a zanegować pozostałe. jakie czynności muszą być zapisane w programie ,aby można to było wykonać. Kolejność czynności można podać w postaci schematu blokowego lub opisać
MOV A,R0
CPL A
ORL A,#10001001
MOV R0,A
8. W rejestrze R7 należy wyzerować bity 0,1,2,3,a ustawić na jeden pozostałe. jakie czynności muszą być zapisane w programie, aby można to było wykonać. Kolejność czynności można podać w postaci schematu blokowego lub opisać
MOV A,R7
ANL A,#00000000B
ORL A,#11110000B
MOV R7,A
9. Licznik T0 pracuje w trybie 2 i zlicza impulsy wewnętrzne. Częstotliwość oscylatora uK równa jest 12MHz.Wylicz jaką wartość należy wpisać do licznika, aby licznik po uruchomieniu procesora wywoływał swoje przerwanie co 155us
MOV TLO, FFH+1-155D
MOV THO, FFH+1-155D
MOV TLO, #FFH+1-155D
MOV THO, #FFH+1-155D
12KHz 255+1-155-101us
10.Podać kolejno jakie czynności musi wykonać procesor(program),aby przesłać zawartość komórki pamięci zewnętrznej RAM znajdującej się pod adresem ADRESRAM do pamięci nakładkowej w uK8052 znajdującej się pod dresem ADRES
MOV DPTR,#ADRESRAM
MOVX A,@DPTR
MOV RO,@ADRES
MOV @RO,A
11. Podać kolejno jakie czynności musi wykonać procesor aby przesłać zawartośc rejestru R1 (R0) z danego aktywnego zbioru, do komórki pamięci zewnętrznej Ram znajdującej się pod adresem zapisanym w rejestrze DPTR
MOV A,R1
MOVX @DPTR,A
12. Podać kolejno jakie czynności musi wykonać procesor, aby przesłać zawartość rejestru z pamięci nakładkowej w uK 8052 znajdującej się pod dresem ADRES, do komórki pamięci zewn .RAM znajdującej się pod adresem zapisanym w rejestrze DPTR
@R0,@R1
MOV R0,#ADRES
MOV A,@R0
MOV @DPTR,A
13. W rejestrze R0 znajdują się dane, które należy przesłać do drugiego procesora wykorzystując transmisję asynchroniczną z bitem kontrolnym. Jakie czynności musi zawierać program. szybkośc transmisji jest ustalona przez licznikT1.
1)ustawienie licznika T1 (TR1,wartośc początkowa tryb2)
2)ustawienie trybu transmisji (3-ej)
3)wysłanie danych z R0 na SBUF
14. Port szeregowy, od czego zależy prędkość transmisji w porcie szeregowym i jak się ustawia
Zależy od medium transmisyjnego. Ustawia się przez odpowiednie rejestry(SCON).Ustawia się ją programowo w trzech trybach asynchronicznych.
15 .Co to jest RESET
RST-wejscie zerujace(aktywne poziomem wysokim)
16 .co to jest cykl maszynowy
podstawowa jednostka określająca czas wykonywania instrukcji
17 .Jaki jest rozmiar pamięci zewn. Jeśli pamięć wen.8k i od jakiego adresu się zaczyna i kończy zewnętrzna
Rozmiar pamięci zewnętrznej 64k-8k=56k
Adres początkowy - 256
Adres łączony -FFFF
18. 8k pamięci wewnętrznej(1024)jak się adresuje z zewnątrz
Adresuje się pośrednio przez rejestry R0,R1 lub DPTR
19 .W rejestrze IP ustawiono priorytet dostępu do przerwań: Na poziomie wyższym ustawiono przerwania od INT,INT1,ana poziomie niższym przerwania: od licznika T0,licznika T1 oraz od portu szeregowego. Zgłosiły się równocześnie przerwania od INT1 i od T0,a następnie przerwanie od INT0.Podać w jakiej kolejności będą obsługiwane przez procesor przerwania, na jakich warunkach zakładając, że zgłoszenia są aktywne.
1)INT1/ zostaje przerwane
2)INT0
3)Int1/wznowione po przerwaniu
4)T0
20. .Podać definicje rejestru adresowanego bitowo i bajtwo
bitowo-można zmieniać dowolny bit w rejestrze np.za pomocą komend SETB lub CLR, odwołuje się poprzez nazwę, bitu w rejestrze tylko gdy adres rejestru podzielny jest przez 8
bajtowo-aby zmienić jeden bit należy zmienić cały rejestr, najczęściej ustawia się go poprzez maski ANL i ORL. Adresy rejestrów nie są podzielne przez 8.
21. Do kontrolera 8051 podłączono PA/C 12bit. Zaproponować sposób podłączenia (dane i sygnały sterujące)
Program do obsługi AC, przetwarzanie co 5ms
ORG 00BH
LJMP INT_TO
SETB EAL
SETB ET0
WART EQU 0FFFF+1-2496
MOV TL0,#LOW_WART
MOV THO,#HIGH_WART
SETB TR0
INT_TO:
SETB P3.0
MOV R1,#10
P:
DJNZ R1,P
MOV A,P1
MOV R0,A
CLR P3.0
MOV TL0,#LOW_WART
MOV THO,#HIGH_WART
RETI
22. Co to jest mikrokontroler ?
Mikrokontroler - wyspecjalizowany mikroprocesor spełniający dwa kryteria :
-jest zdolny do automatycznej pracy tzn nie wymaga dołączania dodatkowych elementów zewnętrznych
- może pracować w systemach kontrolno -pomiarowych
23. Mikroprocesor
Element elektr. dużej lub bardzo dużej integracji przeznaczony do wykonywania operacji arytmetycznej i logicznej na informacji cyfrowej zwanej danymi dostarczanymi z otoczenia. Up składa się z:
-jednostki arytmetycznej-logicznej (ALU)
-układu sterującego (US)
24. Podać sposób podłączenia dwóch 8051 - transmisja synchroniczna
25. Komunikacja między dwoma uP -tryb asynchroniczny
26. Transmisja szeregowa 56kbit/s. Jaką transmisje wybierzesz i jak ją zabezpieczysz?
Transmisja tryb 3 - asynchroniczna 9-bitowa, programowalna prędkość.
Wybór w rej. SCOM
Znaczniki SM0 i SM1 = 1
TB8 - stan tego znacznika jest wysyłany jako 9 bit transmisji - daje nam to informację o przekłamaniach w odbieranych danych. Jest to bit parzystości