PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 02. Programowanie układu kontroli przerwań do obsługi układu licznika

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

Download "PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 02. Programowanie układu kontroli przerwań do obsługi układu licznika"

Transkrypt

1 PROCESORY SYGNAŁOWE - LABORATORIUM Ćwiczenie nr 02 Programowanie układu kontroli przerwań do obsługi układu licznika 1. Konfiguracja układu kontroli przerwań. Zadaniem układu kontroli przerwań jest skalowalna i asynchroniczna obsługa urządzeń współpracujących z układem mikroprocesorowym (do tej grupy nie zalicza się pamięci procesora). To urządzenie, zgłaszając przerwanie, wyzwala reakcję procesora. Każdy układ kontroli przerwań umożliwia: przypisanie urządzeń do dostępnych przerwań, ustalenie priorytetu obsługi urządzeń (ustalenie kolejności, w jakiej będą obsługiwane urządzenia, gdy zgłoszą przerwanie jednocześnie), definicję funkcji obsługi przerwania (określenie sekwencji instrukcji, która ma zostać wykonana w momencie zgłoszenia przerwania), zdefiniowanie, które przerwania będą w danej chwili obsługiwane, a które nie (maskowanie przerwań). Do konfiguracji układu kontroli przerwań zostanie wykorzystana biblioteka CSL (ang. Chip Support Library) opracowana przez firmę Texas Instruments. Zanim użyje się jakiejkolwiek funkcji z tej biblioteki, należy wywołać funkcję CSL_init(), która inicjalizuje wewnętrzny stan biblioteki (statyczne zmienne wykorzystywane w bibliotece). Do konfiguracji układu kontroli przerwań konieczne są następujące funkcje zadeklarowane w pliku nagłówkowym csl_irq.h: IRQ_clear IRQ_config IRQ_configArgs IRQ_disable IRQ_enable IRQ_globalDisable IRQ_globalEnable IRQ_globalRestore IRQ_reset IRQ_restore

2 IRQ_setVecs IRQ_test Opis każdej z tych funkcji można znaleźć w dokumentacji dostępnej na stronie internetowej laboratorium (TMS320C6000 Chip Support Library API Reference Guide). Przygotowując się do laboratorium, należy opracować opis funkcji służących do konfiguracji układu kontroli przerwań, użytych w projekcie Scheduler (plik scheduler.zip do pobrania ze strony laboratorium DSP). Funkcje te są wywołane w modułach main.c i timer.c. Opis powinien być sporządzony według podanego poniżej wzoru i okazany w formie odręcznej notatki lub wydruku na początku zajęć. Wzór opisu. void IRQ_clear( Uint32 EventId) Lista argumentów. Nazwa argumentu- EventId. Typ argumentu- Uint32. Opisu argumentu- identyfikator zdarzenia. Zwracana wartość. Funkcja nie zwraca żadnej wartości. Opis funkcji. Zeruje flagę przerwania dla danego zdarzenia w rejestrze IFR procesora. Jeżeli zdarzenie nie jest przypisane do żadnego numeru przerwania, funkcja nie wykonuje żadnej akcji. Konfiguracja układu kontroli przerwań składa się z następujących etapów: stworzenie tablicy wektorów przerwań (16 elementowej tablicy zawierającej pakiety ośmiu instrukcji wczytywane w momencie wywołania danego przerwania) i przypisanie jej adresu do rejestru ISTP układu kontroli przerwań, przypisanie numeru przerwania do zdarzenia pochodzącego od obsługiwanego urządzenia (mapowanie przerwania), zezwolenie na obsługę wybranych przerwań (maskowanie przerwań).

3 Etap pierwszy W etapie pierwszym w pliku z rozszerzeniem *.asm definiuje się symbole globalne związane z funkcjami obsługi przerwań jak i samej tablicy wektorów przerwań. Definicja symboli globalnych odbywa się z wykorzystaniem słowa kluczowego global. Na przykład:.global _vectors,.global _przerwanie definiuje symbole globalne, które mogą być użyte jako nazwy funkcji lub zmiennych w modułach napisanych w języku C. Znak podkreślenia na początku symbolu jest charakterystyczny dla symboli deklarowanych w modułach napisanych w języku C. Na przykład: void vectors() void przerwanie() Symbol global może być użyty do odwołania się do funkcji i zmiennych zdefiniowanych w języku C lub zadeklarowania, że etykieta zdefiniowana w module *.asm będzie używana poza tym modułem. W projekcie Schedular w module IRQ.asm zadeklarowano trzy symbole jako globalne: _c_int00, _IRQ_service i _timer_int. _c_int00 jest nazwą funkcji obsługi przerwania od sygnału RESET zdefiniowaną w bibliotece rts_6700.lib dołączanej do każdego projektu. _IRQ_service jest symbolem zdefiniowanym w pliku IRQ.asm jako początek tablicy wektorów przerwań. W pliku main.c odwołano się do tego symbolu deklarując funkcję o nazwie IRQ_service. W main.c znajduje się tylko deklaracja tej funkcji, ponieważ jej sens określony jest w module IRQ.asm jako początek tablicy wektorów przerwań. Adres tej funkcji jest wpisywany do rejestru ISTP procesora za pomocą funkcji IRQ_setVecs(). Symbol _timer_int jest odwołaniem się do funkcji timer_int() zdefiniowanej w module timer.c. Funkcja ta jest funkcją obsługi przerwania od licznika i steruje taktowaniem programowych liczników zdefiniowanych strukturą SOFTTIMER. Symbolu _timer_int użyto w module IRQ.asm do wykonania skoku z pakietu instrukcji obsługującego przerwanie 14 do funkcji obsługi przerwania timer_int(). Aby skrócić zapis definicji tablicy wektorów przerwań (_IRQ_service) w pliku IRQ.asm stworzono asemblerową makrodefinicję VEC_ENTRY, która umożliwia efektywne wykonanie skoku do funkcji obsługi przerwania. Za pomocą instrukcji stw b0,*--b15 zapisano stan rejestru b0 na stosie (rejestr b15 jest przez środowisko uruchomieniowe języka C używany jako wskaźnik stosu). Do tego rejestru przypisywany jest adres, pod który ma być wykonany

