Społeczna Wyższa Szkoła Przedsiębiorczości i Zarządzania. Instrukcja ćwiczeń laboratoryjnych do przedmiotu Systemy Wbudowane

Wielkość: px
Rozpocząć pokaz od strony:

Download "Społeczna Wyższa Szkoła Przedsiębiorczości i Zarządzania. Instrukcja ćwiczeń laboratoryjnych do przedmiotu Systemy Wbudowane"

Transkrypt

1 Społeczna Wyższa Szkoła Przedsiębiorczości i Zarządzania Instrukcja ćwiczeń laboratoryjnych do przedmiotu Systemy Wbudowane Łódź, 2010

2 Zestaw laboratoryjny i podłączenie do komputera PC W skład zestawu laboratoryjnego wchodzą następujące elementy: 1. układ uruchomieniowy ZL3AVR, 2. zasilacz, 3. programator KamPROG, 4. przewód USB do połączenia programatora z komputerem PC, 5. taśma 10-przewodowa do połączenia programatora z układem uruchomieniowym, 6. dwie taśmy 16-przewodowe do wykonywania połączeń na płycie układu, 7. taśma 4-przewodowa do wykonywania połączeń na płycie układu, 8. trzy pojedyncze przewody do wykonywania połączeń na płycie układu, 9. Opis układu uruchomieniowego ZL3AVR (dostępny również w formie elektronicznej jako dokument zl3avr.pdf ). Zasady korzystania z zestawów i wykonywania połączeń Po pobraniu zestawu należy sprawdzić jego skład. Ewentualny brak wyposażenia należy zgłosić prowadzącemu zajęcia. Łączenie układu uruchomieniowego z programatorem i komputerem PC oraz połączenia złączy na samej płycie układu należy wykonywać przy wyłączonym zasilaniu. Podczas wykonywania połączeń na płycie układu uruchomieniowego zadbać o odprowadzenie ładunku elektrostatycznego gromadzącego się na ludzkim ciele do masy, można to osiągnąć dotykając ręką obudowy złączy audio na brzegu układu uruchomieniowego. Po zakończonych zajęciach spakować wszystkie elementy do pojemnika. Proszę pamiętać o zasilaczu! Rys.1 Połączenie elementów zestawu laboratoryjnego

3 Ćwiczenie 1. Celem ćwiczenia jest zapoznanie studentów ze sprzętowym i programistycznym środowiskiem uruchomieniowym mikrokontrolera ATmega32. Ćwiczenie wykonywane jest interaktywnie, polega na wykonywaniu instrukcji słownych prowadzącego zajęcia. W ramach ćwiczenia wprowadzane są następujące zagadnienia: - łączenie elementów zestawu uruchomieniowego z komputerem PC, - zachowanie środków ostrożności podczas łączenia elementów i załączania zasilania, - tworzenie nowego projektu w środowisku AVRstudio4, - edycja prostego programu, wymuszającego określone stany danego portu mikrokontrolera, - opis binarnego formatu stałych i znaczenia przypisywania wartości nazwom rejestrów, - proces kompilacji kodu źródłowego i budowania aplikacji, - symulacja pracy mikrokontrolera, - wywołanie obsługi programatora i ładowanie programu na pokład mikrokontrolera, - porównanie symulacji z rzeczywistym wykonaniem programu, - realizacja opóźnień przez wielokrotne wykonanie pustych pętli, - wpływ ustawień optymalizacji na proces kompilacji programu. Kod przykładowego programu utworzonego na zajęciach: #include <avr\io.h> int main() long i; DDRB=0xFF; //Konfiguracja końcówek portu B jako wyjścia while(1) //Nieskończona pętla PORTB=0b ; //Wysłanie wzoru sygnałów na wyjścia portu B for(i=0;i<100000;i++); //Pętla realizująca opóźnienie PORTB=0b ; for(i=0;i<100000;i++);

4 Ćwiczenie 2. Celem ćwiczenia jest nabycie umiejętności programowej obsługi prostych urządzeń wyjściowych na przykładzie wysterowania 4-cyfowego wyświetlacza siedmiosegmentowego. Czynności do wykonania: Przed podłączeniem zestawu do komputera PC wykonać następujące połączenia: - za pomocą taśmy 16-przewodowej połączyć port B mikrokontrolera (JP16) ze złączem Cyfra (JP24) wyświetlacza siedmiosegmentowego, końcówka PB0 powinna być połączona z końcówką a, - za pomocą pojedynczego przewodu połączyć końcówkę C1 złącza Kolumna z końcówką masy GND złącza I2C (JP26). Połączenie pozwoli na wysterowanie segmentów pojedynczego wyświetlacza siedmiosegmentowego (W4) z portu B. Napisać program wyświetlający pojedynczą cyfrę z zakresu 0-9. Do przypisania danej cyfrze odpowiedniego zestawu zapalonych segmentów wyświetlacza wykorzystać następującą tablicę, zdefiniowaną jako zmienna globalna: const char LED7SEG[]=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90; Wyświetlane cyfry są indeksami elementów tablicy wysyłanych na port B, np. PORTB= LED7SEG[0]. Należy pamiętać o prawidłowym skonfigurowaniu kierunku linii portu B. Napisać funkcję realizującą programowo opóźnienie o zadaną liczbę milisekund, powtarzając zadaną liczbę razy operację trwającą jedną milisekundę, np. pętlę opóźniającą, zgodnie z wzorem: void delay(unsigned miliseconds) unsigned i; for(i=0; i<miliseconds;i++) /*do uzupełnienia: operacja trwająca 1 milisekundę*/ Funkcję wykorzystać do wyświetlania kolejnych cyfr dziesiętnych, ze zmianą co jedną sekundę. Za pomocą taśmy 4-przewodowej połączyć złącze Kolumna z wyprowadzeniami portu A mikrokontrolera tak, by końcówka C4 była połączona z końcówką PA0, C3 z PA1 itd. Pozwoli to na programowe wybieranie jednego z czterech wyświetlaczy. Wymuszenie zera logicznego na stosownym wejściu złącza Kolumna załącza odpowiedni wyświetlacz. W danej chwili powinien być wybrany tylko jeden wyświetlacz. Poniższa funkcja przy wykonanych połączeniach wyświetla na pozycji position cyfrę digit : void disp_digit(unsigned char position, unsigned char digit) unsigned char i,mask=1; DDRA=DDRA 0x0F; //skonfigurowanie czterech mniej znaczących bitów //portu A jako wyjściowe DDRB=0xFF;

