upII lab4


Zmienne i stałe w różnych obszarach pamięci
Laboratorium 3
ZMIENNE I STAAE  DOSTP DO PAMICI
Cel:
Celem ćwiczenia jest poznanie zasad organizacji dostępu do pamięci programu, danych RAM oraz EEPROM.
Uwagi :
1. Przy realizacji poniższych zadań, aby uchronić modele dydaktyczne przed uszkodzeniem należy bardzo uważnie
zapoznać się z poniższą instrukcją a następnie stosować do poleceń w niej zawartych .
2. Programowanie kontrolera odbywa się za pomocą interfejsu zgodnego z JTAG ICE, należy go zaznaczyć również
jako środowisko symulacyjne przy konfiguracji programu.
Konfiguracja modelu
1. Wszystkie czynności montażowe należy wykonywać zgodnie z instrukcją przy wyłączonym napięciu zasilania. Nie
należy stosować przemocy wobec kabli montażowych zarówno w czasie ich montażu jak i demontażu.
Podłączenia wykonuj przy wyłączonym zasilaczu.
2. Podłącz złącze programatora JTAG AVR do złącza JP21.
3. Programowanie pamięci EEPROM :
Podłącz wyprowadzenia portu PA tak aby wskazywać stan zawartości pamięci na linijce diodowej.
Wstęp
Pamięć Programu FLASH
Do przechowywania stałych np. tekstów dla wyświetlaczy LCD najlepiej nadaje się pamięć programu. Do
tworzenia tego typu danych przeznaczone jest wyra\enie: __attribute__ ((progmem)). Aby w pełni z niego
skorzystać nale\y włączyć do projektu plik nagłówkowy avr/pgmspace.h. Ten plik zawiera funkcje słu\ące
do czytania danych z pamięci programu. Są tam równie\ zdefiniowane następujące typy danych:
" 8 bitowy: prog_char
" 16 bitowy: prog_int
" 32 bitowy: prog_long
" 64 bitowy: prog_long_long
Ważne Funkcje z avr/pgmspace.h
Poni\sze funkcje (w rzeczywistości jest makroinstrukcje) ułatwiają prawidłowe tworzenie i odczytywanie
stałych z pamięci programu.
" pgm_read_byte( addr ) - jako argument pobiera adres pamięci programu a zwraca wartość znajdującą się
pod tym adresem.
" PSTR( s ) - tworzy łańcuch znaków w pamięci programu i zwraca adres do niego.
PWSZ  Techniki mikroprocesorowa II - ćwiczenia Strona 1 z 2
Zmienne i stałe w różnych obszarach pamięci
Pamięć EEPROM
W odró\nieniu do prostych definicji zmiennych w pamięci SRAM, u\ycie pamięci EEPROM, do której
dostęp odbywa się przez specjalne rejestry wymaga u\ycia specjalnych funkcji dla uzyskania dostępu do
niej. Deklaracje tych funkcji znajdują się w pliku nagłówkowym avr/eeprom.h.
Jednak nale\y uwa\ać by nie stosować zmiennych w EEPROM, do których często zapisywane będą dane -
np. zmienna sterująca pętli. Dzieje się tak dlatego, i\ nominalnie pamięć EEPROM ma ograniczona
mo\liwość przeprogramowywania. Producent gwarantuje tylko 100 tysięcy operacji zapisu. Aatwo więc w
tym przypadku o przekroczenie tej liczby w dość krótkim czasie.
Ważne Funkcje z avr/eeprom.h
eeprom_write_byte ( *adres, val) - zapisuje wartość val pod adres adres.
eeprom_read_byte ( *adres ) - czyta zawartość pamięci spod adresu adres.
eeprom_read_word ( *adres ) - czyta 16 bitową zawartość pamięci spod adresu adres.
eeprom_read_block ( *buf, *adres, n) - czyta n wartości od adresu adres i zapisuje do pamięci SRAM w
*buf.
eeprom_is_ready () - zwraca 1 jeśli pamięć jest wolna lub 0 jeśli na niej jest wykonywana jakaś operacja
(trwa zapis).
Zadania
1. Napisz program przepisujący komórkę pamięci EEPROM o adresie 0x0002.
2. Zaprogramuj wartość EEPROM za pomocą zewnętrznego programatora (bez przeprogramowywania pamięci
FLASH) sprawdz poprawność działania napisanego programu.
3. Napisz dwa programy efektów świetlnych umieszony w pamięci EEPROM, składające się a 10 sekwencji. Za
pomocą JTAG a dokonaj ich zmiany. Uwaga nie należy modyfikować programu i go ponownie kompilować, należy
jedynie zmienić adresy tablicy z efektami.
Zadania dodatkowe
Zadanie 1
Napisz program Timera 3 cyfrowego z funkcją Start i Stop, z wyświetlaczem LED. Tablicę konwersji kodu HEX na
wskaznik 7 segmentowy umieszczoną w pamięci programu.
Zadanie 2
Napisz procedurę generacji przebiegu piłokształtnego dla przetwornika 8 bitowego. Przebieg należy wytwarzać na
podstawie próbek zebranych w pamięci programu.
PWSZ  Techniki mikroprocesorowa II - ćwiczenia Strona 2 z 2
Obsługa przerwań
PWSZ  Techniki mikroprocesorowa ćwiczenia Strona 3 z 2
Obsługa przerwań
PWSZ  Techniki mikroprocesorowa ćwiczenia Strona 4 z 2


Wyszukiwarka

Podobne podstrony:
Lab4 1 R4 lab41
lab4 spr
HiPUA lab4
upII lab7
i2 lab4
Grabowska Lab4
lab4 csproj FileListAbsolute (3)
i9g1s1 wozniak lab4 sd
lab4 srodowisko B&R
upII lab2
lab4
upII lab8
AK lab4
Kopia lab4 26810
JPPO Lab4

więcej podobnych podstron