4 skok. Następnie wywoływana jest instrukcja skoku (b b0), po której stan rejestru b0 jest odtwarzany ze stosu (ldw *b15++,b0). Warto zauważyć, że po instrukcji skoku wykonanych zostanie jeszcze 5 następnych instrukcji. Z tego powodu umieszczono instrukcje puste nop. Pierwsza z nich czeka 2 cykle, a pozostałe dwie po jednym cyklu. Nie można użyć pojedynczej instrukcji nop odczekującej 4 cykle, z tego względu, że cały pakiet obsługi przerwania musi składać się z 8 instrukcji. Etykiety Default i DefaultNMI stanowią adresy domyślnych funkcji obsługi przerwań odpowiednio maskowalnego i niemaskowalnego. Dzięki makrodefinicji VEC_ENTRY pojedynczy wpis w tablicy wektorów przerwań staje się prostym wywołaniem makra z adresem funkcji przerwania, do której ma być wykonany skok (VEC_ENTRY _timer_int lub VEC_ENTRY Default). Aktualna tablica wektorów przerwań zawiera odwołania do funkcji domyślnych, funkcji _c_int00 i _timer_int. Do realizacji pierwszego zadania trzeba będzie dodać wpis wywołujący funkcję obsługi przerwania od drugiego licznika. Funkcje obsługi przerwania definiujemy z użyciem słowa kluczowego interrupt (zobacz funkcja timer_int() w module timer.c). Słowo to wymusza, aby powrót z funkcji był realizowany rozkazem b irp zamiast rozkazem b b3. b3 jest rejestrem, którego środowisko uruchomieniowe języka C używa do przechowywania adresu powrotu z wywołania zwykłej funkcji języka C. Etap drugi W etapie drugim następuje powiązanie urządzenia z funkcją obsługi przerwania z nim związaną. Kluczowa jest w tym miejscu funkcja typu...get_eventid() (np. TIMER_getEventId() użyta w module timer.c). Umożliwia ona pobranie identyfikatora zdarzenia od urządzenia (zmiennej typu Uint32), który następnie jest powiązany z numerem przerwania za pomocą funkcji IRQ_map(). Należy pamiętać, że numery przerwań zaczynają się od 0 i kończą numerem 15. Dodatkowo numery przerwań 2 i 3 są zarezerwowane i nie mogą być użyte do obsługi żadnych urządzeń. Powiązanie zdarzenia od urządzenia z numerem przerwania konfiguruje układ kontroli przerwań w taki sposób, że w momencie wystąpienia danego zdarzenia zostaje wywołana funkcja obsługi przerwania przypisana do zmapowanego numeru (np. w projekcie Scheduler IRQ_map(tid0,14) wiąże zdarzenie tid0 licznika nr 0 z funkcją obsługi przerwania timer_int). Dzieje się tak dlatego, że w tablicy wektorów przerwań IRQ_service na pozycji 14 znajduje się wpis VEC_ENTRY _timer_int. Żeby obsłużyć nowe urządzenie trzeba: zdefiniować dla niego funkcję obsługi przerwania (np. przerwanie()),

5 zamienić wpis w tablicy IRQ_service pod wybranym numerem (np. 12) z VEC_ENTRY Default na VEC_ENTRY _przerwanie, pobrać odpowiednie zdarzenie (np. zdarzenie) za pomocą fukcji typu...geteventid(), powiązać to zdarzenie z numerem przerwania za pomocą funkcji (np. IRQ_map(zdarzenie,12)). Etap trzeci Ostatni etap polega na zezwoleniu na obsługę wybranych przerwań. W tym celu należy: zezwolić na obsługę wybranych zdarzeń za pomocą funkcji IRQ_enable() (np. IRQ_enable(tid0) w module timer.c), zezwolić na obsługę przerwań niemaskowalnych poprzez wywołanie funkcji IRQ_nmiEnable() (patrz moduł main.c), zezwolić na globalną obsługę przerwań za pomocą funkcji IRQ_globalEnable(), ustawiającą flagę GIE w rejestrze CSR procesora. W module timer.c wywołano również funkcję IRQ_reset(tid0), która czyści flagę IF14 w rejestrze IFR usuwając ewentualne poprzednie zgłoszenie przerwania 14. Podobną funkcję ma IRQ_resetAll() wywołana w module main.c, z tym że ta funkcja kasuje historię wszystkich przerwań w rejestrze IFR. Dzięki wywołaniu funkcji typu IRQ_reset... mamy pewność, że po zezwoleniu na obsługę przerwań wywołane zostaną właściwe funkcje obsługi dla właściwych urządzeń. 2. Obsługa urządzeń zewnętrznych z wykorzystaniem biblioteki CSL Biblioteka CSL zawiera funkcje języka C umożliwiające obsługę urządzeń zewnętrznych w standaryzowany sposób. Dzięki temu ułatwia migrację kodu na dowolny procesor z zaimplementowaną formą tej biblioteki. Obsługa urządzenia rozpoczyna się od jego otwarcia za pomocą funkcji typu..._open().(np. TIMER_open() w module timer.c). Funkcja ta tworzy specjalnych uchwyt - wartość typu _Handle (np. TIMER_Handle ht0 w module timer.c) - do obsługi urządzenia. Uchwyt ten następnie jest wykorzystywany do konfiguracji za pomocą funkcji typu _config() lub _configargs() (np. TIMER_configArgs() w module timer.c). W ćwiczeniu nr 2 programowanym urządzeniem jest układ licznika. W dokumentacji biblioteki CSL