5 i=porta; mask=mask<<(position-1); mask=~mask; PORTA=(i & 0xF0) (mask & 0x0F); PORTB=LED7SEG[digit]; Przetestować możliwość wyświetlenia dowolnej cyfry na dowolnej pozycji wyświetlacza, wykorzystując powyższą funkcję. Poniższa funkcja wyświetla ciąg cyfr zapisanych w tablicy dig_string na wyświetlaczu z zastosowaniem szybkiego przełączania wyświetlaczy i wyprowadzania kodów odpowiednich cyfr. Cykliczne powtarzanie wywołania tej funkcji daje wrażenie ciągłego świecenia się wszystkich wyświetlaczy. void disp_dig_string(char *dig_string) unsigned char i; for(i=1; i<=4; i++) disp_digit(i, dig_string[i-1]); delay(2); Zastosować utworzone funkcje do wyświetlania czterocyfrowej liczby dziesiętnej po jej uprzednim zdekomponowaniu na ciąg czterech cyfr, zapisanych w kolejnych elementach tablicy, będącej argumentem funkcji disp_dig_string. Operację zawrzeć w funkcji: void disp_number(unsigned number) char numtab[4]; /*do uzupełnienia: konwersja liczby na ciąg cyfr zapisanych do tablicy numtab*/ disp_dig_string(numtab); Sprawozdanie powinno zawierać kody utworzonych programów oraz wyjaśnienie sposobu realizacji opóźnienia o jedną milisekundę i zdekomponowania liczby na ciąg cyfr. Czy jest możliwe wygaszenie zer nieznaczących i jak należy to wykonać?

6 Ćwiczenie 3. Celem ćwiczenia jest nabycie umiejętności programowej obsługi prostych urządzeń wejściowych na przykładzie klawiatury matrycowej. Czynności do wykonania: Przed podłączeniem zestawu wykonać następujące połączenia: - połączenie wyświetlacza siedmiosegmentowego z portem A i B mikrokontrolera, jak w ostatniej części ćwiczenia 2, - za pomocą taśmy 16-przewodowej połączyć port C mikrokontrolera (JP18) ze złączem Klawiatura 4x4 (JP23) klawiatury matrycowej, końcówka PC0 powinna być połączona z końcówką W1, - za pomocą zworki zewrzeć końcówki złącza Mała klawiatura (JP3). To połączenie zwiera końcówki przycisków pierwszej kolumny (z lewej strony) do masy, umożliwiając ich bezpośredni odczyt z portu mikrokontrolera. Przeanalizować schemat elektryczny klawiatury, dostarczony w dokumentacji układu uruchomieniowego. Należy zauważyć, że przy wykonanych połączeniach oraz skonfigurowaniu portu C jako port wejściowy z załączonymi rezystorami podciągającymi (DDRC=0; PORTC=0xFF;) wciśnięcie klawisza pierwszej kolumny będzie generowało zero logiczne na podłączonej do niego końcówce portu. Pozostałe końcówki będą pozostawać w stanie jedynki logicznej. Napisać program odczytujący w sposób ciągły stan pierwszej kolumny klawiszy i wyświetlający go w postaci liczby dziesiętnej. Zastosować wyrażenie: PINC & 0x0F, które wywołuje odczyt stanu końcówek portu C podłączonych do klawiszy, a jego wartość zależy jedynie od stanu klawiszy. Jeśli żaden z klawiszy nie został wciśnięty wyrażenie przyjmuje wartość 15. Należy zauważyć, że stała 0x0F w powyższym wyrażeniu stanowi rodzaj maski bitowej: operacja iloczynu bitowego powoduje, że jedynie stan bitów 0:3 zależy od stanu logicznego końcówek mikrokontrolera. Bity 4:7 przyjmują wartości zerowe. Zaproponować modyfikację programu, w której zamiast wartości wzoru bitów wygenerowanych przez wciśnięte klawisze, zostanie wyświetlony numer klawisza pod warunkiem, że użytkownik wciska tylko jeden z nich. Można w tym celu wykorzystać instrukcję switch. Operację odczytu numeru klawisza zawrzeć w funkcji: unsigned char read_key4(); Wówczas w programie głównym należy wykonywać nieskończoną pętlę: while(1) disp_number(read_key4()); Sprawozdanie powinno zawierać kody utworzonych programów z komentarzami oraz wyjaśnienie sposobu odczytu stanu klawiszy i przetwarzania go na numer wciśniętego klawisza.

7 Ćwiczenie 4. Celem ćwiczenia jest nabycie umiejętności oprogramowania obsługi przerwań na przykładzie obsługi klawiatury matrycowej. Obsługa przerwań jest realizowana za pomocą następująco makra (wymaga dołączenia zbiorów avr\interrupt.h i avr\signal.h ): ISR(numer_wektora_przerwania) /* Operacje wykonywane w procedurze obsługi przerwania o danym wektorze*/ Poniżej są zestawione zgodnie z malejącym priorytetem wektory przerwań implementowanych w mikrokontrolerze ATmega32: INT0_vect, INT1_vect, INT2_vect przerwania zewnętrzne, TIMER2_COMP_vect, TIMER2_OVF_vect, TIMER1_CAPT_vect, TIMER1_CMPA_vect, TIMER1_CMPB_vect, TIMER1_OVF_vect, TIMER0_COMP_vect, TIMER0_OVF_vect przerwania od liczników, SPI_STC_vect przerwanie portu SPI lub STC, USART_RXC_vect, USART_UDRE_vect, USART_TXC_vect przerwania portu USART, ADC_vect przerwanie na końcu konwersji ADC, EE_RDY_vect przerwanie gotowości pamięci EEPROM, ANA_COMP_vect przerwanie komparatora analogowego, TWI_vect przerwanie portu TWI, SPM_RDY_vect przerwanie gotowości pamięci FLASH. Aby umożliwić wprowadzanie danych z klawiatury należy rejestrować zdarzenie wciśnięcia klawisza. Pozwoli to np. zapamiętać, który klawisz został ostatnio wciśnięty. W układzie uruchomieniowym ZL3AVR znajduje się jednokońcówkowe złącze JP13, ułatwiające zaobserwowanie wciśnięcia klawisza. Po wymuszeniu zera logicznego jednocześnie na końcówkach K1, K2, K3 i K4 wciśnięcie któregokolwiek klawisza wymusi pojawienie się zera logicznego na złączu JP13. Podłączenie tego złącza do wyprowadzenia zewnętrznego przerwania mikrokontrolera pozwoli na realizację odczytu klawiatury w przerwaniu, bez konieczności cyklicznego obserwowania jej stanu. Aby możliwe było jednoznaczne znalezienie wciśniętego klawisza w procedurze obsługi przerwania należy kolejno, programowo ustalać stan zera logicznego na końcówkach K1 do K4, podłączonych do portu mikrokontrolera i obserwować stany logiczne na końcówkach W1 do W4. UWAGA!: Złącze Mała klawiatura (JP3) musi mieć wówczas rozwarte końcówki (usunięta zworka) by nie powstała niebezpieczna dla mikrokontrolera sytuacja, w której mikrokontroler próbuje wymusić stan jedynki logicznej na końcówce zwartej do masy. Czynności do wykonania: Przed podłączeniem zestawu wykonać następujące połączenia: - połączenie wyświetlacza siedmiosegmentowego z portem A i B mikrokontrolera, jak w poprzednim ćwiczeniu, - połączenie klawiatury matrycowej z portem C mikrokontrolera, jak w poprzednim ćwiczeniu (końcówka PC0 z końcówką W1 ), - za pomocą pojedynczego przewodu połączyć końcówkę złącza JP13 z wyprowadzeniem INT0 mikrokontrolera (końcówka PD2/INT0 złącza JP19),

