Programowy emulator DS1990
|
|
- Dagmara Wasilewska
- 6 lat temu
- Przeglądów:
Transkrypt
1 Programowy emulator DS1990 Oprogramowanie dla trybu 1-Wire Slave Chyba każdy z elektroników zna interfejs 1-Wire. Wystarczy wspomnieć, jaką popularnością cieszyły się niegdyś układy DS1990 powszechnie stosowane we wszelkiego rodzaju systemach kontroli dostępu czy też popularne i chętnie stosowane także dzisiaj termometry scalone typu DS18x20. Nie była to popularność przypadkowa. Oprócz funkcjonalności, którą miały, nie bez znaczenia był fakt względnie łatwej, programowej implementacji zastosowanego w nich niezmiernie ciekawego i oryginalnego interfejsu komunikacyjnego, który nie ma swoich odpowiedników w świecie elektroniki. Każdy element z interfejsem 1-Wire ma swój unikalny numer seryjny i dlatego szereg układów wyposażonych w ten interfejs komunikacyjny może pracować na jednej i co ważne pojedynczej magistrali danych będącej jednocześnie źródłem zasilania. Stanowiło to o niespotykanej oryginalności interfejsu opracowanego przez firmę Dallas Semiconductor (w tej chwili Maxim). Pomimo tych niepodważalnych zalet, nie spotkałem się z systemami, które interfejs 1-Wire wykorzystywałyby do komunikacji pomiędzy własnymi rozwiązaniami sprzętowymi, a spotykane rozwiązania ograniczały się do programowej realizacji obsługi wspomnianej magistrali wyłącznie w celu umożliwienia współpracy z firmowymi peryferiami producenta, mimo że udostępnił on (co oczywiste) pełną specyfikację interfejsu. Z jednej strony nie budzi to zdziwienia, ponieważ firma Maxim dysponuje prawem patentowym na specyfikację tej magistrali, z drugiej zaś nic nie stoi na przeszkodzie, by ten arcyciekawy interfejs komunikacyjny z jego wszystkimi zaletami wykorzystać we własnych konstrukcjach w celu umożliwienia obustronnej współpracy urządzeń niebędących produktami firmy Maxim. Sprowadza się to do opracowania własnego elementu typu Slave, który obsługiwałby oferowaną przez interfejs 1-wire funkcjonalność, włączając w to mechanizm wyszukiwania adresów podłączonych do magistrali peryferiów (tzw. SEARCH ROM). Zademonstrujemy to na przykładzie programowej realizacji układu DS1990, opartej o dowolny mikrokontroler wyposażony w przerwanie zewnętrzne oraz timer sprzętowy (w naszym przypadku wybrano popularny mikrokontroler AVR typu ATmega8 taktowany wewnętrznym oscylatorem 8 MHz). Podstawowe wiadomości o 1-Wire Zanim jednak przejdę do opisu warstwy programowej (tym razem w języku C) niezbędne jest przypomnienie choćby podstawowych informacji na temat samego interfejsu będącego przedmiotem naszych rozważań, tym razem jednak z punktu widzenia układu podrzędnego typu Slave. Jak wspomniano, komunikacja na magistrali 1-Wire odbywa się za pomocą pojedynczego przewodu (stąd nazwa interfejsu), który oprócz linii danych może jednocześnie pełnić rolę przewodu zasilającego w konfiguracji tzw. zasilania pasożytniczego. Na magistrali 1-Wire transmisja przebiega w konfiguracji Master < > Slave. Układ nadrzędny (Master) steruje wyszukiwaniem i adresowaniem układów podrzędnych (Slave), steruje przepływem danych oraz generuje sygnał zegarowy, inicjuje wysyłanie i odbieranie danych. Dane przesyłane są synchronicznie z prędkością do 16,3 kbps w trybie standard oraz do 115 kbps w trybie overdrive. Należy szczególnie podkreślić, iż przesłanie każdego bitu informacji niezależnie od kierunku transmisji jest inicjowane wyłącznie przez układ Master za pomocą opadającego zbocza sygnału (ściągnięcie magistrali do logicznego 0 przez czas z zakresu 1 5 ms). Po wystąpieniu takiego zbocza sygnału układ Slave podejmuje różne działania, których scenariusz zależy od oczekiwanego kierunku transmisji. Tego typu organizacja protokołu transmisji zapewnia prawidłową synchronizację przesyłanych danych bez potrzeby stosowania dodatkowych linii sterujących. Minimalny czas trwania pojedynczego bitu jest ściśle określony i wynosi 60 ms + 1 ms na tak zwany czas odtworzenia zasilania (recovery time). Wyznacza on maksymalną prędkość transmisji w trybie standard (1/61 ms=16,3 kbps). Co ważne, każde z urządzeń dołączonych do magistrali musi mieć wyjście typu otwarty dren lub otwarty kolektor, a linia danych jest dołączona do zasilania przez rezystor podciągający o typowej wartości 4,7 kv. W stanie bezczynności powoduje to utrzymywanie się poziomu wysokiego na tej linii i zapewnia zasilanie urządzeń z 1-Wire pracujących w trybie zasilania pasożytniczego. Przesyłane słowa są zawsze 1-bajtowe, a jako pierwszy jest transmitowany bit najmniej znaczący. Dodatkową i jedną z najważniejszych cech urządzeń z interfejsem 1-Wire jednocześnie odróżniającą je np. od urządzeń z interfejsem I 2 C, jest unikatowy, 8-bajtowy identyfikator układu zapisany w pamięci ROM. Jest on niepowtarzalny i właściwy tylko, i wyłącznie pojedynczemu układowi scalonemu (w pamięci komponentów produkowanych przez firmę Maxim-Dallas jest zapisywany na etapie produkcji). Najmniej znaczący bajt tego identyfikatora za- ELEKTRONIKA PRAKTYCZNA 11/
2 Rysunek 1. Procedura inicjalizacji magistrali 1-wire Rysunek 2. Sekwencja sygnałów sterujących obrazująca operację zapisu logicznego 0 wykonywaną przez układ Slave a inicjowaną przez układ Master. Rysunek 3. Sekwencja sygnałów sterujących obrazująca operację zapisu logicznej 1 wykonywaną przez układ Slave a inicjowaną przez układ Master. Rysunek 4. Sekwencja sygnałów sterujących obrazująca operację odczytu stanu magistrali 1-wire wykonywaną przez układ Slave a inicjowaną przez układ Master. wiera kod rodziny układów (Family code), kolejne 6 bajtów to unikatowy kod konkretnego egzemplarza (właściwy adresu układu), a najbardziej znaczący bajt zawiera sumę kontrolną CRC (Cyclic Redundancy Check). Suma ta wyliczana jest na podstawie poprzednich siedmiu bajtów i ustalana na etapie produkcji (służy do kontroli poprawności transmisji). Protokół transmisji danych interfejsu 1-Wire definiuje kilka podstawowych sygnałów sterujących i stanów pracy magistrali: Sygnał Reset wysyłany przez układ Master, będący żądaniem zgłoszenia się układów Slave. Sygnał Presence, wysyłany przez układy Slave, będący potwierdzeniem obecności tych układów na magistrali danych. Zapis logicznej 1 i 0. Odczyt logicznej 1 i 0. Najlepszym sposobem na zrozumienie zależności czasowych dla poszczególnych stanów pracy magistrali jest zobrazowanie ich na rysunkach przedstawiających sekwencje tychże sygnałów widziane z punktu widzenia układu Slave. Na rysunku 1 przedstawiono sekwencję inicjalizacji magistrali 1-wire, która to, jak wspomniano wcześniej, umożliwia układowi Master wykrycie podłączonych do magistrali układów Slave. Sekwencja ta rozpoczyna się poprzez wysłanie przez układ Master sygnału Reset (ściągnięcie magistrali do masy przez czas ms) i po odczekaniu czasu ms, odpowiedzią układów Slave poprzez wysłanie sygnału Presence (ściągnięcie magistrali do masy przez czas ms). Na rysunkach 2 i 3 przedstawiono sekwencje sygnałów sterujących obrazujące operację zapisu danych (logicznego 0 i 1 ) przez układ Slave na magistralę 1-wire a będącą wynikiem żądania odczytu ze strony układu Master (ściągnięcie magistrali do masy przez czas 1 5 ms). Na rysunku 4 przedstawiono sekwencję sygnałów sterujących obrazującą operacje odczytu danych wykonywaną przez układ Slave a będącą wynikiem zapisu tychże danych dokonanego przez układ Master (jak wcześniej, inicjowaną poprzez ściągnięcie magistrali do masy przez czas 1 5 μs). Na koniec przedstawię graf funkcjonalny bodajże najciekawszego mechanizmu charakterystycznego wyłącznie dla magistrali tego typu a przeznaczony do wyszukania adresów wszystkich układów do niej przyłączonych nazwany Search ROM. Należy pamiętać, że początkowo układ Master nie zna adresów i liczby układów przyłączonych do magistrali, w związku, z czym musi istnieć pewny mechanizm ich ustalenia. Operacja taka jest inicjowana przez układ Master za pomocą rozkazu 0xF0 (Search ROM). Następnie każdy układ Slave wysyła na magistralę wartość pierwszego, najmniej znaczącego bitu swojego numeru ID (oczywiście zapis jest zawsze inicjowany przez układ Master). Mając na uwadze specyfikę interfejsu 1-Wire polegająca na tym, że wszystkie układy podłączone są do tej samej magistrali danych należy pamiętać, iż na odebraną komendę przeszukiwania odpowiedzą dokładnie w tym samym czasie wszystkie układy Slave. W związku z tym rezultat odbierany przez układ Master jest iloczynem logicznym stanów wyjść wszystkich tych układów (tzw. wired and). Kolejnym krokiem jest wystawianie przez układy Slave zanegowanego, pierw- 104 ELEKTRONIKA PRAKTYCZNA 11/2013
3 szego bitu swojego numeru ID (oczywiście jak zwykle, na żądanie układu Master). W wyniku wspomnianych wcześniej dwóch operacji zapisu układ Master decyduje i wystawia, a układ Slave odczytuje, pierwszy, najmniej znaczący bit, znalezionego (w tej chwili przez układ Master) numeru ID. Jeśli przesłana przez układ Master wartość (w tym trzecim kroku) pierwszego bitu numeru ID jest zgodna z rzeczywistą wartością pierwszego, najmniej znaczącego bitu numeru ID wybranego układu Slave, układ ten kontynuuje proces aż do przebrnięcia przez wszystkie 64 bity numeru. Jeśli taka zgodność nie występuje, układ Slave Rysunek 5. Sekwencja sygnałów sterujących obrazująca mechanizm znajdowania numerów ID układów Slave (z punktu widzenia tychże układów). ELEKTRONIKA PRAKTYCZNA 11/
4 Listing 1. Deklaracja identyfikatora oraz zmiennej stanu //Numer ID naszego emulatora DS1990 uint8_t ID[8] = R, o, b, e, r, t, W,0; //Stan procedury obsługi magistrali 1-wire volatile uint8_t Listing 2. Deklaracja typu wyliczeniowego opisującego stan pracy procedury enum IDLE, //Stan bezczynności układu Slave - oczekiwanie na sygnał Reset WAIT_FOR_COMMAND, //Oczekiwanie na rozkaz sterujący READ_ROM, //Oczekiwanie na rozkaz READ_ROM (odczyt numeru ID) SEARCH_ROM //Oczekiwanie na procedurę SEARCH_ROM ; Programowy emulator 1-Wire W tym miejscu dysponujemy już niezbędna wiedzą z zakresu protokołu 1-wire, aby zrealizować zamierzone założenia w związku, z czym przejdźmy do realizacji programowej na Listing 3. Konfigurowanie obsługi przerwania INT0 int main(void) //Aktualizacja sumy CRC8 z pierwszych 7 bajtów tablicy numeru ID naszego układu Slave for(uint8_t i=0; i<7; i++) ID[7] = _crc_ibutton_update(id[7], ID[i]); //Konfiguracja przerwania INT0: zbocze opadające MCUCR = (1<<ISC01); //Odblokowanie przerwania INT0 GICR = (1<<INT0); //Odblokowanie przerwania od przepełnienia licznika Timer1 (obsługa timeout u) TIMSK = (1<<TOIE1); sei(); while(1); przykładzie emulacji układu DS1990. Jak wiemy, każda operacja mająca miejsce na magistrali 1-wire inicjowana jest przez układ Master poprzez zciągnięcie tejże magistrali do logicznego 0. W związku z tym naturalnym sposobem na obsłużenie protokołu ze strony układu Slave jest wykorzystanie przerwania zewnętrznego (np. INT0) skonfigurowanego w ten sposób by zachodziło przy opadającym zboczu sygnału. Wykorzystanie przerwania zewnętrznego jest o tyle niezbędne, Listing 4. Definicje zawarte w pliku defines.h #define TIMER1_PRESCALER 8 //Wartośc preskalera licznika Timer1 #define START_TIMER1 TCNT1 = 0; TCCR1B = (1<<CS11) //Konfiguracja Timer1: tryb normalny, preskaler = 8 #define STOP_TIMER1 TCCR1B = 0 //Zatrzymanie licznika Timer1 //Przeliczanie mikrosekund na tyknięcia zegara Timer1 przy zadanej wartości preskalera #define microseconds(us) ((us)*(f_cpu/ )/timer1_prescaler) //Przeliczanie mikrosekund na tyknięcia zegara Timer1 pozostałe do przeładowania licznika (uruchomienia procedury TIMER1_OVF_vect) #define timeout(us) (0xFFFF - ((us)*(f_cpu/ )/timer1_prescaler)) //Definicja umożliwiająca konfigurację licznika Timer1 w celu odmierzenia zadanego czasu do jego przeładowania [w us] #define START_TIMEOUT(us) TCNT1 = timeout(us); TCCR1B = (1<<CS11) //Tryb normalny, preskaler = 8 #define WIRE1_PIN PIND #define WIRE1_DDR DDRD #define WIRE1_NR PD2 #define RESET_1WIRE WIRE1_DDR = (1<<WIRE1_NR) //Ściągnięcie magistrali 1-wire do 0 poprzez ustawienie kierunku portu jako wyjściowy #define SET_1WIRE WIRE1_DDR &= ~(1<<WIRE1_NR) //Zwolnienie magistrali 1-wire i tym samym podciągnięcie rezystorem do plusa zasilania Listing 5. Czynności wykonywane przez program w stanie IDLE case IDLE: //Uruchamiamy Timer odmierzający czas oczekiwanego impulsu RESET START_TIMER1; //Czekamy, aż Master zwolni magistralę 1-wire while(!(wire1_pin & (1<<WIRE1_NR))); //Odebrano oczekiwany sygnał RESET if(tcnt1 > microseconds(460)) //Wystawiamy sygnał PRESENCE by zasygnalizować obecność //układu Slave na magistrali 1-wire _delay_us(240); //Zerowanie zmiennych pomocniczych Command = 0; bitindex = 0; //Zmiana stanu procedury obsługi magistrali 1-wire slavestatus = WAIT_FOR_COMMAND; //Uruchamiamy zegar odmierzający timeout = 1ms //(oczekiwanie na rozkaz) START_TIMEOUT(1000); pozostaje nieaktywny aż do następnego sygnału Reset i żądania wyszukiwania numerów ID (rozkazu 0xF0). W ten prosty sposób układ Master, po przejściu przez każde 64 bity numeru ID, dysponuje każdorazowo kolejnym, znalezionym numerem ID układu pracującego na magistrali 1-wire. Oczywiście opis ten przedstawiono z punktu widzenia układu Slave, gdyż algorytm dla układu Master jest nieco bardziej skomplikowany (bazuje na algorytmie tzw. drzewa binarnego). iż magistrala 1-wire wymusza dość rygorystyczne wymogi czasowe, więc wykorzystanie typowego portu I/O i tzw. pollingu jest niewystarczające w przypadku, gdy układ Slave miałby wykonywać jeszcze inne czasowo zależne operacje niezwiązane z obsługą magistrali. Wykorzystanie przerwania zewnętrznego niesie za sobą tę dodatkową zaletę, iż cała obsługa protokołu zostanie zamknięta w ramach jednej, krótkiej funkcji ISR, a program główny może realizować inną funkcjonalność, niezbędną z punktu widzenia konkretnej aplikacji. Zadeklarujmy, zatem dwie podstawowe zmienne globalne: numer seryjny naszego urządzenia Slave oraz zmienną przechowującą aktualny stan procedury obsługi układu Slave magistrali 1-wire (listing 1). Dodatkowo, aby poprawić czytelność programu obsługi, wprowadzimy typ wyliczeniowy opisujący stan pracy wspomnianej procedury (listing 2). W związku z tym, że obsługa protokołu odbywa się w całości w ramach procedury obsługi przerwania INT0 (INT0_ vect) funkcja główna naszego programu obsługi ogranicza się wyłącznie do konfiguracji niezbędnych peryferiów mikrokontrolera (listing 3) W programie obsługi jest używany także timer sprzętowy (w tym przypadku 16-bitowy Timer1) oraz przerwanie od jego przepełnienia (TIMER1_OVF_vect). Użycie tego 106 ELEKTRONIKA PRAKTYCZNA 11/2013
5 peryferium konieczne jest w przypadku, gdy układ Master z jakiś powodów wysłałby niepełną sekwencję sygnałów sterujących (np. tylko sygnał Reset bez jakichkolwiek dalszych komend), co spowodowałoby zmianę stanu procedury obsługi magistrali 1-Wire na predefiniowaną wartość Rysunek 6. Rzeczywiste przebiegi sygnałów sterujących WAIT_FOR_COMMAND i oczekiwanie na rozkaz sterujący magistrali 1-wire dla przypadku rozkazu READ_ROM wysłanego do naszego układu Slave. uniemożliwiając dalsze poprawne funkcjonowanie algorytmu obsługi. Timer ten każdorazowo jest inicjowany Listing 6. Cześć programu służąca do odbioru komendy sterującej w taki sposób, by po upłynięciu zadanego czasu (zacase WAIT_FOR_COMMAND: _delay_us(15); leżnego od oczekiwanych zadań po stronie układu if(wire1_pin & (1<<WIRE1_NR)) Command = (1<<bitIndex); Master) przywrócić stan spoczynkowy procedury if(++bitindex == 8) //Odebrano pełen rozkaz obsługi (Idle) w przypadku błędów po stronie ukła //Zatrzymujemy zegar odmierzający timeout du nadrzędnego. Aby poprawić czytelność prograswitch(command) mu obsługi oraz uprościć zapis niektórych wartości, case 0x33: //Zmiana stanu procedury obsługi magistrali 1-wire wprowadzono dodatkowe definicje (dodatkowy plik slavestatus = READ_ROM; defines.h). Jego zawartość pokazano na listingu 4. //Uruchamiamy zegar odmierzający timeout = 5ms (oczekiwanie na //odczyt numeru ID) Przejdźmy zater do właściwego programu START_TIMEOUT(5000); obsługi ukłądu Slave magistrali 1-wire. Jak wspocase 0xF0: mniano wcześniej, stanem spoczynkowym układu //Zmiana stanu procedury obsługi magistrali 1-wire slavestatus = SEARCH_ROM; Slave jest oczekiwanie na sygnał RESET, a po jego //Uruchamiamy zegar odmierzający timeout = 15ms (oczekiwanie na wykryciu, wystawienie sygnału PRESENCE i ocze//procedurę SEARCH_ROM) START_TIMEOUT(15000); kiwanie na rozkaz sterujący. Ten algorytm opisuje default: część programu obsługi zaprezentowana na listin gu 5 (o wykonaniu poszczególnych części programu //Zerowanie zmiennych pomocniczych bitindex = 0; byteindex = 0; searchindex = 0; obsługi decyduje wartość zmiennej slavestatus). Po wykonaniu powyższych czynności pokazanych na list. 5, układ Slave oczekuje (przez czas 1 ms) na odebranie komendy sterującej i w zależności od jej rodzaju realizuje pozostałe funkcje typowe dla sprzętowerodzaju odebranej komendy sterującej, realizowana jest stogo układu DS1990. Nasze urządzenie obsługuje 2 rodzaje sowna część programu obsługi. komend sterujących: READ_ROM i SEARCH_ROM. Odbiór Rozkaz READ_ROM, czyli odczyt numeru seryjnego komendy sterującej realizuje część programu obsługi urząprzez układ Master realizuje niewielka część programu obdzenia pokazana na listingu 6. Następnie, w zależności od sługi pokazana na listingu 7. REKLAMA ELEKTRONIKA PRAKTYCZNA 11/
6 Rozkaz SEARCH_ROM, czyli mechanizm wyszukiwania numeru seryjnego wykonywany przez układ Master, realizuje fragment programu pokazany na listingu 8. Wspomniana wcześniej procedura obsługi przerwania od przepełnienia licznika Timer1 niezbędna z punktu widzenia odmierzania tzw. czasu timeout zamieszczono na listingu 9. Dla porządku przedstawię deklaracje zmiennych lokalnych procedury obsługi magistrali 1-Wire (INT0_ vect). Zamieszczono je na listingu 10. Podsumowanie Programowa realizacja układu Slave interfejsu 1-wire nie jest trudna. Przedstawiony opis programu może być dobrym wstępem do samodzielnego eksperymentowania i umożliwia zastosowanie tego ciekawego interfejsu komunikacyjnego we własnych aplikacjach. Przykładami mogą być dwa z moich wcześniejszych projektów wykonane przy użyciu pakietu Bascom: c-button (kopiarka pastylek DS1990), 1-wire LED (4 segmentowy, 3-kolorowy wyświetlacz LED wyposażony w interfejs 1-wire). Z zastosowaniem tego ostatniego projektu wykonałem prosty system mikroprocesorowy, w którym na jednej magistrali 1-Wire znajdowały się dwa termometry DS18S20 oraz wyświetlacz, a wszystko sterowane przez niewielki mikrokontroler ATtiny2313. Na rysunku 6 jako ciekawostkę przedstawiono rzeczywiste przebiegi sygnałów sterujących magistrali 1-Wire dla przypadku rozkazu READ_ROM wysłanego do urządzenia. Robert Wołgajew, EP Listing 7. Programowa realizacja rozkazu READ_ROM case READ_ROM: //Jeśli aktualnie transmitowany bit=0 -> ściągamy magistralę //1-wire przez kolejne 45us. Jeśli ten bit=1 -> nie robimy nic, //magistrala zostanie podciągnięta do VCC if((id[byteindex]&(1<<bitindex)) == 0) _delay_us(45); //Przesłano właśnie 8 bitów bieżącego bajta if(++bitindex == 8) bitindex = 0; //Przesłano właśnie wszystkie bajty numeru ID zatrzymujemy //zegar odmierzający timeout if(++byteindex == 8) Listing 8. Programowa realizacja rozkazu SEARCH_ROM case SEARCH_ROM: //W trakcie procedury SEARCH_ROM wykonywane są 3 operacje //(określone wartością zmiennej searchindex) dla każdego bitu //adresu ID: wysłanie bitu, wysłanie zanegowanego bitu oraz //odczyt bitu przesłanego przez układ Master i następujące po //tym porównanie odczytanego bitu z bitem adresu ID urządzenia //Slave switch(searchindex) case 0: //Wysłanie bitu z bieżącej pozycji numeru ID if((id[byteindex]&(1<<bitindex)) == 0) _delay_us(45); case 1: //Wysłanie zanegowanego bitu z bieżącej pozycji numeru ID if((id[byteindex]&(1<<bitindex))!= 0) _delay_us(45); case 2: //Odczyt bitu przesłanego przez układ Master //Układ Master przesyła w odpowiedzi bieżący bit a Slave porównuje //go ze swoim bitem w tym miejscu numeru ID i jeśli się zgadza, to //proces podąża dalej a jeśli nie to Slave przechodzi do bezczynności _delay_us(15); if((((id[byteindex]&(1<<bitindex)) == 0) && ((WIRE1_PIN & (1<<WIRE1_NR))!= 0)) (((ID[byteIndex]&(1<<bitIndex))!= 0) && ((WIRE1_PIN & (1<<WIRE1_NR)) == 0))) if(++searchindex == 3) //Komplet operacji dla bieżącego bitu searchindex = 0; if(++bitindex == 8) //Przetworzono już 8 bitów bieżącego bajta bitindex = 0; //Przetworzono właśnie wszystkie bajty numeru ID - zatrzymujemy zegar //odmierzający timeout if(++byteindex == 8) Listing 9. Procedura obsługi przerwania służąca do odmierzania czasu timeout ISR(TIMER1_OVF_vect) Listing 10. Deklaracje zmiennych lokalnych procedury obsługi magistrali 1-Wire //Rozkaz odebrany magistralą 1-wire static uint8_t Command; //Zmienna pomocnicza indeksująca kolejno odebrane lub wysłane bity static uint8_t bitindex; //Zmienna pomocnicza indeksująca kolejno odebrane lub wysłane bajty static uint8_t byteindex; //Zmienna pomocnicza indeksująca kolejne kroki procedury SEARCH_ROM //dla każdego bitu adresu ID static uint8_t searchindex; 108 ELEKTRONIKA PRAKTYCZNA 11/2013
PROJEKTY Wyświetlacz LED z interfejsem 1-Wire
PROJEKTY Wyświetlacz LED z interfejsem 1-Wire Dodatkowe materiały na CD/FTP Niewątpliwą zaletą interfejsu 1-Wire jest niewielka liczba przewodów połączeniowych. W opisywanym projekcie zastosowano 1-Wire
Komunikacja w mikrokontrolerach Laboratorium
Laboratorium Ćwiczenie 4 Magistrala SPI Program ćwiczenia: konfiguracja transmisji danych między mikrokontrolerem a cyfrowym czujnikiem oraz sterownikiem wyświetlaczy 7-segmentowych przy użyciu magistrali
UW-DAL-MAN v2 Dotyczy urządzeń z wersją firmware UW-DAL v5 lub nowszą.
Dokumentacja techniczna -MAN v2 Dotyczy urządzeń z wersją firmware v5 lub nowszą. Spis treści: 1 Wprowadzenie... 3 2 Dane techniczne... 3 3 Wyprowadzenia... 3 4 Interfejsy... 4 4.1 1-WIRE... 4 4.2 RS232
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
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ż.
Wbudowane układy komunikacyjne cz. 1 Wykład 10
Wbudowane układy komunikacyjne cz. 1 Wykład 10 Wbudowane układy komunikacyjne UWAGA Nazwy rejestrów i bitów, ich lokalizacja itd. odnoszą się do mikrokontrolera ATmega32 i mogą być inne w innych modelach!
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
Mikroprocesory i Mikrosterowniki Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface
Mikroprocesory i Mikrosterowniki Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na
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ę
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
Problematyka sieci miejscowej LIN
Problematyka sieci miejscowej LIN Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska 1.08.07 Zygmunt Kubiak 1 Wprowadzenie Przykładowe rozwiązanie sieci LIN Podsumowanie 1.08.07 Zygmunt Kubiak
Komunikacja w mikrokontrolerach Laboratorium
Laboratorium Ćwiczenie 3 Magistrala I 2 C Program ćwiczenia: konfiguracja transmisji danych między mikrokontrolerem a cyfrowym czujnikiem przy użyciu magistrali I 2 C. Zagadnienia do przygotowania: podstawy
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.
Laboratorium mikroinformatyki. Szeregowe magistrale synchroniczne.
Laboratorium mikroinformatyki. Szeregowe magistrale synchroniczne. Transmisja szeregowa charakteryzująca się niewielką ilością linii transmisyjnych może okazać się użyteczna nawet w wypadku zastosowania
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
2010-04-12. Magistrala LIN
Magistrala LIN Protokoły sieciowe stosowane w pojazdach 2010-04-12 Dlaczego LIN? 2010-04-12 Magistrala LIN(Local Interconnect Network) została stworzona w celu zastąpienia magistrali CAN w przypadku, gdy
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 10 (3h) Implementacja interfejsu SPI w strukturze programowalnej Instrukcja pomocnicza do laboratorium z przedmiotu
Magistrala I 2 C. Podstawy systemów mikroprocesorowych. Wykład nr 5 Interfejsy szeregowe c.d.
Magistrala I 2 C Podstawy systemów mikroprocesorowych Wykład nr 5 Interfejsy szeregowe c.d. dr Piotr Fronczak http://www.if.pw.edu.pl/~agatka/psm.html Inter-integrated circuit bus TWI Two-wire Serial Interface
równoległe (w wersji 4-, 8- i 16-bitowej). Same wyświetlacze ze względu na budowę i możliwości możemy podzielić na dwie grupy:
Gdańsk, 2017 1 Wyświetlacz LCD Zawierają zazwyczaj scalone kontrolery, stąd też procesor nie steruje bezpośrednio matrycą LCD, ale komunikuje się z wyspecjalizowanym sterownikiem, który realizuje jego
4. Karta modułu Slave
sygnały na magistralę. Można wyróżnić trzy typy układów scalonych takie jak bramki o otwartym kolektorze wyjściowym, bramki trójstanowe i bramki o przeciwsobnym wzmacniaczu wyjściowym. Obciążalność prądową
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ł:
Spis tre 1. Przedstawienie standardu 1-wire... 2. Dokumentacja układu DS18B20... 3. Obsługa termometru DS18B20 w j
OBSŁUGA INTERFEJSU 1-WIRE NA PRZYKŁADZIE DS18B20 wydanie pierwsze Opracowanie zawiera treści różnych publikacji takich jak: książki, datasheety, strony internetowe Cezary Klimasz Kraków 2008 1 Spis treści
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)
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ł:
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
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ć
1. Cel ćwiczenia. Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU.
1. Cel ćwiczenia Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU. 2. Porty szeregowe w sterowniku VersaMax Micro Obydwa porty szeregowe sterownika
1W-H3-04P (K)* *Litera K odnosi się do wersji czytnika ze wspólną katodą. Czytnik RFID 125 khz Unique. Karta produktu
1W-H3-04P (K)* Czytnik RFID 125 khz Unique Karta produktu *Litera K odnosi się do wersji czytnika ze wspólną katodą. Przed użyciem Proszę nie otwierać czytnika i nie przeprowadzać własnych modyfikacji.
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
Układy czasowo-licznikowe w systemach mikroprocesorowych
Układy czasowo-licznikowe w systemach mikroprocesorowych 1 W każdym systemie mikroprocesorowym znajduje zastosowanie układ czasowy lub układ licznikowy Liczba liczników stosowanych w systemie i ich długość
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
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
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
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ą
MIKROKONTROLERY - MAGISTRALE SZEREGOWE
Liczba magistral szeregowych jest imponująca RS232, i 2 C, SPI, 1-wire, USB, CAN, FireWire, ethernet... Równie imponująca jest różnorodność protokołow komunikacyjnych. Wiele mikrokontrolerów ma po kilka
Komunikacja w mikrokontrolerach. Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface
Komunikacja w mikrokontrolerach Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie
Architektura komputerów. Układy wejścia-wyjścia komputera
Architektura komputerów Układy wejścia-wyjścia komputera Wspópraca komputera z urządzeniami zewnętrznymi Integracja urządzeń w systemach: sprzętowa - interfejs programowa - protokół sterujący Interfejs
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
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ń
Systemy wbudowane Obsługa interfejsu 1-Wire na przykładzie termometru DS18B20
Systemy wbudowane Obsługa interfejsu 1-Wire na przykładzie termometru DS18B20 Dokumentacja projektu. Temat projektu: Obsługa interfejsu 1-Wire na przykładzie termometru DS18B20 zrealizowana z wykorzystaniem
1W-H0-04P (K)* *Litera K odnosi się do wersji czytnika ze wspólną katodą. Czytnik RFID MHz Mifare. Karta produktu
1W-H0-04P (K)* Czytnik RFID 13.56 MHz Mifare Karta produktu *Litera K odnosi się do wersji czytnika ze wspólną katodą. Przed użyciem Proszę nie otwierać czytnika i nie przeprowadzać własnych modyfikacji.
Komunikacja RS485 - MODBUS
Komunikacja RS485 - MODBUS Zadajnik MG-ZT1 może komunikowad się z dowolnym urządzeniem nadrzędnym obsługującym protokół MODBUS - RTU na magistrali RS485. Uwaga: Parametry konfigurowane przez Modbus NIE
Mikroprocesory i Mikrosterowniki Laboratorium
Laboratorium Ćwiczenie 4 Magistrala SPI Program ćwiczenia: konfiguracja transmisji danych między mikrokontrolerem a cyfrowym czujnikiem oraz sterownikiem wyświetlaczy 7-segmentowych przy użyciu magistrali
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ż.
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ć
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ą
Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1 PAMIĘCI SZEREGOWE EEPROM Ćwiczenie 3 Opracował: dr inŝ.
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
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
Opis czytnika TRD-FLAT CLASSIC ver. 1.1. Naścienny czytnik transponderów UNIQUE w płaskiej obudowie
TRD-FLAT CLASSIC Naścienny czytnik transponderów UNIQUE w płaskiej obudowie Podstawowe cechy : zasilanie od 3V do 6V 4 formaty danych wyjściowych POWER LED w kolorze żółtym czerwono-zielony READY LED sterowany
Podział układów cyfrowych. rkijanka
Podział układów cyfrowych rkijanka W zależności od przyjętego kryterium możemy wyróżnić kilka sposobów podziału układów cyfrowych. Poniżej podam dwa z nich związane ze sposobem funkcjonowania układów cyfrowych
Pracownia Transmisji Danych, Instytut Fizyki UMK, Toruń. Instrukcja do ćwiczenia nr 10. Transmisja szeregowa sieciami energetycznymi
Pracownia Transmisji Danych, Instytut Fizyki UMK, Toruń Instrukcja do ćwiczenia nr 10 Transmisja szeregowa sieciami energetycznymi I. Cel ćwiczenia poznanie praktycznego wykorzystania standardu RS232C
1W-H3-05(K)* Czytnik RFID 125 khz Unique. Instrukcja
1W-H3-05(K)* Czytnik RFID 125 khz Unique Instrukcja *Litera K odnosi się do wersji czytnika ze wspólną katodą. Informacje szczególne dla tej wersji będą prezentowane oddzielnie. Przed użyciem Proszę nie
Konwerter 1 Wire > SPI opisany P R Ow JVerilogu
Konwerter 1 Wire > SPI opisany P R Ow JVerilogu E K T Y Konwerter 1 Wire > SPI opisany w Verilogu, część 1 AVT 443 Prezentowany konwerter jest przeznaczony szczególnie do współpracy z układami termometrów
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
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
Mikrokontrolery AVR techniczne aspekty programowania
Andrzej Pawluczuk Mikrokontrolery AVR techniczne aspekty programowania Białystok, 2004 Mikrokontrolery rodziny AVR integrują w swojej strukturze między innymi nieulotną pamięć przeznaczoną na program (pamięć
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
Przesyłania danych przez protokół TCP/IP
Przesyłania danych przez protokół TCP/IP PAKIETY Protokół TCP/IP transmituje dane przez sieć, dzieląc je na mniejsze porcje, zwane pakietami. Pakiety są często określane różnymi terminami, w zależności
Instrukcja obsługi czytnika MM-R32
Instrukcja obsługi czytnika MM-R32 MM-R32 Copyright 2011 by MicroMade All rights reserved Wszelkie prawa zastrzeżone MicroMade Gałka i Drożdż sp. j. 64-920 PIŁA, ul. Wieniawskiego 16 Tel./fax: (67) 213.24.14
Architektura komputerów
Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne
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
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
Politechnika Wrocławska
Politechnika Wrocławska Instytut Cybernetyki Technicznej Wizualizacja Danych Sensorycznych Projekt Kompas Elektroniczny Prowadzący: dr inż. Bogdan Kreczmer Wykonali: Tomasz Salamon Paweł Chojnowski Wrocław,
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
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
Wbudowane układy peryferyjne cz. 1 Wykład 7
Wbudowane układy peryferyjne cz. 1 Wykład 7 Wbudowane układy peryferyjne UWAGA Nazwy rejestrów i bitów, ich lokalizacja itd. odnoszą się do mikrokontrolera ATmega32 i mogą być inne w innych modelach! Ponadto
Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe
Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe System mikroprocesorowy 1. Przedstaw schemat blokowy systemu mikroprocesorowego.
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
Programowanie mikrokontrolerów 2.0
Programowanie mikrokontrolerów 2.0 Sterowanie podczerwienią, zaawansowane tryby liczników Marcin Engel Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 8 grudnia 2016 Sterowanie podczerwienią
1W-H3U-05. Czytnik RFID 125 khz UNIQUE. Karta produktu
1W-H3U-05 Czytnik RFID 125 khz UNIQUE Karta produktu Przed użyciem Proszę nie otwierać czytnika i nie przeprowadzać własnych modyfikacji. Skutkuje to brakiem uwzględniania ewentualnej reklamacji. W przypadku
Sieci Komputerowe Mechanizmy kontroli błędów w sieciach
Sieci Komputerowe Mechanizmy kontroli błędów w sieciach dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Zagadnienia Zasady kontroli błędów
MAGISTRALE MIKROKONTROLERÓW (BSS) Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
(BSS) Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Odległości pomiędzy źródłem a odbiorcą informacji mogą być bardzo zróżnicowane, przykładowo zaczynając od pojedynczych milimetrów w przypadku
WPROWADZENIE Mikrosterownik mikrokontrolery
WPROWADZENIE Mikrosterownik (cyfrowy) jest to moduł elektroniczny zawierający wszystkie środki niezbędne do realizacji wymaganych procedur sterowania przy pomocy metod komputerowych. Platformy budowy mikrosterowników:
MIKROPROCESORY architektura i programowanie
Systematyczny przegląd. (CISC) SFR umieszczane są w wewnętrznej pamięci danych (80H 0FFH). Adresowanie wyłącznie bezpośrednie. Rejestry o adresach podzielnych przez 8 są też dostępne bitowo. Adres n-tego
Prezentacja systemu RTLinux
Prezentacja systemu RTLinux Podstawowe założenia RTLinux jest system o twardych ograniczeniach czasowych (hard real-time). Inspiracją dla twórców RTLinux a była architektura systemu MERT. W zamierzeniach
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
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ń
Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515
Laboratorium Techniki Mikroprocesorowej Informatyka studia dzienne Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515 Cel ćwiczenia Celem ćwiczenia jest poznanie możliwości nowoczesnych
RS-H0-05 (K)* Czytnik RFID MHz Mifare. Karta użytkownika
RS-H0-05 (K)* Czytnik RFID 13.56 MHz Mifare Karta użytkownika *Litera K odnosi się do wersji czytnika ze wspólną katodą. Informacje szczególne dla tej wersji będą prezentowane oddzielnie. Przed użyciem
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):
Opis czytnika TRD-FLAT 2LN ver Naścienny czytnik transponderów UNIQUE w płaskiej obudowie
TRD-FLAT 2LN Naścienny czytnik transponderów UNIQUE w płaskiej obudowie Podstawowe cechy : zasilanie od 9V do 12V połączenie z kontrolerem tylko dwoma przewodami POWER w kolorze żółtym czerwono-zielony
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Interfejsy można podzielić na synchroniczne (oddzielna linia zegara), np. I 2 C, SPI oraz asynchroniczne, np. CAN W rozwiązaniach synchronicznych
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
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.................................
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
Zewnętrzne układy peryferyjne cz. 1 Wykład 12
Zewnętrzne układy peryferyjne cz. 1 Wykład 12 Wyświetlacz LCD zgodny z HD44780 Wyświetlacz LCD zgodny z HD44780 2 HD44780 Standardowy sterownik alfanumerycznych wyświetlaczy LCD opracowany przez firmę
Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop Spis treści
Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop. 2017 Spis treści O autorze 9 Wprowadzenie 11 Rozdział 1. Sterownik przemysłowy 15 Sterownik S7-1200 15 Budowa zewnętrzna
Układy Cyfrowe projekt. Korekcja jasności obrazów w 24-bitowym formacie BMP z użyciem funkcji gamma. Opis głównych modułów sprzętowych
Michał Leśniewski Tomasz Władziński Układy Cyfrowe projekt Korekcja jasności obrazów w 24-bitowym formacie BMP z użyciem funkcji gamma Opis głównych modułów sprzętowych Realizacja funkcji gamma entity
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,
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/
Opis czytnika TRD-80 CLASSIC ver Moduł czytnika transponderów UNIQUE z wbudowaną anteną
TRD-80 CLASSIC Moduł czytnika transponderów UNIQUE z wbudowaną anteną Podstawowe cechy : zasilanie od 3V do 6V zintegrowana antena 4 formaty danych wyjściowych wyjście BEEP wyjście PRESENT zasięg odczytu
AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)
AVR DRAGON INSTRUKCJA OBSŁUGI (wersja 1.0) ROZDZIAŁ 1. WSTĘP... 3 ROZDZIAŁ 2. ROZPOCZĘCIE PRACY Z AVR DRAGON... 5 ROZDZIAŁ 3. PROGRAMOWANIE... 8 ROZDZIAŁ 4. DEBUGOWANIE... 10 ROZDZIAŁ 5. SCHEMATY PODŁĄCZEŃ
Instytut Teleinformatyki
Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Systemy Czasu Rzeczywistego Zastosowanie interfejsów SPI i I2C do komunikacji laboratorium: 02 autor: mgr inż. Paweł
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ą
Kod produktu: MP01105
MODUŁ INTERFEJSU KONTROLNO-POMIAROWEGO DLA MODUŁÓW Urządzenie stanowi bardzo łatwy do zastosowania gotowy interfejs kontrolno-pomiarowy do podłączenia modułów takich jak czujniki temperatury, moduły przekaźnikowe,
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/
4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD.
13 4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD. Zagadnienia do przygotowania: - budowa i działanie interfejsu szeregowego UART, - tryby pracy,
LEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
2. Format danych i zaimplementowane funkcje MODBUS
SIC184 Protokół MODBUS-RTU (v1.10) Spis treści 1. Informacje wstępne... 1 2. Format danych i zaimplementowane funkcje MODBUS... 1 3. Opis rejestrów i funkcji... 2 3.1 Odczyt stanu wejść/wyjść... 2 3.2