6 udostępnionej na stronie internetowej laboratorium znajduje się opis wszystkich funkcji związanych z obsługą liczników. Przygotowując się do laboratorium należy przygotować opis funkcji użytych w module timer.c zgodnie z wzorem podanym przy konfiguracji układu kontroli przerwań (forma notatki odręcznej lub wydruku do okazania na początku laboratorium). 3. Krótki opis projektu Scheduler Udostępniony na stronie laboratorium projekt Scheduler jest symulatorem nadajnika i odbiornika protokołu komunikacyjnego opisanego w instrukcji do ćwiczenia nr 1. Symulator ten wykorzystuje przerwanie od licznika do taktowania maszyn stanów odbiornika (moduł receiver.c), nadajnika (moduł transmitter.c) i sygnalizatora diodowego (moduł signals.c). W ramach przygotowania do ćwiczenia nr 2 należy sporządzić diagramy stanów tych trzech maszyn i okazać w formie notatki odręcznej lub wydruku na początku zajęć. Symulowane urządzenie ma następujące rejestry: xsr -rejestr danych nadajnika (char xsr), rdr -rejestr danych odbiornika (char rdr), csr -rejestr kontrolno statusowy nadajnika i odbiornika (char csr), dostępne jako zmienne globalne zdefiniowane w module port.c. W pliku nagłówkowym port.h natomiast zdefiniowane zostały stałe i makrodefinicje związane z polami bitowymi w symulowanym rejestrze csr. Operacje bitowe zostały zaimplementowane za pomocą makrodefinicji do operacji bitowych zdefiniowanych w pliku nagłówkowym bit_ops.h. Makrodefinicje te umożliwiają w czytelny dla programisty sposób zdefiniowanie operacji na polach bitowych wykorzystywanych w programowaniu urządzeń. W ramach przygotowania do ćwiczenia nr 2 należy przeanalizować makrodefinicje zdefiniowane w pliku bit_ops.h. W oparciu o wyniki analizy należy przygotować opis tych makrodefinicji w pliku nagłówkowym port.h, które wykorzystują makra zdefiniowane w pliku bit_ops.h. Opis należy sporządzić w formie notatki odręcznej lub wydruku i okazać na początku zajęć. W module comm.c znajduje się definicja funkcji communication(), która realizuje funkcję kanału komunikacyjnego. W sytuacji, gdy rejestr danych odbiornika jest wolny, a rejestr nadajnika zawiera bajt do przesłania, następuje przepisanie danych z rejestru xsr nadajnika do rejestru rdr odbiornika. W module timer.c znajdują się definicje softwarowych liczników (4 elementowa tablica struktur SOFTTIMER). Struktura SOFTTIMER zawiera następujące pola:

7 cnt- licznik zwiększany za każdym wywołaniem funkcji inc_timer(), prd- rejestr z wartością, przy której ma nastąpić przekręcenie licznika cnt oraz generacja sygnału trigger, wartość tego pola ustawiana jest za pomocą funkcji set_soft_timer_period(), go- flaga pozwalająca zatrzymać i wznowić pracę softwarowego licznika za pomocą funkcji star_timer() i stop_timer(). trigger- pole umożliwiające wyzwolenie dowolnej funkcji poprzez użycie funkcji soft_timer_trigger() (patrz pętla while w module main.c). Zdefiniowana w module timer.c funkcja setuptimer0() konfiguruje licznik nr 0 procesora TMS320C6713. Stałe zdefiniowane w pliku timer.h umożliwiają wywołanie przerwania od licznika co 1 ms, 10 ms, 100 ms lub co 1 s. Dodatkowo w module main.c funkcje set_soft_timer_period() konfigurują 4 liczniki softwarowe w taki sposób, aby maszyny stanów odbiornika, nadajnika i sygnałowa wywoływane były co określoną liczbę taktów licznika hardwarowego. Ponadto osobny licznik softwarowy wyzwala wywołanie funkcji communication() symulującej kanał komunikacyjny. W ramach wstępnego zapoznania się z działaniem programu Scheduler należy uruchomić projekt i zaobserwować wpływ zmiany okresów liczników softwarowych i licznika hardwarowego na działanie zaimplementowanych maszyn stanu. 4. Opis zadań do wykonania Zadanie 1 Do modułu timer.c dodać funkcję setuptimer1(), konfigurującą drugi układ hardwarowego licznika. Licznik ten ma generować przerwanie wywołujące funkcję timer_int1(). Funkcja obsługi przerwania timer_int1() powinna co 10 ms zakłócać kanał komunikacyjny symulowany przez funkcję communication(). Zakłócenie polegać będzie na zamianie aktualnie przesyłanego znaku na znak 1, powodując błąd przysłania pakietu w maszynie stanów odbiornika. Błąd ten zostanie zasygnalizowany przez sygnalizator diodowy mruganiem diody nr 1. Zadanie 2 Zmodyfikuj funkcję timer_int1() z zadania 1 w taki sposób, aby naprzemiennie przez 1s kanał komunikacyjny był sprawny, a przez kolejną ustawiał najstarszy bit każdego przesyłanego bajtu na 1. Zatem co drugą sekundę nie będzie można przesłać bajtu końca ramki ( 0 ma kod ASCII 0x30), co spowoduje przepełnienie tymczasowego bufora