8 - jeśli złącze Mała klawiatura (JP3) miało zwarte końcówki należy usunąć zworkę. Napisać program zliczający wciśnięcia dowolnego klawisza z zastosowaniem przerwań. Inkrementacja licznika wciśnięć powinna być zawarta w procedurze obsługi przerwania zewnętrznego. Poniższy wzór zawiera szablon programu wraz z dołączonymi, potrzebnymi zbiorami bibliotecznymi, definicją funkcji obsługi przerwania, konfiguracją przerwania zewnętrznego i załączeniem systemu przerwań: #include <avr\io.h> #include <avr\signal.h> #include <avr\interrupt.h> ISR(INT0_vect) /* tutaj należy wpisać instrukcje wykonywane w obsłudze przerwania zewnętrznego INT0 */ int main() DDRC=0xF0; /*inicjalizacja portu C połączonego z klawiaturą*/ PORTC=0x00; /*Inicjalizacja przerwania zewnętrznego INT0*/ MCUCR=0x02; /*przerwanie generowane zboczem opadającym*/ GICR=0x40; /*aktywacja przerwania zewnętrznego INT0 */ sei(); /*aktywacja systemu przerwań*/ /* tutaj należy wpisać kod programu głównego*/ Należy go uzupełnić o deklarację, inicjalizację, inkrementację licznika wciśnięć i jego wyświetlanie z zastosowaniem funkcji utworzonych w poprzednich ćwiczeniach. Przyciski klawiatury charakteryzują się występowaniem drgań zestyków, co może prowadzić do ich kilkakrotnego łączenia i rozłączania w czasie kilkudziesięciu mikrosekund podczas wciskania klawisza. Czy to zjawisko wpływa negatywnie na działanie napisanego programu? Jak można temu przeciwdziałać programowo? Poniższa funkcja realizuje odczyt kodu wciskanego klawisza w przerwaniu: ISR(INT0_vect) unsigned char kolumna=0, wiersz, kolmask=0x10; unsigned i, wmask, pincpy; for(i=0;i<100;i++); /*opóźnienie na ustabilizowanie styku*/ do PORTC=0x0F; /*wymuszenie zer na kolumnach*/ PORTC=0x0F; /*w celu powtarzania testu wciśnięcia */ PORTC=0x0F; /*jakiegokolwiek klawisza*/ if((pinc & 0x0F)!= 0x0F) PORTC=0x0F ~kolmask; PORTC=0x0F ~kolmask;

9 wiersz=0; wmask=0x01; do pincpy=pinc; pincpy=pinc; if(!(pincpy & wmask)) keybuffer=4*kolumna+wiersz; keypressed=1; wiersz++; wmask=wmask*2; while(wiersz<4); kolumna++; kolmask=kolmask*2; while(kolumna<4); PORTC=0x0F;/*wpisanie zer do kolumn zapewnia wygenerowanie przerwania*/ PORTC=0x0F;/*po wciśnięciu dowolnego klawisza, ale wywołuje przerwanie */ PORTC=0x0F;/*wskutek dalszego naciskania tego samego klawisza */ GIFR=0x40; /*wykasowanie zgloszonego przerwania*/ Jeśli wciśnięto klawisz funkcja przypisuje zmiennej globalnej keypressed wartość 1, a kod wciśniętego klawisza zmiennej globalnej keybuffer. Dzięki temu możliwe jest sprawdzenie w programie głównym czy został wciśnięty klawisz i odczytanie jego kodu. Zmiennej keypressed należy po odczytaniu kodu klawisza przypisać wartość 0, by zapobiec wielokrotnej interpretacji jednego wciśnięcia klawisza. Zmienne muszą być zadeklarowane w programie jako globalne. Przykładem prawidłowego użycia tych zmiennych jest fragment programu sumujący kody wciskanych klawiszy i wyświetlający je. while(1) if(keypressed) liczba=liczba + keybuffer; keypressed=0; disp_number(liczba); Napisać program wyświetlający kod ostatnio wciśniętego klawisza, zaobserwować jakie kody przypisano poszczególnym klawiszom. Napisać program wprowadzający do pamięci liczbę dziesiętną, wielocyfrową z klawiatury. Zaproponować sposób zakodowania typowej klawiatury kalkulatora z wykorzystaniem tablicy. Sprawozdanie powinno zawierać utworzone fragmenty kodu programów z komentarzami, odpowiedzi na pytania i własne wnioski.

10 Ćwiczenie 5. Celem ćwiczenia jest nabycie umiejętności oprogramowania układów czasowo-licznikowych oraz ich wykorzystania do realizacji różnych zadań. W ćwiczeniu układ T1 zostanie oprogramowany tak by służył do mierzenia czasu trwania wybranych zdarzeń z dokładnością do jednej mikrosekundy. Pozwoli to np. na ocenę czasu wykonania fragmentów programu. Następnie układ T0 zostanie tak oprogramowany, by generował przerwanie co 1ms. W procedurze obsługi przerwania można zrealizować odliczanie czasu późnienia o zadaną liczbę milisekund albo odliczanie do tysiąca (pełna sekunda), a następnie np. odliczanie sekund, minut i godzin. W ćwiczeniu nie jest wykorzystywana klawiatura i wystarczy zrealizować jedynie podłączenie wyświetlacza 7-segmentowego. Czynności do wykonania: Przed podłączeniem zestawu wykonać następujące połączenia: - połączenie wyświetlacza siedmiosegmentowego z portem A i B mikrokontrolera, jak w poprzednich ćwiczeniach. Napisać program sprawdzający dokładność generowania opóźnień przez utworzoną w ćwiczeniu 2. funkcję delay. W tym celu należy wykorzystać poniższe definicje funkcji konfiguracji i inicjalizacji pracy układu czasowego T1 oraz zatrzymania pracy T1 i pomiaru czasu: void start_us_timer() TCCR1B=0; /*zatrzymanie timera*/ TCNT1H=0; /*wyzerowanie licznika*/ TCNT1L=0; TCCR1A=0; TCCR1B=0x02; /*uruchomienie timera - zliczanie impulsów zegara CLK_io/8: dla fq=16mhz są to 2MHz (T=0,5us) */ unsigned get_time() unsigned time; TCCR1B=0; /*zatrzymanie timera*/ time=tcnt1l; /*odczyt mniej znaczącego bajtu stanu licznika*/ time+=256*tcnt1h; /*odczyt bardziej znaczącego bajtu stanu licznika*/ time/=2; /*skalowanie odczytu do mikrosekund*/ return time; /*zwrocenie czasu (liczby mikrosekund)*/ Należy zauważyć, że 16-bitowy licznik T1 może zliczyć co najwyżej impulsów, co przy wyborze jako źródła sygnału zegarowego 2MHz (CLK IO /8 dla f Q =16MHz) daje mikrosekund. Po upływie tego czasu od startu timera funkcja get_time() zwróci wartość niepoprawną (rzeczywistą wartość modulo 32767). Fragment programu z pomiarem czasu może wyglądać następująco: unsigned time;... start_us_timer(); delay(1); time=get_time();

