4. Jak odczytywać i zapisywać dane
4. Jak odczytywać i zapisywać dane
H
1. Jaki cel pełni linia EA?
2. Czy zmiana stanu linii EA w trakcie wykonywania programu zmienia sposób pobierania przez mikrokontroler kodów instrukcji ?
3. Do czego służy pamięć programu, a do czego pamięć danych ?
4. llo bitowa jest magistrala adresowa adresująca pamięć programu wewnętrzną i zewnętrzną pamięć danych RAM ?
5. Z jaki elementów składają się instrukcje przesłań ? Jak podawane są argumenty ?
6. Co to jest asembler i do czego służy ?
7. YV jaki sposób można odczytać stałe , dane zapisane w pamięci programu mikrokontrolera ?
8) Jak obliczany jest adres pamięci programu w rozkazach:
MOVC A,@A+DPTR
MOVC A,@A+PC
7. W jaki sposób adresowane są komórki zewnętrznej pamięci danych RAM ?
8. ) Czy wykonanie podanych poniżej dwóch programów prowadzi do
odczytu tej samej komórki zewnętrznej pamięci danych RAM ?
a) MOV DPTR,#4A06h b) MOV Rl,#4Ah
MOVX A,@DPTR MOV P2,#6
MOVX A,@R1
Dlaczego przy odczycie danych z pamięci programu ROM w mnemoniko instrukcji znajduje się litera C, a przy dostępie do zewnętrznej pamięci danych RAM litera X ?
9. Na czym polega adresowanie bezpośrednie, natychmiastowe indeksowo-rejestrowo pośrednie i pośrednie ? Podaj przykłady instrukcji.
5. Działanie mikrokontrolera
33
Mikroprocesory są układami sekwencyjnymi, synchronicznymi, tzn. wszystkie operacje wykonywane przez układy procesora odbywają się w określonej kolejności i w ściśle ustalonych momentach czasowych. Dlatego muszą współpracować z generatorami impulsów zegarowych. Układy mikroprocesorowe korzystają najczęściej z generatorów zewnętrznych. Natomiast mikrokontrolery mają wewnętrzny generator, do którego dołącza się z zewnątrz albo tylko sam rezonator kwarcowy lub ceramiczny oraz dodatkowo dwa kondensatory, ułatwiające wzbudzenie się generatora na pożądanej częstotliwości, rysunek 5-1. W mikrokontrolerach rodziny '51 jeżeli jest stosowany rezonator kwarcowy, to pojemności mają wartości 22 39 pF, a przy rezonatorze ceramicznym - 30 + 51
pF.
II
C2
XT A L2
□
I
XI'ALI
Cl
Rys. 5-1 Podłączenie rezonatora kwarcowego lub ceramicznego do mikrokontrolera.
Dobierając częstotliwość generatora należy pamiętać, że musi się ona mieścić w zakresie określonym przez producenta. Przy częstotliwości za dużej lub za małej mikrokontroler przestanie poprawnie pracować. Stosowanie wyższych częstotliwości generatora przyspiesza wykonywanie przez mikrokontroler operacji, ale odbywa się to kosztem zwiększenia prądu zasilania, zwiększenia poziomu zakłóceń wytwarzanych przez procesor, a ponadto wymaga stosowania szybszych, a więc i droższych elementów współpracujących z mikrokontrolerem, np. pamięci zewnętrznych. Ponadto przy wyższych częstotliwościach generatora mikrokontroler, zwłaszcza pobierający rozkazy z pamięci zewnętrznej programu, jest bardziej podatny na zakłócenia zewnętrznych pól elektromagnetycznych. Dlatego częstotliwość generatora powinna być najniższa ale zapewniająca wykonanie zadania w założonym czasie.
W większości mikrokontrolerów praca generatora może być zatrzymana odpowiednim rozkazem, co powoduje zatrzymanie działania wszystkich elementów mikrokontrolera. Ma to na celu zredukowanie do minimum prądu zasilania, np. w momencie awarii sieci zasilającej.