8 curr_rmess w maszynie stanów odbiornika. W ramach zadania 2 należy tak zmodyfikować maszynę stanów odbiornika, aby uniknąć problemu przepełnienia bufora tymczasowego. Zadanie 3 Zmodyfikuj funkcję symulującą kanał komunikacyjny w taki sposób, aby nieodczytanie znaku w odbiorniku przed wysłaniem kolejnego znaku z nadajnika (przepełnienie bufora odbiornika) było sygnalizowane bitem nr 4 w rejestrze csr portu komunikacyjnego. Zdefiniuj makra RECEIVER_DATA_FULL, CLEAR_RECEIVER_DATA_FULL, SET_RECEIVER_DATA_FULL do odczytu i modyfikacji tego bitu podobne do tych zdefiniowanych dla bitu DATA_READY w pliku nagłówkowym port.h. Zmodyfikuj maszynę stanów odbiornika w taki sposób, aby po pojawieniu się tego problemu zasygnalizowała błąd przepełnienia (jednoczesne mruganie diodą nr 0 i 1) i rozpoczęła oczekiwanie na odbiór następnego pakietu. Kolejne dane z bieżącego pakietu będą interpretowane jako błędny pakiet sygnalizowany mruganiem diody nr 1. W funkcji obsługi przerwania timer_int1 należy co 10 s zmieniać częstotliwość wywołania maszyny stanów odbiornika symulując chwilowe spowolnienie jej działania i generację błędu przepełnienia bufora odbiornika.

PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 03

PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 03 PROCESORY SYGNAŁOWE - LABORATORIUM Ćwiczenie nr 03 Obsługa portu szeregowego, układu kodeka audio i pierwsze przetwarzanie sygnałów (cyfrowa regulacja głośności) 1. Konfiguracja układu szeregowego portu

Bardziej szczegółowo

Metody obsługi zdarzeń

Metody obsługi zdarzeń SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału

Bardziej szczegółowo

Przerwania, polling, timery - wykład 9

Przerwania, polling, timery - wykład 9 SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń

Bardziej szczegółowo

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu: Politechnika Białostocka Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej Instrukcja do zajęć laboratoryjnych z przedmiotu: Architektura i Programowanie Procesorów Sygnałowych Numer

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

Ć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

Mikroprocesor Operacje wejścia / wyjścia

Mikroprocesor Operacje wejścia / wyjścia Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych

Bardziej szczegółowo

Wykład PASCAL - Pliki tekstowe

Wykład PASCAL - Pliki tekstowe Podstawy programowania Wykład PASCAL - Pliki tekstowe 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą,

Bardziej szczegółowo

Organizacja typowego mikroprocesora

Organizacja typowego mikroprocesora Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają

Bardziej szczegółowo

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Wykład: 9 Łańcuchy znaków 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą, jak

Bardziej szczegółowo

Instrukcja do ćwiczenia P4 Analiza semantyczna i generowanie kodu Język: Ada

Instrukcja do ćwiczenia P4 Analiza semantyczna i generowanie kodu Język: Ada Instrukcja do ćwiczenia P4 Analiza semantyczna i generowanie kodu Język: Ada Spis treści 1 Wprowadzenie 1 2 Dane i kod 2 3 Wyrażenia 2 3.1 Operacje arytmetyczne i logiczne.................. 2 3.2 Podstawowe

Bardziej szczegółowo

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu: Politechnika Białostocka Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej Instrukcja do zajęć laboratoryjnych z przedmiotu: Architektura i Programowanie Procesorów Sygnałowych Kod:

Bardziej szczegółowo

Mechanizmy pracy równoległej. Jarosław Kuchta

Mechanizmy pracy równoległej. Jarosław Kuchta Mechanizmy pracy równoległej Jarosław Kuchta Zagadnienia Algorytmy wzajemnego wykluczania algorytm Dekkera Mechanizmy niskopoziomowe przerwania mechanizmy ochrony pamięci instrukcje specjalne Mechanizmy

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

Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów

Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów Marcin Stępniak Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów 1. Informacje Poniższe laboratoria zawierają podsumowanie najważniejszych informacji na temat

Bardziej szczegółowo

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