11 Zmodyfikować funkcję delay tak, by jej wykonanie z parametrem 1 trwało prawie dokładnie 1000us. Sprawdzić jak się zmienia czas wykonania z innymi wartościami opóźnienia oraz na skutek załączenia optymalizacji. Następnie utworzyć funkcję int_delay o działaniu takim samym jak delay, ale z wykorzystaniem odpowiednio oprogramowanego licznika T0 do realizacji opóźnienia. W tym celu wykorzystać funkcję konfiguracji timera T0 i przerwania od T0 oraz funkcję obsługi przerwania: void start_ms_timer() TCCR0=0; /*zatrzymanie timera*/ TCNT0=0; /*wyzerowanie licznika*/ TIMSK=0x02; /*załączenie przerwania od zrównania T0 z OCR0 */ OCR0=249; /*ustalenie wartosci maksymalnej T0 */ TCCR0=0x0B; /*ustalenie trybu CTC i uruchomienie timera ze zliczaniem impulsów zegara CLK_io/64: dla fq=16mhz jest to 1/4MHz (T=4us) */ ISR(TIMER0_COMP_vect) ms_counter++; /*inkrementacja w przerwaniu licznika milisekund*/ Do prawidłowego działania programu konieczne jest, dołączenie następujących zbiorów nagłówkowych: #include <avr\io.h> #include <avr\signal.h> #include <avr\interrupt.h> oraz zadeklarowanie zmiennej globalnej: unsigned ms_counter; Pomierzyć czas opóźnień generowanych przez nową realizację opóźnienia wg wzoru: int main() unsigned time; sei(); /*aktywacja systemu przerwań*/ start_ms_timer(); /*konfiguracja timera T0 do zliczania milisekund*/ start_us_timer(); /*konfiguracja timera T1 do odliczania mikrosekund*/ int_delay(5); /*opóźnienie o 5ms realizowane z wykorzystaniem T0*/ time=get_time(); /*pomiar czasu*/ while(1) disp_number(time); Sprawozdanie powinno zawierać utworzone fragmenty kodu programów z komentarzami, odpowiedzi na pytania i własne wnioski.

LABORATORIUM UKŁADY STYKOWE ZL3AVR

LABORATORIUM UKŁADY STYKOWE ZL3AVR Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA UKŁADY STYKOWE ZL3AVR Opracował: mgr inż. Andrzej

Bardziej szczegółowo

SYSTEM PRZERWAŃ ATmega 32

SYSTEM PRZERWAŃ ATmega 32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA SYSTEM PRZERWAŃ ATmega 32 Opracował: mgr inż.

Bardziej szczegółowo

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej Systemy wbudowane Witold Kozłowski Zakład Fizyki i Technologii Struktur Nanometrowych 9-236 Łódź, Pomorska 49/53 https://std2.phys.uni.lodz.pl/mikroprocesory/

Bardziej szczegółowo

Szkolenia specjalistyczne

Szkolenia specjalistyczne Szkolenia specjalistyczne AGENDA Programowanie mikrokontrolerów w języku C na przykładzie STM32F103ZE z rdzeniem Cortex-M3 GRYFTEC Embedded Systems ul. Niedziałkowskiego 24 71-410 Szczecin info@gryftec.com

Bardziej szczegółowo

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści 1. Konfiguracja pinów2 2. ISP..2 3. I/O Ports..3 4. External Interrupts..4 5. Analog Comparator5 6. Analog-to-Digital Converter.6 7.

Bardziej szczegółowo

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej Systemy wbudowane Witold Kozłowski Zakład Fizyki i Technologii Struktur Nanometrowych 90-236 Łódź, Pomorska 149/153 https://std2.phys.uni.lodz.pl/mikroprocesory/

Bardziej szczegółowo

Politechnika Białostocka

Politechnika Białostocka Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Kod przedmiotu: TS1C 622 388 Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Elektronika samochodowa Temat: Programowanie

Bardziej szczegółowo

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści 1. Konfiguracja pinów...2 2. ISP...2 3. I/O Ports...3 4. External Interrupts...4 5. Analog Comparator...5 6. Analog-to-Digital Converter...6

Bardziej szczegółowo

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

Poradnik programowania procesorów AVR na przykładzie ATMEGA8 Poradnik programowania procesorów AVR na przykładzie ATMEGA8 Wersja 1.0 Tomasz Pachołek 2017-13-03 Opracowanie zawiera opis podstawowych procedur, funkcji, operatorów w języku C dla mikrokontrolerów AVR

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery Zastosowanie przetwornika analogowo-cyfrowego do odczytywania napięcia z potencjometru

Bardziej szczegółowo

2. Architektura mikrokontrolerów PIC16F8x... 13

2. Architektura mikrokontrolerów PIC16F8x... 13 Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator

Bardziej szczegółowo

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe Mikrokontroler ATmega32 System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe 1 Przerwanie Przerwanie jest inicjowane przez urządzenie zewnętrzne względem mikroprocesora, zgłaszające potrzebę

Bardziej szczegółowo

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33 Spis treści 3 1. Wprowadzenie...11 1.1. Wstęp...12 1.2. Mikrokontrolery rodziny ARM...13 1.3. Architektura rdzenia ARM Cortex-M3...15 1.3.1. Najważniejsze cechy architektury Cortex-M3... 15 1.3.2. Rejestry

Bardziej szczegółowo

Podstawy techniki mikroprocesorowej

Podstawy techniki mikroprocesorowej Podstawy techniki mikroprocesorowej Temat 2 Obsługa wyświetlaczy v.1.0 Uniwersytet Pedagogiczny, Instytut Techniki Dominik Rzepka, dominik.rzepka@agh.edu.pl, 2014 1. Obsługa pinów mikroprocesora i wyświetlacze

Bardziej szczegółowo

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej.

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej. Politechnika Białostocka Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej Konstrukcje i Technologie w Aparaturze Elektronicznej Ćwiczenie nr 4 Temat: Sterowanie sekwencyjne wyświetlaczem

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery Dostęp do portów mikrokontrolera ATmega32 język C laboratorium: 10 autorzy: dr

Bardziej szczegółowo

Komunikacja w mikrokontrolerach Laboratorium

Komunikacja w mikrokontrolerach Laboratorium Laboratorium Ćwiczenie 1 Podstawy programowania, stany uśpienia Program ćwiczenia: zapoznanie z regulaminem laboratorium i zasadami zaliczenia, zapoznanie ze sprzętem laboratoryjnym i oprogramowaniem,

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR z rodziny ATmega.