Kurs Podstawowy S7. Spis treści. Dzień 1 Spis treści Dzień 1 I System SIMATIC S7 - wprowadzenie (wersja 1401) I-3 Rodzina sterowników programowalnych SIMATIC S7 firmy SIEMENS I-4 Dostępne moduły i ich funkcje I-5 Jednostki centralne I-6 Podstawowe

Bardziej szczegółowo

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów

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

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Mechanizm przerwań i menadżer zdarzeń procesora sygnałowego F/C240

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Mechanizm przerwań i menadżer zdarzeń procesora sygnałowego F/C240 LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ Mechanizm przerwań i menadżer zdarzeń procesora sygnałowego F/C240 Strona 1 z 12 Opracował mgr inż. Jacek Lis (c) ZNE 2004 1. Mechanizm przerwań

Bardziej szczegółowo

PROE wykład 2 operacje na wskaźnikach. dr inż. Jacek Naruniec

PROE wykład 2 operacje na wskaźnikach. dr inż. Jacek Naruniec PROE wykład 2 operacje na wskaźnikach dr inż. Jacek Naruniec Zmienne automatyczne i dynamiczne Zmienne automatyczne: dotyczą kontekstu, po jego opuszczeniu są usuwane, łatwiejsze w zarządzaniu od zmiennych

Bardziej szczegółowo

XMEGA. Warsztaty CHIP Rok akademicki 2014/2015

XMEGA. Warsztaty CHIP Rok akademicki 2014/2015 XMEGA Warsztaty CHIP Rok akademicki 2014/2015 Plan warsztatów: Wprowadzenie do Atmel Studio (20/11/2014) Porty I/O (20/11/2014) Przerwania (27/11/2014) Wykorzystana literatura: [1] Dokumentacja ATMEL(www.atmel.com):

Bardziej szczegółowo

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

petla:... ; etykieta określa adres w pamięci kodu (docelowe miejsce skoku) DJNZ R7, petla

petla:... ; etykieta określa adres w pamięci kodu (docelowe miejsce skoku) DJNZ R7, petla Asembler A51 1. Symbole Nazwy symboliczne Symbol jest nazwą, która może być użyta do reprezentowania wartości stałej numerycznej, wyrażenia, ciągu znaków (tekstu), adresu lub nazwy rejestru. Nazwy symboliczne

Bardziej szczegółowo

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM Strona 1 z 7 Opracował mgr inż. Jacek Lis (c) ZNE 2004 1.Budowa przetwornika ADC procesora

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

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...

Bardziej szczegółowo

Pomoc dla użytkowników systemu asix 6. www.asix.com.pl. Strategia buforowa

Pomoc dla użytkowników systemu asix 6. www.asix.com.pl. Strategia buforowa Pomoc dla użytkowników systemu asix 6 www.asix.com.pl Strategia buforowa Dok. Nr PLP6024 Wersja: 29-01-2010 ASKOM i asix to zastrzeżone znaki firmy ASKOM Sp. z o. o., Gliwice. Inne występujące w tekście

Bardziej szczegółowo

Kompilator języka C na procesor 8051 RC51 implementacja

Kompilator języka C na procesor 8051 RC51 implementacja Kompilator języka C na procesor 8051 RC51 implementacja Implementowane typy danych bit 1 bit char lub char signed 8 bitów char unsigned 8 bitów int lub signed int 16 bitów unsigned int 16 bitów long lub

Bardziej szczegółowo

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA EGMONT INSTRUMENTS PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA EGMONT INSTRUMENTS tel. (0-22) 823-30-17, 668-69-75 02-304 Warszawa, Aleje Jerozolimskie 141/90 fax (0-22) 659-26-11

Bardziej szczegółowo

Aplikacja Sieciowa wątki po stronie klienta

Aplikacja Sieciowa wątki po stronie klienta Aplikacja Sieciowa wątki po stronie klienta Na ostatnich zajęciach zajmowaliśmy się komunikacją pomiędzy klientem a serwerem. Wynikiem naszej pracy był program klienta, który za pomocą serwera mógł się

Bardziej szczegółowo

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

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

asix5 Podręcznik użytkownika Strategia buforowa

asix5 Podręcznik użytkownika Strategia buforowa asix5 Podręcznik użytkownika Podręcznik użytkownika Dok. Nr PLP5024 Wersja: 29-07-2007 Podręcznik użytkownika asix5 ASKOM i asix to zastrzeżone znaki firmy ASKOM Sp. z o. o., Gliwice. Inne występujące

Bardziej szczegółowo

Wykład 2 Składnia języka C# (cz. 1)

Wykład 2 Składnia języka C# (cz. 1) Wizualne systemy programowania Wykład 2 Składnia języka C# (cz. 1) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Budowa projektu 2 Struktura programu

Bardziej szczegółowo

asix4 Podręcznik użytkownika DMS500 - drajwer protokołu analizatorów DURAG DMS 500 Podręcznik użytkownika

asix4 Podręcznik użytkownika DMS500 - drajwer protokołu analizatorów DURAG DMS 500 Podręcznik użytkownika asix4 Podręcznik użytkownika DMS500 - drajwer protokołu analizatorów DURAG DMS 500 Podręcznik użytkownika Dok. Nr PLP4021 Wersja: 04-10-2005 Podręcznik użytkownika asix4 ASKOM i asix to zastrzeżone znaki

Bardziej szczegółowo

Podstawy Programowania C++

Podstawy Programowania C++ Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:

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

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

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Tablice (jedno i wielowymiarowe), łańcuchy znaków Tablice (jedno i wielowymiarowe), łańcuchy znaków wer. 8 z drobnymi modyfikacjami! Wojciech Myszka Katedra Mechaniki i Inżynierii Materiałowej 2017-04-07 09:35:32 +0200 Zmienne Przypomnienie/podsumowanie

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

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41 3 Wstęp...11 1. Procesory serii TMS320F2802x/3x/6x Piccolo... 15 1.1. Organizacja układów procesorowych serii F2802x Piccolo...23 1.2. Organizacja układów procesorowych serii F2803x Piccolo...29 1.3. Organizacja

Bardziej szczegółowo

TRX API opis funkcji interfejsu

TRX API opis funkcji interfejsu TRX Krzysztof Kryński Cyfrowe rejestratory rozmów seria KSRC TRX API opis funkcji interfejsu Kwiecień 2013 Copyright TRX TRX ul. Garibaldiego 4 04-078 Warszawa Tel. 22 871 33 33 Fax 22 871 57 30 www.trx.com.pl

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

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

asix4 Podręcznik użytkownika CtMus04 - drajwer do wymiany danych z urządzeniami sterującymi MUS-04 firmy ELEKTORMETAL S.A.

asix4 Podręcznik użytkownika CtMus04 - drajwer do wymiany danych z urządzeniami sterującymi MUS-04 firmy ELEKTORMETAL S.A. asix4 Podręcznik użytkownika CtMus04 - drajwer do wymiany danych z urządzeniami sterującymi MUS-04 firmy ELEKTORMETAL S.A. w Cieszynie Podręcznik użytkownika Dok. Nr PLP4083 Wersja: 23-01-2007 Podręcznik

Bardziej szczegółowo

Przerwania w systemie mikroprocesorowym. Obsługa urządzeo wejścia/wyjścia

Przerwania w systemie mikroprocesorowym. Obsługa urządzeo wejścia/wyjścia Przerwania w systemie mikroprocesorowym 1 Obsługa urządzeo wejścia/wyjścia W każdym systemie mikroprocesorowym oprócz pamięci programu i pamięci danych znajduje się szereg układów lub urządzeo wejścia/wyjścia,

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i mikrokontrolery Przerwania laboratorium: 04 autor: mgr inż. Michał Lankosz dr hab. Zbisław Tabor,

Bardziej szczegółowo

Rok akademicki: 2013/2014 Kod: JFT s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Rok akademicki: 2013/2014 Kod: JFT s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne Nazwa modułu: Programowanie proceduralne Rok akademicki: 2013/2014 Kod: JFT-1-201-s Punkty ECTS: 5 Wydział: Fizyki i Informatyki Stosowanej Kierunek: Fizyka Techniczna Specjalność: Poziom studiów: Studia

Bardziej szczegółowo

UKŁAD EDMA I MODULACJA AMPLITUDOWA

UKŁAD EDMA I MODULACJA AMPLITUDOWA 1. Pytania na kartkówkę POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRONIKI MIKROSYSTEMÓW I FOTONIKI\ LABORATORIUM PROCESORÓW SYGNAŁOWYCH UKŁAD EDMA I MODULACJA AMPLITUDOWA zadeklarować odpowiednie zmienne globalne

Bardziej szczegółowo

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal

Bardziej szczegółowo

Hardware mikrokontrolera X51

Hardware mikrokontrolera X51 Hardware mikrokontrolera X51 Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Hardware mikrokontrolera X51 (zegar)

Bardziej szczegółowo

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których

Bardziej szczegółowo

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na

Bardziej szczegółowo

Technika mikroprocesorowa. Konsola do gier

Technika mikroprocesorowa. Konsola do gier K r a k ó w 1 1. 0 2. 2 0 1 4 Technika mikroprocesorowa Konsola do gier W yk o n a l i : P r o w a d z ą c y: P a w e ł F l u d e r R o b e r t S i t k o D r i n ż. J a c e k O s t r o w s k i Opis projektu

Bardziej szczegółowo

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy: Współpraca mikroprocesora z urządzeniami zewnętrznymi Urządzenia wejścia-wyjścia, urządzenia których zadaniem jest komunikacja komputera z otoczeniem (zwykle bezpośrednio z użytkownikiem). Do najczęściej

Bardziej szczegółowo

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych Dodatek A Wyświetlacz LCD. Przeznaczenie i ogólna charakterystyka Wyświetlacz ciekłokrystaliczny HY-62F4 zastosowany w ćwiczeniu jest wyświetlaczem matrycowym zawierającym moduł kontrolera i układ wykonawczy

Bardziej szczegółowo

MIKROKONTROLERY I MIKROPROCESORY

MIKROKONTROLERY I MIKROPROCESORY PLAN... work in progress 1. Mikrokontrolery i mikroprocesory - architektura systemów mikroprocesorów ( 8051, AVR, ARM) - pamięci - rejestry - tryby adresowania - repertuar instrukcji - urządzenia we/wy

Bardziej szczegółowo

PMiK Programowanie Mikrokontrolera 8051

PMiK Programowanie Mikrokontrolera 8051 PMiK Programowanie Mikrokontrolera 8051 Wykład 3 Mikrokontroler 8051 PMiK Programowanie mikrokontrolera 8051 - wykład S. Szostak (2006) Zmienna typu bit #define YES 1 // definicja stałych #define NO 0