Programowanie mikrokontrolerów AVR z rodziny ATmega. Programowanie mikrokontrolerów AVR z rodziny ATmega. Materiały pomocnicze Jakub Malewicz jakub.malewicz@pwr.wroc.pl Wszelkie prawa zastrzeżone. Kopiowanie w całości lub w częściach bez zgody i wiedzy autora

Bardziej szczegółowo

Ćwiczenie 7 Matryca RGB

Ćwiczenie 7 Matryca RGB IMiO PW, LPTM, Ćwiczenie 7, Matryca RGB -1- Ćwiczenie 7 Matryca RGB IMiO PW, LPTM, Ćwiczenie 7, Matryca RGB -2-1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z inną oprócz RS - 232 formą szeregowej

Bardziej szczegółowo

Wydział Mechaniczny. Instrukcja do zajęć laboratoryjnych. Numer ćwiczenia: 4. Laboratorium z przedmiotu: Technika cyfrowa i mikroprocesorowa

Wydział Mechaniczny. Instrukcja do zajęć laboratoryjnych. Numer ćwiczenia: 4. Laboratorium z przedmiotu: Technika cyfrowa i mikroprocesorowa Politechnika Białostocka Wydział Mechaniczny Instrukcja do zajęć laboratoryjnych Temat ćwiczenia: Programowanie układu do sterowania wyświetlaczem 7-segmentowym Numer ćwiczenia: 4 Laboratorium z przedmiotu:

Bardziej szczegółowo

Elektronika samochodowa (Kod: TS1C )

Elektronika samochodowa (Kod: TS1C ) Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu Elektronika samochodowa (Kod: TS1C 622 388) Temat: Programowanie mikrokontrolerów

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery System przerwań laboratorium: 11 autorzy: dr hab. Zbisław Tabor, prof. PK mgr inż.

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Systemy Czasu Rzeczywistego Programowanie wyświetlacza graficznego LCD laboratorium: 01 autor: mgr inż. Paweł Pławiak

Bardziej szczegółowo

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19 LITEcomp Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19 Moduł LITEcomp to miniaturowy komputer wykonany na bazie mikrokontrolera z rodziny ST7FLITE1x. Wyposażono go w podstawowe peryferia, dzięki

Bardziej szczegółowo

Komunikacja w mikrokontrolerach. Podstawy programowania. Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski

Komunikacja w mikrokontrolerach. Podstawy programowania. Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Komunikacja w mikrokontrolerach Podstawy programowania Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. AVR

Bardziej szczegółowo

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury Cel ćwiczenia: Głównym celem ćwiczenia jest nauczenie się obsługi klawiatury. Klawiatura jest jednym z urządzeń wejściowych i prawie zawsze występuje

Bardziej szczegółowo

Projekt MARM. Dokumentacja projektu. Łukasz Wolniak. Stacja pogodowa

Projekt MARM. Dokumentacja projektu. Łukasz Wolniak. Stacja pogodowa Projekt MARM Dokumentacja projektu Łukasz Wolniak Stacja pogodowa 1. Cel projektu Celem projektu było opracowanie urządzenia do pomiaru temperatury, ciśnienia oraz wilgotności w oparciu o mikrokontroler

Bardziej szczegółowo

Opis Ogólny OPIS OGÓLNY LICZNIKA AL154LI01.

Opis Ogólny OPIS OGÓLNY LICZNIKA AL154LI01. 1. OPIS OGÓLNY LICZNIKA AL154LI01. 8 Przyrząd umożliwia pomiar, wyświetlenie na wyświetlaczu oraz przesłanie na komputer wartości ośmiu niezależnych liczników impulsów. Zerowanie oraz włączenie (uruchomienie)

Bardziej szczegółowo

INDU-22. Przemysłowy Sterownik Mikroprocesorowy. Przeznaczenie. masownica próżniowa

INDU-22. Przemysłowy Sterownik Mikroprocesorowy. Przeznaczenie. masownica próżniowa Przemysłowy Sterownik Mikroprocesorowy INDU-22 Przeznaczenie masownica próżniowa Sp. z o.o. 41-250 Czeladź ul. Wojkowicka 21 Tel. 032 763 77 77 Fax: 032 763 75 94 www.mikster.pl mikster@mikster.pl v1.1

Bardziej szczegółowo

Programowalne Układy Cyfrowe Laboratorium

Programowalne Układy Cyfrowe Laboratorium Zdjęcie opracowanej na potrzeby prowadzenia laboratorium płytki przedstawiono na Rys.1. i oznaczono na nim najważniejsze elementy: 1) Zasilacz i programator. 2) Układ logiki programowalnej firmy XILINX

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR

Programowanie mikrokontrolerów AVR Programowanie mikrokontrolerów AVR Czym jest mikrokontroler? Mikrokontroler jest małym komputerem podłączanym do układów elektronicznych. Pamięć RAM/ROM CPU wykonuje program Układy I/O Komunikacje ze światem

Bardziej szczegółowo

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 STM32Butterfly2 Zestaw STM32Butterfly2 jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity

Bardziej szczegółowo

Klawiatura matrycowa

Klawiatura matrycowa Klawiatura matrycowa Budowa matrycy klawiatury. Nieodzownym elementem każdego systemu mikroprocesorowego jest klawiatura. Umożliwia ona wpływ użytkownika na wykonywany przez niego program. Jednak teoretycznie

Bardziej szczegółowo

dokument DOK 02-05-12 wersja 1.0 www.arskam.com

dokument DOK 02-05-12 wersja 1.0 www.arskam.com ARS3-RA v.1.0 mikro kod sterownika 8 Linii I/O ze zdalną transmisją kanałem radiowym lub poprzez port UART. Kod przeznaczony dla sprzętu opartego o projekt referencyjny DOK 01-05-12. Opis programowania

Bardziej szczegółowo

Opis układów wykorzystanych w aplikacji

Opis układów wykorzystanych w aplikacji Opis układów wykorzystanych w aplikacji Układ 74LS164 jest rejestrem przesuwnym służącym do zamiany informacji szeregowej na równoległą. Układ, którego symbol logiczny pokazuje rysunek 1, posiada dwa wejścia

Bardziej szczegółowo

Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR

Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR Zadanie polega na napisaniu pierwszego programu w języku C, jego poprawnej kompilacji i wgraniu na mikrokontroler. W tym celu należy zapoznać

Bardziej szczegółowo

ĆWICZENIE 5. TEMAT: OBSŁUGA PORTU SZEREGOWEGO W PAKIECIE KEILuVISON WYSYŁANIE PORTEM SZEREGOWYM

ĆWICZENIE 5. TEMAT: OBSŁUGA PORTU SZEREGOWEGO W PAKIECIE KEILuVISON WYSYŁANIE PORTEM SZEREGOWYM ĆWICZENIE 5 TEMAT: OBSŁUGA PORTU SZEREGOWEGO W PAKIECIE KEILuVISON WYSYŁANIE PORTEM SZEREGOWYM Wiadomości wstępne: Port szeregowy może pracować w czterech trybach. Tryby różnią się między sobą liczbą bitów