Bardziej szczegółowo

Spis treści. 1 Moduł Modbus TCP 4

Spis treści. 1 Moduł Modbus TCP 4 Spis treści 1 Moduł Modbus TCP 4 1.1 Konfigurowanie Modułu Modbus TCP................. 4 1.1.1 Lista elementów Modułu Modbus TCP............ 4 1.1.2 Konfiguracja Modułu Modbus TCP.............. 5 1.1.3

Bardziej szczegółowo

Kurs SIMATIC S7-300/400 i TIA Portal - Podstawowy. Spis treści. Dzień 1. I System SIEMENS SIMATIC S7 - wprowadzenie (wersja 1503)

Kurs SIMATIC S7-300/400 i TIA Portal - Podstawowy. Spis treści. Dzień 1. I System SIEMENS SIMATIC S7 - wprowadzenie (wersja 1503) Spis treści Dzień 1 I System SIEMENS SIMATIC S7 - wprowadzenie (wersja 1503) I-3 Rodzina sterowników programowalnych SIMATIC S7 firmy SIEMENS I-4 Dostępne moduły i ich funkcje I-5 Jednostki centralne I-6

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

Wstęp. do języka C na procesor 8051. (kompilator RC51)

Wstęp. do języka C na procesor 8051. (kompilator RC51) Wstęp do języka C na procesor 8051 (kompilator RC51) Kompilator języka C Kompilator RC51 jest kompilatorem języka C w standardzie ANSI Ograniczeń w stosunku do ANSI jest niewiele głównie rzadkie operacje

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6 JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 6 1 SPECYFIKATOR static Specyfikator static: Specyfikator ten powoduje, że zmienna lokalna definiowana w obrębie danej funkcji nie jest niszczona

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

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float

Bardziej szczegółowo

Podstawy Informatyki Układ przerwań

Podstawy Informatyki Układ przerwań maszyny W Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu maszyny W 1 Wprowadzenie Przerwania we współczesnych procesorach Rodzaje systemów przerwań Cykl rozkazowy

Bardziej szczegółowo

MIKROPROCESORY architektura i programowanie

MIKROPROCESORY architektura i programowanie SYSTEM PRZERWAŃ (dla µ-kontrolerów rodziny 51) pomysł przerwań zewnętrznych i programowych to kolejny, genialny fundament konstrukcji procesorów cyfrowych Naturalnie sekwencyjne wykonywanie programu może

Bardziej szczegółowo

Start Bity Bit Stop 1 Bit 0 1 2 3 4 5 6 7 Par. 1 2. Rys. 1

Start Bity Bit Stop 1 Bit 0 1 2 3 4 5 6 7 Par. 1 2. Rys. 1 Temat: Obsługa portu komunikacji szeregowej RS232 w systemie STRC51. Ćwiczenie 2. (sd) 1.Wprowadzenie do komunikacji szeregowej RS232 Systemy bazujące na procesorach C51 mogą komunikować się za pomocą

Bardziej szczegółowo

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,

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

Spis treści. Dzień 1. I Konfiguracja sterownika (wersja 1410) II Edycja programu (wersja 1406) III Środowisko TIA Portal (wersja 1410)

Spis treści. Dzień 1. I Konfiguracja sterownika (wersja 1410) II Edycja programu (wersja 1406) III Środowisko TIA Portal (wersja 1410) Spis treści Dzień 1 I Konfiguracja sterownika (wersja 1410) I-3 Zadanie Tworzenie konfiguracji sprzętowej I-4 Co jest potrzebne by zacząć? I-5 TIA Portal ekran startowy I-6 Tworzenie nowego projektu I-7

Bardziej szczegółowo

Wstępdo assemblera MA51

Wstępdo assemblera MA51 no MACRO yes Wstępdo assemblera MA51 c.d. makrodefinicje Ryszard J. Barczyński, 2017 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Assembler

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i mikrokontrolery Obsługa portu szeregowego laboratorium: 05 autor: mgr inż. Michal Lankosz dr hab.

Bardziej szczegółowo

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Współpraca z układami peryferyjnymi i urządzeniami zewnętrznymi Testowanie programowe (odpytywanie, przeglądanie) System przerwań Testowanie programowe

Bardziej szczegółowo

Język C++ zajęcia nr 2

Język C++ zajęcia nr 2 Język C++ zajęcia nr 2 Inicjalizacja Definiowanie obiektu może być połączone z nadaniem mu wartości początkowej za pomocą inicjalizatora, który umieszczany jest po deklaratorze obiektu. W języku C++ inicjalizator

Bardziej szczegółowo

Język C++ Różnice między C a C++

Język C++ Różnice między C a C++ Język C++ Różnice między C a C++ Plan wykładu C a C++ Różnice ogólne Typy Deklaracje zmiennych C++ jako rozszerzenie C Domyślne argumenty funkcji Przeciążanie funkcji Referencje Dynamiczny przydział pamięci

Bardziej szczegółowo

PLC1: Programowanie sterowników logicznych SIEMENS SIMATIC S7-300/400 - kurs podstawowy

PLC1: Programowanie sterowników logicznych SIEMENS SIMATIC S7-300/400 - kurs podstawowy PLC1: Programowanie sterowników logicznych SIEMENS SIMATIC S7-300/400 - kurs podstawowy DZIEŃ 1 Idea sterowania procesu lub maszyny: Sterowanie za pomocą przekaźników Sterowanie dedykowane Sterowanie za