Bardziej szczegółowo

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) ZL4PIC Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC 1 Zestaw jest przeznaczony dla elektroników zajmujących się aplikacjami

Bardziej szczegółowo

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307 Język C Wykład 9: Mikrokontrolery cz.2 Łukasz Gaweł Chemia C pokój 307 lukasz.gawel@pg.edu.pl Pierwszy program- powtórka Częstotliwość zegara procesora μc (należy sprawdzić z kartą techniczną μc) Dodaje

Bardziej szczegółowo

Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy

Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy Ćwiczenie V LABORATORIUM MECHATRONIKI IEPiM Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy Zał.1 - Działanie i charakterystyka sterownika PLC

Bardziej szczegółowo

Instrukcja obsługi elektronicznego licznika typu 524. Model 524. Licznik sumujący i wskaźnik pozycji typu Opis. 1. Opis

Instrukcja obsługi elektronicznego licznika typu 524. Model 524. Licznik sumujący i wskaźnik pozycji typu Opis. 1. Opis Instrukcja obsługi elektronicznego licznika typu 524 Model 524 Model 524 jest urządzeniem wielozadaniowym i zależnie od zaprogramowanej funkcji podstawowej urządzenie pracuje jako: licznik sumujący i wskaźnik

Bardziej szczegółowo

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania. Sterowniki Urządzeń Mechatronicznych laboratorium. Ćw. 3: Timer v1.0

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania. Sterowniki Urządzeń Mechatronicznych laboratorium. Ćw. 3: Timer v1.0 1 CEL ĆWICZENIA Celem ćwiczenia jest zapoznanie się z możliwościami odmierzania czasu za pomocą wewnętrznego TIMER a mikrokontrolerów serii AVR 2 ZAKRES NIEZBĘDNYCH WIADOMOŚCI - wiadomości z poprzednich

Bardziej szczegółowo

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 STM32 Butterfly Zestaw STM32 Butterfly jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity

Bardziej szczegółowo

ZL2AVR. Zestaw uruchomieniowy z mikrokontrolerem ATmega8

ZL2AVR. Zestaw uruchomieniowy z mikrokontrolerem ATmega8 ZL2AVR Zestaw uruchomieniowy z mikrokontrolerem ATmega8 ZL2AVR jest uniwersalnym zestawem uruchomieniowym dla mikrokontrolerów ATmega8 (oraz innych w obudowie 28-wyprowadzeniowej). Dzięki wyposażeniu w

Bardziej szczegółowo

Instrukcja do ćwiczeń

Instrukcja do ćwiczeń Instrukcja do ćwiczeń SYSTEMY WBUDOWANE Lab. 3 Przetwornik ADC + potencjometr 1. Należy wejść na stronę Olimexu w celu znalezienia zestawu uruchomieniowego SAM7-EX256 (https://www.olimex.com/products/arm/atmel/sam7-ex256/).

Bardziej szczegółowo

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie INSTRUKCJA OBSŁUGI 1. Zastosowanie Przekaźnik czasowy ETM jest zadajnikiem czasowym przystosowanym jest do współpracy z prostownikami galwanizerskimi. Pozwala on załączyć prostownik w stan pracy na zadany

Bardziej szczegółowo

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej Struktura stanowiska laboratoryjnego Na rysunku 1.1 pokazano strukturę stanowiska laboratoryjnego Z80 z interfejsem częstościomierza- czasomierz PFL 21/22. Rys.1.1. Struktura stanowiska. Interfejs częstościomierza

Bardziej szczegółowo

Badanie układów średniej skali integracji - ćwiczenie Cel ćwiczenia. 2. Wykaz przyrządów i elementów: 3. Przedmiot badań

Badanie układów średniej skali integracji - ćwiczenie Cel ćwiczenia. 2. Wykaz przyrządów i elementów: 3. Przedmiot badań adanie układów średniej skali integracji - ćwiczenie 6. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z podstawowymi układami SSI (Średniej Skali Integracji). Przed wykonaniem ćwiczenia należy zapoznać

Bardziej szczegółowo

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści 1. Konfiguracja pinów...2 2. ISP...2 3. I/O Ports...3 4. External Interrupts...4 5. Analog Comparator...6 6. Analog-to-Digital Converter...6

Bardziej szczegółowo

2 Przygotował: mgr inż. Maciej Lasota

2 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania

Bardziej szczegółowo

Uniwersalny zestaw uruchomieniowy ZL4PIC

Uniwersalny zestaw uruchomieniowy ZL4PIC Uniwersalny zestaw uruchomieniowy ZL4PIC Uniwersalny zestaw uruchomieniowy ZL4PIC przeznaczony jest testowania aplikacji realizowanych na bazie mikrokontrolerów PIC. Jest on przystosowany do współpracy

Bardziej szczegółowo

Laboratorium Systemów wbudowanych Wyższa Szkoła Zarządzania i Bankowości, Informatyka studia inżynierskie

Laboratorium Systemów wbudowanych Wyższa Szkoła Zarządzania i Bankowości, Informatyka studia inżynierskie Laboratorium Systemów wbudowanych Wyższa Szkoła Zarządzania i Bankowości, Informatyka studia inżynierskie Ćwiczenie nr l Podstawy programowania mikrokontrolerów rodziny AVR8 opracował dr inż. Wojciech

Bardziej szczegółowo

Podstawy programowania PLC w języku drabinkowym - ćwiczenie 5

Podstawy programowania PLC w języku drabinkowym - ćwiczenie 5 Podstawy programowania PLC w języku drabinkowym - ćwiczenie 5 1. Cel ćwiczenia Zapoznanie się z podstawowymi elementami języka drabinkowego i zasadami programowania Programowalnych Sterowników Logicznych

Bardziej szczegółowo

1 Badanie aplikacji timera 555

1 Badanie aplikacji timera 555 1 Badanie aplikacji timera 555 Celem ćwiczenia jest zapoznanie studenta z podstawowymi aplikacjami układu 555 oraz jego działaniem i właściwościami. Do badania wybrane zostały trzy podstawowe aplikacje

Bardziej szczegółowo

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA TIMERY w mikrokontrolerach Atmega16-32 Opracował:

Bardziej szczegółowo

Programowanie mikrokontrolerów. 5 grudnia 2007

Programowanie mikrokontrolerów. 5 grudnia 2007 Programowanie mikrokontrolerów Marcin Engel Marcin Peczarski 5 grudnia 2007 Przerwania Umożliwiają asynchroniczną obsługę różnych zdarzeń, np.: zmiana stanu wejścia, zakończenie przetwarzania analogowo-cyfrowego,

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery Sterowanie wyświetlaczem alfanumerycznym LCD laboratorium: 13 i 14 autor: dr hab.

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR z rodziny ATmega.

Programowanie mikrokontrolerów AVR z rodziny ATmega. Programowanie mikrokontrolerów AVR z rodziny ATmega. Materiały pomocnicze Jakub Malewicz jakub.malewicz@pwr.wroc.pl Wszelkie prawa zastrzeżone. Kopiowanie w całości lub w częściach bez zgody i wiedzy autora

Bardziej szczegółowo

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA TIMERY w mikrokontrolerach Atmega16-32 Opracował:

Bardziej szczegółowo

Opis procedur asemblera AVR

Opis procedur asemblera AVR Piotr Kalus PWSZ Racibórz 10.05.2008 r. Opis procedur asemblera AVR init_lcd Plik: lcd4pro.hvr Procedura inicjuje pracę alfanumerycznego wyświetlacza LCD za sterownikiem HD44780. Wyświetlacz działa w trybie

Bardziej szczegółowo

Parametryzacja przetworników analogowocyfrowych

Parametryzacja przetworników analogowocyfrowych Parametryzacja przetworników analogowocyfrowych wersja: 05.2015 1. Cel ćwiczenia Celem ćwiczenia jest zaprezentowanie istoty działania przetworników analogowo-cyfrowych (ADC analog-to-digital converter),

Bardziej szczegółowo

Przykład programowania PLC w języku drabinkowym - ćwiczenie 6

Przykład programowania PLC w języku drabinkowym - ćwiczenie 6 Przykład programowania PLC w języku drabinkowym - ćwiczenie 6 1. Cel ćwiczenia Zapoznanie się z podstawowymi elementami języka drabinkowego i zasadami programowania Programowalnych Sterowników Logicznych

Bardziej szczegółowo

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście

Bardziej szczegółowo

Wstęp...9. 1. Architektura... 13

Wstęp...9. 1. Architektura... 13 Spis treści 3 Wstęp...9 1. Architektura... 13 1.1. Schemat blokowy...14 1.2. Pamięć programu...15 1.3. Cykl maszynowy...16 1.4. Licznik rozkazów...17 1.5. Stos...18 1.6. Modyfikowanie i odtwarzanie zawartości

Bardziej szczegółowo

/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h>

/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h> Szablon programu: /* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include /* opcjonalne: deklaracja typów o rozmiarze jednego i dwóch

Bardziej szczegółowo

Mikrokontrolery AVR Wprowadzenie

Mikrokontrolery AVR Wprowadzenie Mikrokontrolery AVR Wprowadzenie Komunikacja z otoczeniem mikrokontrolera Każdy z mikrokontrolerów posiada pewna liczbę wyprowadzeń cyfrowych które służą do wprowadzania i odbierania informacji z mikrokontrolera.

Bardziej szczegółowo

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe www.evboards.eu

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe www.evboards.eu AVREVB1 Zestaw uruchomieniowy dla mikrokontrolerów AVR. 1 Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy

Bardziej szczegółowo

Kurs Zaawansowany S7. Spis treści. Dzień 1

Kurs Zaawansowany S7. Spis treści. Dzień 1 Spis treści Dzień 1 I Konfiguracja sprzętowa i parametryzacja stacji SIMATIC S7 (wersja 1211) I-3 Dlaczego powinna zostać stworzona konfiguracja sprzętowa? I-4 Zadanie Konfiguracja sprzętowa I-5 Konfiguracja

Bardziej szczegółowo

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168 ZL16AVR Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168 ZL16AVR jest uniwersalnym zestawem uruchomieniowym dla mikrokontrolerówavr w obudowie 28-wyprowadzeniowej (ATmega8/48/88/168). Dzięki

Bardziej szczegółowo

Mikrokontroler ATmega32. Język symboliczny

Mikrokontroler ATmega32. Język symboliczny Mikrokontroler ATmega32 Język symboliczny 1 Język symboliczny (asembler) jest językiem niskiego poziomu - pozwala pisać programy złożone z instrukcji procesora. Kody instrukcji są reprezentowane nazwami

Bardziej szczegółowo

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

Bardziej szczegółowo

Programowanie w językach asemblera i C

Programowanie w językach asemblera i C Programowanie w językach asemblera i C Mariusz NOWAK Programowanie w językach asemblera i C (1) 1 Dodawanie dwóch liczb - program Napisać program, który zsumuje dwie liczby. Wynik dodawania należy wysłać

Bardziej szczegółowo

Podstawy programowania skrót z wykładów:

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

Bardziej szczegółowo

interfejs szeregowy wyświetlaczy do systemów PLC

interfejs szeregowy wyświetlaczy do systemów PLC LDN SBCD interfejs szeregowy wyświetlaczy do systemów PLC SEM 08.2003 Str. 1/5 SBCD interfejs szeregowy wyświetlaczy do systemów PLC INSTRUKCJA OBSŁUGI Charakterystyka Interfejs SBCD w wyświetlaczach cyfrowych

Bardziej szczegółowo

Programowanie mikrokontrolerów - laboratorium

Programowanie mikrokontrolerów - laboratorium Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu Instytut Techniczny Programowanie mikrokontrolerów- laboratorium Nazwisko i imię 1. 2. Data wykonania ćwiczenia: Grupa: Ocena sprawozdania Zaliczenie: Symbol:

Bardziej szczegółowo

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej Systemy wbudowane Witold Kozłowski Zakład Fizyki i Technologii Struktur Nanometrowych 90-236 Łódź, Pomorska 149/153 https://std2.phys.uni.lodz.pl/mikroprocesory/

Bardziej szczegółowo

Uproszczony schemat blokowy zespołu 8-bitowego timera przedstawiono na rys.1

Uproszczony schemat blokowy zespołu 8-bitowego timera przedstawiono na rys.1 Dodatek C 1. Timer 8-bitowy (Timer0) 1.1. Opis układu Uproszczony schemat blokowy zespołu 8-bitowego timera przedstawiono na rys.1 Rys. 1. Schemat blokowy timera Źródłem sygnału taktującego może być zegar

Bardziej szczegółowo

Dokumentacja sterownika mikroprocesorowego "MIKSTER MCC 026"

Dokumentacja sterownika mikroprocesorowego MIKSTER MCC 026 Dokumentacja sterownika mikroprocesorowego "MIKSTER MCC 026" Sp. z o.o. 41-250 Czeladź ul. Wojkowicka 21 Tel. 032 763-77-77 Fax: 032 763-75-94 v.1.2 www.mikster.pl mikster@mikster.pl (14.11.2007) SPIS

Bardziej szczegółowo

Wprowadzenie do podstaw programowania AVR (na przykładzie mikrokontrolera ATmega 16 / 32)

Wprowadzenie do podstaw programowania AVR (na przykładzie mikrokontrolera ATmega 16 / 32) Wprowadzenie do podstaw programowania AVR (na przykładzie mikrokontrolera ATmega 16 / 32) wersja 0.4 (20 kwietnia 2015) Filip A. Sala W niniejszym, bardzo krótkim opracowaniu, postaram się przedstawić

Bardziej szczegółowo

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r. Sprawozdanie z projektu MARM Część druga Specyfikacja końcowa Prowadzący: dr. Mariusz Suchenek Autor: Dawid Kołcz Data: 01.02.16r. 1. Temat pracy: Układ diagnozujący układ tworzony jako praca magisterska.

Bardziej szczegółowo

PROGRAMOWALNE SYSTEMY MECHATRONIKI

PROGRAMOWALNE SYSTEMY MECHATRONIKI PROGRAMOWALNE SYSTEMY MECHATRONIKI Laboratorium nr 5 Podstawy programowania mikrokontrolerów. Przerwania. 1. System przerwań informacje ogólne Programy sterujące mikrokontrolerów rzadko mają postać listy

Bardziej szczegółowo

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania). Ćw. 10 Układy sekwencyjne 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z sekwencyjnymi, cyfrowymi blokami funkcjonalnymi. W ćwiczeniu w oparciu o poznane przerzutniki zbudowane zostaną układy rejestrów

Bardziej szczegółowo

ZL8AVR. Płyta bazowa dla modułów dipavr

ZL8AVR. Płyta bazowa dla modułów dipavr ZL8AVR Płyta bazowa dla modułów dipavr Zestaw ZL8AVR to płyta bazowa dla modułów dipavr (np. ZL7AVR z mikrokontrolerem ATmega128 lub ZL12AVR z mikrokontrolerem ATmega16. Wyposażono ją w wiele klasycznych

Bardziej szczegółowo

Moduł rozszerzeń ATTO dla systemu monitorującego SMOK.

Moduł rozszerzeń ATTO dla systemu monitorującego SMOK. Moduł rozszerzeń ATTO dla systemu monitorującego SMOK. ATTO-UIO jest przeznaczony do systemów rozproszonych bazujących na magistrali RS485 obsługującej protokół MODBUS RTU. Sterownik może pracować jako

Bardziej szczegółowo

Immobilizer samochodowy otwierający dostęp poprzez kod czteroznakowy.

Immobilizer samochodowy otwierający dostęp poprzez kod czteroznakowy. Uniwersytet Warszawski Wydział Fizyki sierpień 2015 Projekt Zaliczeniowy przedmiotu Programowanie Mikrokontrolerów Immobilizer samochodowy otwierający dostęp poprzez kod czteroznakowy. Autor: Marcin Cybulski

Bardziej szczegółowo

Spis treści. Dzień 1. I Rozpoczęcie pracy ze sterownikiem (wersja 1707) II Bloki danych (wersja 1707) ZAAWANSOWANY TIA DLA S7-300/400

Spis treści. Dzień 1. I Rozpoczęcie pracy ze sterownikiem (wersja 1707) II Bloki danych (wersja 1707) ZAAWANSOWANY TIA DLA S7-300/400 ZAAWANSOWANY TIA DLA S7-300/400 Spis treści Dzień 1 I Rozpoczęcie pracy ze sterownikiem (wersja 1707) I-3 Zadanie Konfiguracja i uruchomienie sterownika I-4 Etapy realizacji układu sterowania I-5 Tworzenie

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikrokontrolery i Mikroprocesory Zapoznanie się ze środowiskiem IAR Embedded Workbench; kompilacja, debuggowanie,

Bardziej szczegółowo

start Program mikroprocesorowego miernika mocy generowanej $crystal = deklaracja

start Program mikroprocesorowego miernika mocy generowanej $crystal = deklaracja ----------------------------start---------------------------- Program mikroprocesorowego miernika mocy generowanej $crystal = 8000000 deklaracja częstotliwości kwarcu taktującego uc $regfile "m8def.dat"

Bardziej szczegółowo

Lab 9 Podstawy Programowania

Lab 9 Podstawy Programowania Lab 9 Podstawy Programowania (Kaja.Gutowska@cs.put.poznan.pl) Wszystkie kody/fragmenty kodów dostępne w osobnym pliku.txt. Materiały pomocnicze: Wskaźnik to specjalny rodzaj zmiennej, w której zapisany

Bardziej szczegółowo

Komunikacja w mikrokontrolerach. Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski

Komunikacja w mikrokontrolerach. Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski Komunikacja w mikrokontrolerach Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski Treść kursu Programowanie mikrokontrolerów AVR (ATMEL) Orientacja na komunikację międzyukładową w C Literatura

Bardziej szczegółowo

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP ZL32ARM ZL32ARM z mikrokontrolerem LPC1114 (rdzeń Cotrex-M0) dzięki wbudowanemu programatorowi jest kompletnym zestawem uruchomieniowym.

Bardziej szczegółowo

Kurs STARTER S5. Spis treści. Dzień 1. III Budowa wewnętrzna, działanie i obsługa sterownika (wersja 0504)

Kurs STARTER S5. Spis treści. Dzień 1. III Budowa wewnętrzna, działanie i obsługa sterownika (wersja 0504) I Dlaczego sterownik? (wersja 0504) Spis treści Dzień 1 I-3 Wady i zalety poszczególnych rodzajów układów sterowania I-4 Charakterystyka rodziny S5 I-5 II Podłączenie sterownika do obiektu (wersja 0504)

Bardziej szczegółowo

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 ZL29ARM Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 Zestaw ZL29ARM jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity Line (STM32F107).

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i mikrokontrolery Obsługa portów wejścia/wyjścia mikrokontrolera laboratorium: 02 autor: mgr inż.

Bardziej szczegółowo

Elementy struktur cyfrowych. Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych.

Elementy struktur cyfrowych. Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych. Elementy struktur cyfrowych Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych. PTC 2015/2016 Magistrale W układzie cyfrowym występuje bank rejestrów do przechowywania

Bardziej szczegółowo

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy. SigmaDSP jest niedrogim zestawem uruchomieniowym dla procesora DSP ADAU1701 z rodziny SigmaDSP firmy Analog Devices, który wraz z programatorem USBi i darmowym środowiskiem

Bardziej szczegółowo

Programowanie mikrokontrolerów. 8 listopada 2007

Programowanie mikrokontrolerów. 8 listopada 2007 Programowanie mikrokontrolerów Marcin Engel Marcin Peczarski 8 listopada 2007 Alfanumeryczny wyświetlacz LCD umożliwia wyświetlanie znaków ze zbioru będącego rozszerzeniem ASCII posiada zintegrowany sterownik

Bardziej szczegółowo

DOKUMENTACJA PROJEKTU

DOKUMENTACJA PROJEKTU Warszawa, dn. 16.12.2015r. Student: Artur Tynecki (E.EIM) atynecki@stud.elka.pw.edu.pl Prowadzący: dr inż. Mariusz Jarosław Suchenek DOKUMENTACJA PROJEKTU Projekt wykonany w ramach przedmiotu Mikrokontrolery

Bardziej szczegółowo

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22) O autorze (9) Podziękowania (10) Wstęp (11) Pobieranie przykładów (12) Czego będę potrzebował? (12) Korzystanie z tej książki (12) Rozdział 1. Programowanie Arduino (15) Czym jest Arduino (15) Instalacja

Bardziej szczegółowo

Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu.

Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu. Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu. Maciek Słomka 4 czerwca 2006 1 Celprojektu. Celem projektu było zbudowanie modułu umożliwiającego wizualizację stanu czujników

Bardziej szczegółowo