Bardziej szczegółowo

ad a) Konfiguracja licznika T1 Niech nasz program składa się z dwóch fragmentów kodu: inicjacja licznika T1 pętla główna

ad a) Konfiguracja licznika T1 Niech nasz program składa się z dwóch fragmentów kodu: inicjacja licznika T1 pętla główna Technika Mikroprocesorowa Laboratorium 4 Obsługa liczników i przerwań Cel ćwiczenia: Celem ćwiczenia jest nabycie umiejętności obsługi układów czasowo-licznikowych oraz obsługi przerwań. Nabyte umiejętności

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

Język FBD w systemie Concept

Język FBD w systemie Concept 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

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780 Dane techniczne : Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780 a) wielkość bufora znaków (DD RAM): 80 znaków (80 bajtów) b) możliwość sterowania (czyli podawania kodów znaków) za pomocą

Bardziej szczegółowo

Pliki. Operacje na plikach w Pascalu

Pliki. Operacje na plikach w Pascalu Pliki. Operacje na plikach w Pascalu ścieżka zapisu, pliki elementowe, tekstowe, operacja plikowa, etapy, assign, zmienna plikowa, skojarzenie, tryby otwarcia, reset, rewrite, append, read, write, buforowanie

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 użytkownika

Instrukcja użytkownika Instrukcja użytkownika Obsługa kas fiskalnych Wersja 2013.0.1 Spis treści 1 INSTALACJA PROGRAMÓW KOMUNIKACYJNYCH.... 3 2 PRZYGOTOWANIE KONFIGURACJI COMARCH ERP OPTIMA DO WSPÓŁPRACY Z KASĄ FISKALNĄ ELZAB/SHARP/NOVITUS...

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Wykład 3 Składnia języka C# (cz. 2)

Wykład 3 Składnia języka C# (cz. 2) Wizualne systemy programowania Wykład 3 Składnia języka C# (cz. 2) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Metody 2 Metody W C# nie jest

Bardziej szczegółowo

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018 Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy

Bardziej szczegółowo

Pomoc dla użytkowników systemu asix 6 i 7. Drajwer Bufor. Dok. Nr PLP6021 Wersja:

Pomoc dla użytkowników systemu asix 6 i 7.  Drajwer Bufor. Dok. Nr PLP6021 Wersja: Pomoc dla użytkowników systemu asix 6 i 7 www.asix.com.pl Drajwer Bufor Dok. Nr PLP6021 Wersja: 2012-03-16 ASKOM i asix to zastrzeżone znaki firmy ASKOM Sp. z o. o., Gliwice. Inne występujące w tekście

Bardziej szczegółowo

Temat: Projektowanie i badanie liczników synchronicznych i asynchronicznych. Wstęp:

Temat: Projektowanie i badanie liczników synchronicznych i asynchronicznych. Wstęp: Temat: Projektowanie i badanie liczników synchronicznych i asynchronicznych. Wstęp: Licznik elektroniczny - układ cyfrowy, którego zadaniem jest zliczanie wystąpień sygnału zegarowego. Licznik złożony

Bardziej szczegółowo

Materiały dodatkowe Krótka charakterystyka protokołu MODBUS

Materiały dodatkowe Krótka charakterystyka protokołu MODBUS Katedra Inżynierii Systemów Sterowania Materiały dodatkowe Krótka charakterystyka protokołu MODBUS Opracowali: mgr inż. Tomasz Karla Data: Luty, 2017 r. Dodatkowe informacje Materiały dodatkowe mają charakter

Bardziej szczegółowo

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji. 1 Moduł Modbus TCP Moduł Modbus TCP daje użytkownikowi Systemu Vision możliwość zapisu oraz odczytu rejestrów urządzeń, które obsługują protokół Modbus TCP. Zapewnia on odwzorowanie rejestrów urządzeń

Bardziej szczegółowo

Program 6. Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje:

Program 6. Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje: Program 6 Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje: Funkcja pobierz_osobe wczytuje dane osoby podanej jako argument. Funkcja wypisz_osobe

Bardziej szczegółowo

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz] Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową

Bardziej szczegółowo

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor. Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz

Bardziej szczegółowo

Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011

Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011 Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011 1 Spis treści 1 Charakterystyka projektu. 3 2 Schematy układów elektronicznych. 3 2.1 Moduł czujników.................................

Bardziej szczegółowo

Klient-Serwer Komunikacja przy pomocy gniazd

Klient-Serwer Komunikacja przy pomocy gniazd II Klient-Serwer Komunikacja przy pomocy gniazd Gniazda pozwalają na efektywną wymianę danych pomiędzy procesami w systemie rozproszonym. Proces klienta Proces serwera gniazdko gniazdko protokół transportu

Bardziej szczegółowo

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje

Bardziej szczegółowo

Wprowadzenie do projektu QualitySpy

Wprowadzenie do projektu QualitySpy Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować

Bardziej szczegółowo

ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1

ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1 Instrukcja obsługi aplikacji 1 1./ instalacja aplikacji. Aplikacja służy do zarządzania, konfigurowania i testowania modułów firmy Advance Electronic wyposażonych w RS485 pracujących w trybie half-duplex.

Bardziej szczegółowo