Spis tre 1. Przedstawienie standardu Opis sprz towy AVR+MAX Wykorzystanie USARTa Przykładowe programy obsługi w j

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

Download "Spis tre 1. Przedstawienie standardu... 2. Opis sprz towy AVR+MAX232... 3. Wykorzystanie USARTa... 4. Przykładowe programy obsługi w j"

Transkrypt

1 OBSŁUGA INTERFEJSU RS232 NA MIKROKONTROLERZE ATMEGA8 wydanie pierwsze Opracowanie zawiera treści różnych publikacji takich jak: książki, datasheety, strony internetowe Cezary Klimasz Kraków

2 Spis treści 1. Przedstawienie standardu... str Opis sprzętowy AVR+MAX str Wykorzystanie USARTa... str Przykładowe programy obsługi w języku C... str program pierwszy... str program drugi protokół Modbus... str Obsługa portu szeregowego w Borland Builder C++... str program w builderze... str Podsumowanie... str Bibliografia... str Tablica ASCII... str. 30 2

3 1. Przedstawienie standardu Standard RS-232 opisuje sposób połączenia urządzeń DTE (ang. Data Terminal Equipment) tj. urządzeń końcowych danych (np. komputer) oraz urządzeń DCE (ang. Data Circuitterminating Equipment), czyli urządzeń komunikacji danych (np. modem). Standard określa nazwy styków złącza oraz przypisane im sygnały a także specyfikację elektryczną obwodów wewnętrznych. Standard ten definiuje normy wtyczek i kabli portów szeregowych typu COM. POWSTANIE STANDARDU Standard RS-232 (ang. Recommended Standard) opracowano w 1962 roku na zlecenie amerykańskiego stowarzyszenia producentów urządzeń elektronicznych w celu ujednolicenia parametrów sygnałów i konstrukcji urządzeń zdolnych do wymiany danych cyfrowych za pomocą sieci telefonicznej. MAGISTRALA KOMUNIKACYJNA RS-232 jest magistralą komunikacyjną przeznaczoną do szeregowej transmisji danych. Najbardziej popularna wersja tego standardu, RS-232C pozwala na transfer na odległość nie przekraczającą 15 m z szybkością maksymalną 20 kbit/s. SPECYFIKACJA WARSTWY FIZYCZNEJ Specyfikacja napięcia definiuje "1" logiczną jako napięcie -3V do -15V, zaś "0" to napięcie +3V do +15V. Poziom napięcia wyjściowego natomiast może przyjmować wartości -12V, - 10V, +10V, +12V, zaś napięcie na dowolnym styku nie może być większe niż +25V i mniejsze niż -25V. Należy zaznaczyć przy tym, że zwarcie dwóch styków RS-232 teoretycznie nie powoduje jego uszkodzenia. W praktyce ten zapis w specyfikacji nie zawsze jest przestrzegany. PROCESORY AVR I TRANSMISJA RS232 Większość kontrolerów AVR posiada wbudowany interfejs pozwalający na przesyłanie informacji w postaci szeregowej za pomocą linii: TXD - wyjście szeregowe i RXD - wejście szeregowe. Transmisja może się odbywać w trybie half i full-duplex, gdyż układ ten posiada dwa niezależne rejestry transmisyjne. Układ posiada także własny układ taktujący, co zwalnia liczniki-czasomierze z generowania tego sygnału. Protokoły transmisji ASYNCHRONICZNY Każdy bajt jest przesyłany niezależnie, i jest poprzedzony bitem START (stan 0), po którym są przesyłane bity danych, po nich opcjonalnie bit parzystości (do wyboru: tak, by łączna ilość jedynek w danych i tym bicie była parzysta (Even Parity), albo nieparzysta (Odd Parity), albo by miał określoną wartość 0 albo 1 (Stick Parity) - łącznie 4 możliwości), i na koniec bit (lub bity) STOP (stan 1; dla słowa 5-bitowego 1 lub 1.5 bitu, dla dłuższych 1 lub 2; jest to gwarantowany odstęp przed bitem START następnego bajtu, może on jednak być dowolnie długi); bity mają czas trwania określony przez stronę wysyłającą, strona odbierająca odmierza czas od zbocza 1->0 na początku bitu start i próbkuje stan w połowie długości bitu; wykrycie wartości '1' w połowie bitu START jest interpretowane jako "fałszywy start"; wykrycie wystąpienia '0' pół odstępu czasu po rozpoczęciu bitu STOP jest interpretowane jako "błąd ramki" (framing error). SYNCHRONICZNY DCE (modem) podaje sygnały TxC (nie musi go podawać, lub może być nieprawidłowy, kiedy nie daje CTS) i RxC (nie musi go podawać, lub może być nieprawidłowy, gdy nie daje DCD), a DTE (terminal) wysyła (TxD) lub odbiera (RxD) kolejne bity danych; żeby ustalić przy odbieraniu, gdzie jest granica bajtów, dane są poprzedzone serią bajtów SYN (0x16 - DTE 3

4 musi analizować je i wykryć, o ile bitów trzeba przesunąć dane, by uzyskać taką wartość), po których następuje znak rozpoczynający pakiet danych (np. SOH - 0x01) i kolejne bajty, bez możliwości "zaczekania" (najwyżej z możliwością wysłania danych nieznaczących); dane mają strukturę określającą ich przeznaczenie (np. dane do wyświetlenia, dane do wydrukowania, sterowanie terminalem - to, co w protokole TCP/IP określa "port"), i gdzie jest ich koniec; zwykle dla kontroli poprawności transmisji pakiet zawiera dodatkowe dane do jej sprawdzenia, czasem jest to różnica symetryczna wszystkich bajtów, częściej CRC; z powodu konieczności synchronizacji przesyłanie danych wyłącznie pakietami; ilość bitów pomiędzy pakietami nie musi być wielokrotnością bajtu. Wymiana danych przez interfejs szeregowy Komunikacja przez interfejs szeregowy jest najpopularniejszym sposobem wymiany danych pomiędzy układami zbudowanymi na mikrokontrolerach. Umożliwia komunikację takich układów z komputerami PC. Zaletą jest dostępność standardu w mikrokontrolerach jak i łatwość obsługi portu COM w systemie Windows. Dzięki temu transmisja szeregowa zawitała w wielu rodzajach mierników: od woltomierzy po wskaźniki prędkości wiatru. Trzeba jednak zauważyć, że w rozwiązaniach przemysłowych rzadko stosuje się interfejs RS232. Spowodowane jest to ograniczeniami standardu, spowodowanych zbyt dużym wpływem czynników zewnętrznych na powodzenie transmisji. W zastosowaniach przemysłowych stosuje się interfejsy takie jak RS422, RS485. Ten drugi zyskał bardzo dużą popularność dzięki dostępności różnych protokołów. Dzięki transmisji różnicowej RS485 oraz konwerterów RS232 na RS485, możliwe jest wykorzystanie mikroprocesorów posiadających port szeregowy do przesyłu danych magistralą RS Opis sprzętowy AVR+MAX232 Standardowe złącze interfejsu szeregowego przedstawiono poniżej. Jest to gniazdo typu DB- 9, występują męskie i żeńskie odmiany tego gniazda. 4

5 Trzeba w tym miejscu wyjaśnić, że w systemach mikroprocesorowych zazwyczaj korzysta się z 3 linii. Są to oczywiście linie danych RxD, TxD oraz masa. Większość z mikrokontrolerów AVR ma wbudowany port szeregowy wraz z obsługą (UART lub USART). Piny w mikrokontrolerze oznaczone są przez RXD i TXD. Aby połączyć dwa urządzenia poprzez RS232 należy zastosować układ konwertujący poziomy napięć. W tym wypadku prym wiedzie układ firmy Maxim MAX232. Poniżej przedstawiono standardowe połączenie pomiędzy mikroprocesorem a wyjściem zewnętrznym interfejsu. Trzeba zwrócić uwagę na wymagane skrosowane połączenia. 3. Wykorzystanie USART a USART - (Universal Synchronous and Asynchronous Receiver and Transmitter) w mikrokontrolerach uniwersalny port mogący pracować w trybie transmisji synchronicznej i asynchronicznej. Jak wskazuje nazwa, możliwa jest praca synchroniczna (kolejne bity są przesyłane w takt zegara sterującego transmisją), lub praca asynchroniczna, kiedy odbiornik USART wykrywa początek ramki transmisyjnej, a następnie próbkuje sygnał wejściowy przez ustalony przez obie strony czas trwania bitu. Datasheet ATmega8 USART Jest to wbudowany port szeregowy w układy mikroprocesorowe typu ATmega. Pozwala na wysyłanie i odbieranie danych szeregowo. Zapewnia: o transmisję full duplex (w obydwie strony), o synchroniczne i asynchroniczne operacje, o tryb master / slave, o różne rodzaje możliwych prędkości nadawania / odbierania, o ramki rozmiaru: 5,6, 7, 8, 9 bitowe z 1 lub 2 bitowym znakiem stopu, o zapewnia sprawdzenie parzystości, nieparzystości, o duże prędkości transmisji przy małej częstotliwości zegarowej, o filtracja szumów i zakłóceń, o rozmaite detekcje błędów, o generuje trzy oddzielne przerwania (szczegółowy opis w dalszych punktach opracowania). 5

6 CLOCK GENERATION Umożliwia wybranie trybu pracy: normalna asynchroniczna, szybka asynchroniczna, Master synchroniczna, Slave synchroniczna. Bity UMSEL w rejestrze USART i UCSRC decydują pomiędzy wyborem: asynchronicznego lub synchronicznego działania. Double speed (szybka asynchroniczna) kontrolowana jest przez bit U2X w rejestrze UCSRA. Jeśli używamy trybu synchronicznego (UMSEL=1), rejestr Data Direction (XCK pin, DDR_XCK) musi jest aktywny. INTERNAL CLOCK GENERATION THE BAUD RATE GENERATOR Wewnętrzny zegar używany jest przy pracy asynchronicznej i synchronicznej (Master). Rejestr USART Baud Rate Register (UBRR) oraz licznik w dół połączone są przez programowy preskaler i szybkość generatora (baud rate generator). Licznik w dół, używany w zegarze, ładowany jest wtedy gdy od wartości UBRR dojdzie do zera lub do wartości określonej w rejestrze UBRRL. Transmiter dzieli szybkość transmisji przez 2, 8, 16 zależne od trybu. Tabela przedstawiająca sposób obliczenia wartości dla rejestru UBRR BUDOWA RAMKI Ramka do przesyłu szeregowego zdefiniowana jest jako jeden znak danych z bitem startu i bitem stopu, ewentualnie dodana jest weryfikacja parzystości lub sprawdzania błędów. USART akceptuje wszystkie 30 różnych kombinacji opierających się o następujące założenia: o 1 bit startu, o 5, 6, 7, 8, 9 bity danych, o no, even, odd parity bit (bity parzystości), o 1 lub 2 bity stopu. Ramka zaczyna się od bitu startu poprzedzającego najmłodszy bit danych. Następnie kolejne bity danych, aż do ostatniego, ramka kończy się najstarszym bitem danych. Jeśli włączone jest sprawdzanie parzystości bitów, bit parzystości umieszczony jest zaraz po bitach danych, przed bitem stopu. Kiedy cała ramka zostanie przesłana, można bezpośrednio przesłać następną ramkę, ewentualnie linia komunikacyjna zostanie ustawiona w stan bezczynności. PARZYSTOŚĆ Sprawdzanie parzystości polega na przeprowadzeniu obliczeń opierających się o operację XOR dla wszystkich bitów danych. Jeśli ustawiono odd parity, wtedy rezultat obliczeń jest odwracany. Poniżej przedstawiono zasadę działania: 6

7 INICJALIZACJA USART USART inicjalizuje się przed komunikacją. Inicjalizacja polega na ustawieniu szybkości transmisji (baud rate), ustawienia formatu ramki i ustawieniu trybu pracy w zależności od potrzeb. Podczaj inicjalizacji czyszczone są globalne flagi przerwań. Przed ponowną inicjalizacją np. ze względu na zmianę szybkości transmisji lub formatu ramki, trzeba być pewnym, że nie ma żadnej niezakończonej transmisji. Flaga TXC sprawdza czy nadajnik wysłał wszystkie dane, a RXC sprawdza czy są jakieś nieodczytane dane w buforze odbiornika. Flaga TXC powinna być wyczyszczona przed każdą transmisją. Przykład inicjalizacji w języku C NADAWANIE Nadajnik USART jest uruchamiany poprzez ustawienie bitu TXEN w rejestrze UCSRB. W momencie gdy nadajnik jest aktywny, operacje na porcie TXD są zablokowane. Oczywiście baud rate jak i tryb pracy i format ramki muszą być ustawione przed nadawaniem. Transmisja danych rozpoczyna się od załadowania danych do bufora. Procesor może załadować dane zapisując je do rejestru UDR I/O. Dane z bufora przenoszone są do Shift Register kiedy rejestr ten jest gotowy do wysłania nowej ramki. Shift Register może być załadowany jeśli znajduje się w stanie bezczynności (żadnych wychodzących transmisji) lub natychmiast po ostatnim bicie stopu z ramki właśnie przesyłanej. Poniższy kod pokazuje sposób działania: 7

8 BITY NADAJNIKA USART Transmitter posiada dwie flagi określające jego stan: USART Data Register Empty (UDRE) i Transmit Complete (TXC). Obydwie flagi mogą być użyte do wygenerowania przerwania. Flaga UDRE przedstawia stan kiedy bufor nadajnika jest gotowy na przyjęcie nowych danych. Bit ten jest ustawiony gdy bufor jest pusty, gdy bufor nadajnika zawiera dane, które nie zostały jeszcze przeniesione do Shift Register. Jeśli Data Register jest pusty bit Interrupt Enable (UDRIE) w rejestrze UCSRB ma wartość jeden, USART Data Register Empty Interrupt będzie wykonywany tak długo dopóki UDRE jest ustawiony. UDRE czyści się poprzez zapisanie rejestru UDR. Flaga TXC (Transmit Complete) ustawiana jest na jeden, jeśli cała ramka zostaje wysłana i nie ma nowych danych w buforze nadajnika. Flaga ta jest automatycznie czyszczona jeśli wygenerowane jest przerwanie zakończenia transmisji, lub może być wyczyszczona poprzez nadpisanie bitu. TXC jest przydatny przy komunikacji half-duplex (np. RS485) kiedy system musi przestawić się z nadajnika na odbiornik i zwolnić linie komunikacyjną, natychmiastowo po transmisji. PARITY GENERATOR Oblicza wartość bitu parzystości z ramek danych. Jeśli ustawiony jest bit UPM1=1 (sprawdzanie parzystości) wtedy nadajnik wstawia bit parzystości pomiędzy ostatnim bitem danych a pierwszym bitem stopu wysyłanej ramki. WYŁĄCZANIE NADAJNIKA Aby wyłączyć nadawanie ustawia się bit TXEN na zero. Nie da to efektów dopóki wychodząca transmisja nie zakończy się. ODBIORNIK Odbiornik USART jest aktywny poprzez włączenie bitu RXEN (Receive Enable) w rejestrze UCSRB. Kiedy odbiornik jest aktywny, pin RXD jest nieaktywny. Oczywiście prędkość, format ramki muszą być ustawione przed odbieraniem. Start następuje gdy wykryty zostanie bit startu. Bity, które odbierane są następnie, są próbkowane z prędkością transmisji (lub zegara), przesuwane do rejestru Recive Shift Register dopóki nie nastąpi pierwszy bit stopu lub cała ramka zostanie odebrana. Drugi bit stopu powinien być zignorowany. Kiedy zostanie odebrany pierwszy bit stopu, zawartość Shift Register zostanie przeniesiona do bufora odbiornika. Bufor jest wtedy gotowy do odczytu z UDR I/O. Poniżej przedstawiono prosty odbiór przez USART bazujący na fladze RXC. 8

9 Prosty odbiór danych Funkcja czeka na dane z bufora odbiorczego poprzez sprawdzanie flagi RXC, przed odczytaniem bufora i zwróceniem wartości. ODBIÓR FLAGI UKOŃCZENIA Odbiornik posiada jedną flagę odpowiadającą jego statusowi. Flaga Receive Complete (RXC) sygnalizuje jeśli są jakieś nieodczytane dane w buforze odbiornika. Flaga ta przyjmuje wartość jeden kiedy istnieją nieodczytane dane w buforze odbiornika, a przyjmuje wartość zero, jeśli bufor jest pusty. Jeśli odbiornik jest nieaktywny (RXEN=0), wtedy bit RXC również równy jest zero. Kiedy flaga RXCIE (Receive Complete Interrupt Enable) w rejestrze UCSRB jest ustawiona, wtedy przerwanie Receive Complete Interrupt jest wykonywane tak długo dopóki flaga RXC nie zostanie ustawiona. Odbiornik USART Receiver posiada 3 flagi błędów: Frame Error (FE) błąd ramki, Data OverRun (DOR), i Parity Error (PE) błąd parzystości. Wszystkie dostępne są po odczytaniu zawartości rejestru UCSRA. Wspólne dla tych flag błędów jest to, że zlokalizowane są w buforze odbiornika razem z ramką, przez co sygnalizują status błędu. Zatem rejestr UCSRA musi być odczytywany przed buforem odbiornika UDC, od czasu odczytywania UDR I/O. Flaga Frame Error (FE) sygnalizuje stan następnej czytelnej ramki umieszczonej w buforze odbiornika. Flaga FE jest równa zero, kiedy bit stopu został poprawnie odczytany, w innej sytuacji równa jeden. Flaga Data OverRun (DOR) sygnalizuje utratę danych. Występuje kiedy bufor odbiornika jest pełny (2 znaki), tymczasem w Receive Shift Register oczekuje nowy znak i wykryto nowy bit startu. Jeśli ustawiona jest ta flaga wtedy jedna lub więcej ramek zostaje utraconych. Flaga Parity Error (PE) sygnalizuje, że następna ramka w buforze odbiornika posiada niewłaściwy bit parzystości. Jeśli nie sprawdzamy parzystości, wtedy flaga PE równa jest zawsze zero. SPRAWDZANIE PARZYSTOŚCI Flaga Parity Checker jest aktywna gdy ustawiony jest bit UPM1. Typ sprawdzania może zostać wybrany za pomocą bitu UPM0. Kiedy aktywne jest sprawdzanie, obliczana zostaje parzystość z bitów danych a wynik porównywany z bitem otrzymanym w odebranej ramce. Wynik sprawdzenia jest przechowywany w buforze odbiornika wraz z odebranymi danymi i bitami stopu. Możliwe jest odczytanie flagi Parity Error przez oprogramowanie aby sprawdzić czy są błędy parzystości. Bit PE jest ustawiony jeśli następny znak, który ma być odczytany z bufora odbiornika zawiera błąd parzystości, kiedy odbiornik i sprawdzanie jest załączone (UPM1=1). Bit ten jest ważny dopóki nie zostanie odczytana zawartość bufora odbiornika (UDR). 9

10 WYŁĄCZANIE ODBIORNIKA W odróżnieniu od nadajnika, wyłączenie odbiornika następuje natychmiastowo. Dane przychodzące nieodebrane są tracone. OPIS REJESTRÓW USART USART I/O Data Register UDR Bufor nadajnika może być jedynie zapisywany kiedy flaga UDRE w rejestrze UCSRA jest ustawiona. Kiedy dane są zapisywane do bufora nadajnika, nadajnik jest aktywny, nadajnik ładuje dane do Transmit Shift Register. USART Control and Status Register A UCSRA Bit 7 RXC: Receive Complete Flaga jest ustawiona jeśli są nieodczytane dane w buforze odbiornika i wtedy gdy bufor jest czysty. Bit 6 TXC: Transmit Complete Flaga ustawiona jeśli cała ramka z Transmit Shift Register została wysłana, i nie ma nowych danych w buforze nadajnika (UDR). Bit 5 UDRE: Data Register Empty Flaga sygnalizuje, że bufor nadajnika jest gotowy do przyjęcia nowych danych. Jeśli UDRE jest ma wartość jeden to bufor jest czysty i dlatego gotowy do zapisania. Bit 4 FE: Frame Error Bit ten jest ustawiony jeśli kolejny znak w buforze odbiornika posiada ramkę błędu (Frame Error). Bit 3 DOR: Data OverRun Bit ten jest ustawiony stan Data OverRun jest wykrywany. Bit 2 PE: Parity Error Bit ten jest ustawiony jeśli następny znak w buforze odbiornika posiada Parity Error, i sprawdzanie parzystości jest aktywne. Bit 1 U2X: Double speed Ustawienia tego bitu znaczące są tylko w przypadku operacji asynchronicznych. Należy zapisać do tego bitu 0, jeśli używa się transmisji synchronicznej. Bit 0 MPCM: Multi-processor Communication Mode Bit ten uaktywnia Multi-processor Communication mode. Jeśli posiada wartość jeden, wszystkie z przychodzących ramek nie zawierających informacje adresową zostają zignorowane. 10

11 USART Control and Status Register B UCSRB Bit 7 RXCIE: RX Complete Interrupt Enable Zapisanie tego bitu aktywuje przerwania dla flagi RXC. Przerwanie Receive Complete jest generowane tylko wtedy gdy RXCIE ustawione jest na jeden, globalna flaga przerwań w rejestrze SREG zapisywana jest jako jeden oraz bit RXC w rejestrze UCSRA jest ustawiany. Bit 6 TXCIE: TX Complete Interrupt Enable Ustawienie tego bitu aktywuje przerwania dla flagi TXC. Generowane jest przerwanie Transmit Complete kiedy TXCIE=1, globalna flaga przerwań w rejestrze SREG ustawiana jest na jeden, również ustawiany jest bit TXC z rejestru UCSRA. Bit 5 UDRIE: Data Register Empty Interrupt Enable Zapisanie tego bitu, aktywuje przerwania dla flagi UDRE. Przerwanie jest generowane jeśli UDRIE ustawione jest na jeden, globalna flaga przerwań w rejestrze SREG ustawiana jest na jeden, bit UDRE z rejestru UCSRA również jest ustawiany. Bit 4 RXEN: Receiver Enable Zapisanie tego bity aktywuje odbiornik USART. Odbiornik wyłącza normalną obsługę pinu RXD kiedy jest RXEN=1. Wyłączenie odbiornika generuje sekwencje flag: FE, DOR, PE. Bit 3 TXEN: Transmitter Enable Zapisanie tego bitu, aktywuje nadajnik USART. Jeśli nadajnik jest aktywny zostaje wyłączona normalna obsługa pinu TXD. Wyłączenie nadajnika może nie daje efektu dopóki wychodząca transmisja nie zostanie zakończona (odpowiednie rejestry przechowujące dane do wysłania są czyste). Wyłączenie powoduje odblokowanie pinu TXD. Bit 2 UCSZ2: Character Size Bity te połączone są z bitem UCSZ1:0 w rejestrze UCSRC ustawiającym ilość bitów danych w ramce nadajnika i odbiornika. Bit 1 RXB8: Receive Data Bit 8 Bit ten jest dziewiątym bitem z odebranej ramki, jeśli wykorzystujemy taki rozmiar ramki. Musi być przeczytany przed przeczytaniem niższych bitów z UDR. Bit 0 TXB8: Transmit Data Bit 8 Bit ten jest dziewiątym bitem danych, jeśli zakładamy użycie 9 bitów danych w ramce wiadomości. Musi być zapisany przez zapisaniem niższych bitów do UDR. USART Control and Status Register C UCSRC 11

12 Bit 7 URSEL: Register Select Ustawienie tego bitu powoduje wybranie rodzaju dostępu do rejestrów UCSRC lub UBRRH. Jeśli zapisany jako jeden czytanie UCSRC. Jeśli zapisujemy do UCSRC bit URSEL musi być ustawiony na jeden. Bit 6 UMSEL: USART Mode Select Ustawienie tego bitu powoduje wybór pomiędzy trybem asynchronicznym (UMSEL=0) i synchronicznym (UMSEL=1). Bit 5:4 UPM1:0: Parity Mode Aktywuje rodzaj sprawdzania parzystości. Jeśli opcja aktywna to nadajnik automatycznie generuje bit parzystości i dodaje do ramki. W przypadku odbiornika, powoduje wygenerowanie wartości parzystości z przychodzących danych i porównanie z ustawieniami UPM0. Jeśli wykryje jakiś błąd, zostaje ustawiona flaga PE w rejestrze UCSRA. Poniżej znajdują się możliwe ustawienia: Bit 3 UCSBS: Stop Bit Select Za pomocą tego bitu wybiera się ilość bitów stopu: 1 bit (USBS=0), 2 bity (USBS=1). Potrzebne jest to przy nadawaniu. Odbiornik ignoruje te ustawienia. Bit 2:1 UCSZ1: Rozmiar znaku Bity te połączone są z bitem z UCSZ2 z rejestru UCSRB, określają rozmiar danych dla odbiornika i nadajnika. Poniżej przedstawiono ustawienia tabele z ustawieniami Bit 0 UCPOL: Clock Polarity Ustawienia tego bitu mają wpływ tylko w przypadku opcji pracy synchronicznej. Bit ten ma wartość zero w przypadku transmisji asynchronicznej. Bit ten określa relacje pomiędzy zmianami danych wyjściowych a próbkami danych wejściowych oraz synchronicznego zegara. 12

13 USART Baud Rate Registers UBRRL and UBRRHs Bit 15 URSEL: Register Select Ustawienie tego bitu powoduje wybór dostępu pomiędzy rejestrami UBRRH lub UCSRC. Bit 14:12 Reserved Bits Bit 11:0 UBRR11:0: Baud Rate Register Jest to 12 bitowy rejestr zawierający prędkość transmisji. UBRRH zawiera cztery najstarsze bity, zaś UBRRL osiem pozostałych. Wychodząca transmisja zostaje uszkodzona w wypadku zmiany prędkości przesyłu. Poniżej znajdują się jedne z ustawień bitów UBRR 13

14 PRZERWANIA USART NAZWY PRZERWAŃ GENEROWANYCH PRZEZ USART SIG_USART_DATA Data Register Empty Interrupt - czysty rejestr z danymi SIG_USART_RECV Receive Complete Interrupt - zakończenie odbierania SIG_USART_TRANS Transmit Complete Interrupt - zakończenie nadawania 4. PRZYKŁADOWE PROGRAMY OBSŁUGI W JĘZYKU C W niniejszych przykładach pokazano jak przeprowadzić prostą transmisję szeregową pomiędzy procesorem AVR ATmega8 oraz komputerem PC. Założono, że uda się nawiązać komunikacje dwukierunkową. Każdy fragment kodu został szczegółowo opisany, aby analiza i ew. przeniesienie komunikacji na inny procesor nie nastręczała problemami. PROGRAM PIERWSZY Założeniami tego programu było proste obsłużenie wysyłania i odbierania danych przez port szeregowy. Założono, że nie będą sprawdzane błędy transmisji. KONFIGURACJA POCZĄTKOWA Implementacje programową oparto o środowisko WinAVR obejmujące zarówno edytor, jak i również systemowy programator AVRdude. Użyto wersji z dnia r. Pierwsze wiersze programu są standardowe zawierają dyrektywy dla kompilatora, z których bibliotek program będzie korzystał. W naszym przypadku będą to standardowe biblioteki I/O. W programie zakładamy, że nie będziemy używać przerwań, więc wystarczy tylko jedna biblioteka. (1) INICJALIZACJA USART Celem zainicjowania komunikacji szeregowej należy zainicjować prędkość transmisji, rozmiar przesyłanej ramki, ilość bitów stopu, sprawdzanie parzystości. Następnie należy odblokować komunikację załączając odpowiednie bity. W programie założono: prędkość 9600bps (bodów na sekundę), kwarc w systemie 8MHz, 8 bitów danych, sprawdzanie parzystości. 14

15 (2) Wartość dla rejestru UBRRL odczytano z tabeli zamieszczonej w datasheecie ATmega8. WYSŁANIE POJEDYNCZEGO ZNAKU Algorytm wysyłania opiera się na zapisie znaku do rejestru UDR. Zapis jest równoznaczny ze startem nadawania. (3) WYSŁANIE CAŁEGO NAPISU Operacja taka realizowana jest poprzez wysyłanie do rejestru UDR pojedynczych znaków z całego napisu. Jak widać funkcja ta korzysta z procedury (3). (4) ODBIÓR POJEDYNCZEJ RAMKI Odbieranie sprowadza się do sprawdzania w rejestrze UCSRA flagi RXC, która odpowiada za detekcje danych w buforze. (5) Aby sprawdzić działanie nadawania o odbierania danych, poniżej znajduje się kod programu, który odbiera dane z portu szeregowego, następnie sprawdza czy została odebrana jedynka 15

16 (6) czy dwójka i zapala diody podpięte do pinów PB1, PB2 oraz wysyła odebrany znak do komputera. ODBIÓR DANYCH I WYŚWIETLENIE Operacja będzie polegała odbieraniu pojedynczych bajtów. Następnie odebrana informacja z komputera będzie wyświetlona na wyświetlaczu LCD. Ze względu na obszerność nie zostaną przedstawione funkcje obsługi wyświetlacza. Odsyłam do różnych publikacji opisujących sposób obsługi (przede wszystkim sterownika HD44870). (7) OBSŁUGA PRZERWAŃ Dzięki korzystaniu z przerwań nie trzeba cały czas nasłuchiwać w pętli czy coś nie nadeszło. Wyróżnia się trzy rodzaje przerwań dla USARTa: SIG_USART_DATA, SIG_USART_RECV, SIG_USART_TRANS. KONFIGURACJA POCZĄTKOWA Jako, że będziemy korzystać z przerwań należy dodać odpowiednie dyrektywy informujące kompilator o tym fakcie. Pierwsze linijki kodu programu wyglądają następująco: (1) W sytuacji w której kompilator zasygnalizowałby błąd spowodowany brakiem odniesień do funkcji lub procedur, należy poszukać pliku iom8.h w katalogach WinAVR i dodać go w deklaracji bibliotek. 16

17 INICJALIZACJA USARTa Przy inicjalizacji musimy zwrócić uwagę na fakt iż jeśli chcemy skorzystać z przerwań musimy je odblokować. Są to: RXCIE, TXCIE, UDRIE. Odblokowanie polega na ustawieniu odpowiednich bitów w rejestrze UCSRB. (2) W kodzie widać funkcje sei(), odblokowującą system przerwań globalnych. Oczywiście założono, że rejestr UCSRB załączy wszystkie możliwe przerwania. Zazwyczaj nie ma takich potrzeb. ODBIÓR POJEDYNCZEJ RAMKI Dzięki przerwaniu SIG_USART_RECV (które generowane jest po zakończeniu odbioru) możliwy jest prostu odbiór danych. (3) Kwestia obsługi błędów odbioru i wysyłania nie została omówiona. Analizując przytoczoną dokumentację można łatwo dodać te opcje. PROGRAM DRUGI - PROTOKÓŁ MODBUS USART można wykorzystać do wygenerowania danego formatu ramki aby skorzystać z dowolnego protokołu. Założeniami niniejszego programu jest praca układu typu master-slave, gdzie nadrzędnym urządzeniem jest komputer zaś podrzędnym mikrokontroler ATmega8. Wybrano protokół MODBUS, który jest popularnym protokołem przede wszystkim w transmisji przez magistralę RS485. Naszym zadaniem będzie napisanie programu dla mikroprocesora. MODBUS Założono, że transmisja odbędzie się w trybie ASCII. Zatem każdy bajt przesyłany jest za pomocą dwóch znaków ASCII. Używane jest kodowanie heksadecymalne. Ramkę używaną do przesyłania wiadomości przedstawiono poniżej. Ramka taka zawiera pole adresowe, funkcje, dane, obliczone LRC oraz bity stopu. 17

18 Bit startu ma wartość 3A (:), zaś bity końca odpowiednio (0D, 0A). Zakładamy w naszym programie, że adres slave a to 1A, dostępna funkcja to zapalanie i gaszenie diody na porcie B. Urządzenie slave ma za zadanie nasłuchiwać, jeśli otrzymana ramka zawiera poprawnie obliczone LRC oraz właściwy dla układu adres funkcja zostaje wykonana. Założono, że ma być to prosty przykład zatem slave nie wysyła informacji powrotnej. Założenia początkowe Adres: 1A adres naszego slave a Funkcja: 01 zapalanie i gaszenie diody Dane: Ilość danych: 01 (jest to prosty przykład zatem tylko taka możliwość dostępna) Opcja: 01 zgaś diodę, 02 zapal diodę Przykładowy wygląd ramki przesyłanej z komputera: : 1A E3 CRLF gasi diodę (E3 jest wynikiem obliczenia LRC) : 1A E2 CRLF zapala diodę (E2 wynik LRC) KONFIGURACJA POCZĄTKOWA Standardowe ustawienia bibliotek, zmiennych oraz uaktywnienie przerwań wraz z konfiguracją USARTA. Poniżej znajduje się początek kodu programu. (1) Widoczne jest użycie struktury, aby łatwo można było dostać się do różnych danych z ramki. Poniżej znajduje się główna funkcja main, w której znajdują się ustawienia USARTa, wyświetlacza LCD, a także odblokowanie przerwań. 18

19 (2) Widać, że inicjalizacja USART jest standardowa. Port B ustawiany jest jako port wyjściowy, zaś pętla for jest pętlą nieskończoną. Inicjalizacja i obsługa LCD zakłada używanie funkcji wyświetlających danych w postaciach: napisów, 8 bitowych zmiennych typu int, oraz zmiennych char. Można przeanalizować przykład bez obsługi LCD, ale w programach testowych tego typu obsługa jest przydatna. SPRAWDZANIE LRC LRC są to dwa znaki ASCII, które są wynikiem odpowiedniego algorytmu obliczeń części informacyjnej ramki. Algorytm ten polega na sumowaniu kolejnych 8-bitowych bajtów wiadomości, odrzuceniu przeniesień i na końcu wyznaczeniu uzupełnienia dwójkowego wyniku (U2). Sumowanie dotyczy części informacyjnej bez bitu startu i końca. Poniżej znajduje się kod programu liczącego LRC. (3) ODBIERANIE RAMEK DANYCH Nasłuch odbywa się w przerwaniach. W momencie wykrycia znaku startu (3A) wiadomość zostaje sklejana w ciąg znaków. Kiedy w buforze znajdą się znaki końca (CRLF) wtedy ramka Modbus jest gotowa. Ramka taka zawiera: adres, funkcje, dane, LRC. 19

20 (4) Kluczową funkcją jest funkcja wykonaj(ramkaodbierz, licznik), gdyż wywoływana jest po odebraniu znaku końca. Funkcja ta konwertuje ramkę, liczy jej LRC i wywołuje obsługę żądania. WERYFIKACJA WYKONANIE FUNKCJI Jeśli sprawdzone LRC jest poprawne z przesłanym należy sprawdzić czy adres w wywołaniu jest taki jak układu slave a. Jeśli tak należy zdekodować funkcje i ją wykonać. 20

21 (5) PODSUMOWANIE Zaprezentowany program jest tylko prostym przykładem obsługi protokołu MODBUS. Nie uwzględniono w nim wiele aspektów. Protokołu tego nie używa się zazwyczaj w wypadku interfejsu RS232, za to w transmisji RS485 jest bardzo popularny. Dla tej transmisji należałoby dodać odpowiednie linie w kodzie źródłowym odpowiedzialne za przełączanie pomiędzy nadajnikiem i odbiornikiem w przypadku wysyłania wartości ze slave a to mastera 1. 1 konwertery poziomów RS485 posiadają wejście Drive Enable pozwalające na ustawienie statusu urządzenia i ew. zajęcie lub zwolnienie magistralii. 21

22 5. OBSŁUGA PORTU SZEREGOWEGO W BCB 6.0 WPROWADZENIE Aby obsłużyć interfejs RS232C z poziomu Windows można użyć Hyper Terminala. Konfigurując odpowiednie połączenie można wysyłać i odbierać dane portem szeregowym. Problem pojawia się gdy dane stanowią dużą ilość. Wpisywanie danych, ew. odtwarzanie ich z pliku może nastręczać problemów. Dlatego warto zająć się napisaniem programu obsługi portu w jednym z języków programowania wysokiego poziomu. Zazwyczaj robi się to w Delphi lub w Borland Builderze. Cechą wspólną obu tych programów jest możliwość obsługi WinAPI. Dzięki temu obsługa portu szeregowego nie powinna sprawiać problemów. INTERFEJS Najpierw zostanie przedstawiony interfejs programisty, w tym typy funkcji i ich parametry, a następnie obsłużona zostanie transmisja. DCB (Device Control Block) zmienne i parametry dopuszczalne (wybrane zmienne) Typ Zmienna Znaczenie Wartość DWORD DCBlength rozmiar struktury należy wpisać CBR_110 CBR_19200 CBR_300 CBR_ CBR_600 CBR_56000 DWORD BaudRate CBR_4800 CBR_ CBR_9600 CBR_ CBR_14400 określenie prędkości CBR_1200 CBR_57600 transmisji (bity/sek) CBR_2400 CBR_ WORD XonLim określenie minimalnej liczby bajtów w domyślnie: buforze wejściowym określenie WORD XoffLim maksymalnej liczby bajtów w buforze domyślnie: wejściowym BYTE wybór liczby bitów ByteSize danych 5, 6, 7, 8 BYTE BYTE Parity StopBits określenie kontroli parzystości wybór bitów stopu EVENPARITY - parzysta MARKPARITY - bit parzystości stały równy 1 NOPARITY brak kontroli ODDPARITY nieparzysta ONESTOPBIT ONE5STOPBITS TWOSTOPBITS Createfile() Jest to podstawowa funkcja zawierająca konfiguracje portu szeregowego. W jej skład wchodzi m.in. nazwa portu, jego dostępność. HANDLE CreateFile(LPCTSTR lpfilename, DWORD dwdesiredaccess, DWORD ShareMode, LPSECURITY_ATTRIBUTES lpsecurityattributes, DWORD dwcreationdistribution, DWORD dwflagsandattributes, HANDLE htemplatefile); 22

23 Pierwszy parametr LPCTSTR służy do deklaracji portu COM zatem LPCTSTR lpfilename = COM2 ; Parametr dwdesiredaccess umożliwia ustalenie rodzaju dostępu do portu szeregowego. Z praktycznego punktu widzenia najwygodniej jest ustalić rodzaj dostępu jako GENERIC_READ GENERIC_WRITE (zapisuj do portu lub odczytuj z portu). Umożliwi nam to płynne wysyłanie i odbieranie komunikatów. Parametrowi dwcreationdistribution należy przypisać właściwość OPEN_EXISTING otwórz istniejący (port). Pozostałym przyporządkujemy następujące wartości: DWORD ShareMode = 0 (FALSE); LPSECURITY_ATTRIBUTES lpsecurityattributes = NULL; DWORD dwflagandattributes = 0 (FALSE); HANDLE htemplatefile = NULL Funkcją zwracającą ostatnie ustawienia DCB jest następująca funkcja BOOL GetCommState(HANDLE hcommdev, LPDCB lpdcb) Wybrany przez nas port szeregowy ostatecznie skonfigurujemy zgodnie ze specyfikacją struktury DCB, za pomocą funkcji SetCommState(), która reinicjalizuje i uaktualnia wszystkie dostępne parametry w ustawieniach łącza szeregowego: BOOL SetCommState(HANDLE hcommdev, LPDCB lpdcb) Przed zakończeniem działania aplikacji otwarty port szeregowy należy koniecznie zamknąć i zwolnić obszar pamięci przydzielony na jego identyfikator, korzystając z: BOOL CloseHandle(HANDLE hcommdev) PROGRAM W BUILDERZE Przykład wykonano w C++ Borland Builder 6.0 Personal. Założono, że używane wyłącznie będą funkcje WinAPI. W sieci znaleźć można bardzo dużą ilość komponentów do obsługi portu szeregowego, jednak większość z nich zawiera w swojej strukturze funkcje WinAPI, zatem warto przeanalizować obsługę RS232C od podstaw. Przykład wzorowany jest na przykładzie z książki RS 232 C. Praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera Andrzeja Daniluka. Założeniem programu jest obsługa protokołu MODBUS i komunikacja z mikroprocesorem zaprogramowanym programem nr 2. Najpierw zostanie stworzona forma na której będą podstawowe opcje obsługi portu szeregowego. Poniżej znajduje się przykładowa forma. widok przykładowej formy 23

24 Użyte elementy to przyciski Button, pola Edit, tabela StringGrid, przyciski CheckBox. Program ma za zadanie wysłanie do mikrokontrolera ramki danych zawierającej: adres, funkcję, ilość danych, dane oraz obliczone LRC. Przyciski odpowiadają za: otworzenie portu, zamknięcie portu i programu, obliczenie LRC danych, wysłanie danych do mikroprocesora. KONFIGURACJA POCZĄTKOWA Oczywiście pliki nagłówkowe mogą być różne niż przedstawione w poniższym kodzie. (1) (2) W pierwszym fragmencie zdefiniowane są pliki nagłówkowe oraz zadeklarowane zmienne globalne. Zmienne HANDLE, LPCTSTR, DCB są zmiennymi WinAPI, dzięki nim możliwa jest obsługa portu COM. Poniżej znajduje się główna funkcja programu. Ma ona za zadanie wpisać wartości startowe do tabeli ramki wiadomości. Wykorzystano tutaj obiekt StrinGrid, będący niczym innym jak tabelą stringów. Jego parametr Cells[x][y] wskazuje na daną komórkę w tabeli. 24

25 OTWORZENIE PORTU Otworzenie portu następuje po wciśnięciu przycisku OpenComm. Poniżej zamieszczono kod programu odpowiedzialny za inicjalizacje portu. (3) Na początku sprawdzana są stany CheckBoxów. Przydzielana jest odpowiednia nazwa dla odpowiedniego wskazania. Nazwa lpfilename wskazuje na nazwę portu do obsługi. Inicjowanie portu odbywa się za pomocą funkcji CreateFile(). Jeśli poprawnie otworzono port, pobierane są wcześniejsze ustawienia oraz ustawiane są aktualne parametry transmisji. ZAMKNIĘCIE PORTU WYJŚCIE Z PROGRAMU Zawsze trzeba pamiętać, że po zakończonych transmisjach i przed końcem programu, należy zamknąć otworzony port, tym samym zwolnić alokowaną pamięć. W naszym programie odbywa się to w dwóch funkcjach, widocznych poniżej. (4) 25

26 Jak widać, druga funkcja jest wywoływana w momencie wciśnięcia przycisku CloseComm. FUNKCJE POMOCNICZE Jako, że parametr StringGrida - goediting został ustawiony na true, do tabeli można wpisywać dowolne ciągi znaków. Założono, że użytkownik będzie wpisywał poprawne dane i nie stworzono obsługi błędów. Trzeba było jednak stworzyć funkcje wspomagające. Jedną z takich funkcji jest zamiana wpisanego stringa do tabeli StringGrid na wartość w kodzie szesnastkowym. Potrzebne było to do wysyłania danych (mikrokontroler oczekiwał na dane w systemie szesnastkowym Modbus). Funkcja obsługująca ten algorytm jest uniwersalna. Pozwala na zamianę każdego ciągu znaków na liczbę w systemach od dwójkowego po szesnastkowy. Autor opracowania nie jest autorem tej funkcji. Skorzystał z dostępnych algorytmów opracowanych wcześniej. (5) Kolejną funkcją pomocniczą jest funkcja licząca LRC ramki informacyjnej. Składa się z dwóch części. Pierwsza przygotowuje ramkę, zaś druga jest zmodyfikowaną funkcją zaczerpniętą z dokumentacji protokołu Modbus. 26

27 (6) (7) Jak widać ta funkcja jest identyczna w stosunku do funkcji w kodzie obsługi mikrokontrolera 2. Ostania z funkcji pomocniczych dec2hex() ma za zadanie konwertować obliczoną wartość LRC do postaci HEX. Poniżej znajduje się wygląd tej funkcji. 2 Świadczy to o uniwersalności języka C. 27

28 (8) NADAWANIE RAMEK Funkcja nadawania ramek jest uaktywniana przez przycisk Button1. Nadawane są kolejno: bit startu, adres, funkcja, ilość danych, dane, LRC. W programie założono, że ilość danych będzie wynosiła zawsze jeden, ze względu na uproszczenie obsługi. Czytelnik może skonstruować dynamicznego StringGrida zmieniającego swój rozmiar, pozwalając na wprowadzanie większej ilości danych. Funkcja wysyłania danych też musiałaby być lekko zmodyfikowana, ale nie powinno to sprawić większych problemów. Poniżej znajduje się kod wysyłający dane portem szeregowym do mikrokontrolera. 28

29 (9) Widoczne są przeprowadzane konwersje ze string na *char. Spowodowane jest to wymaganiami funkcji obsługujących odpowiednie przekształcenia. Wyjaśnienia wymaga funkcja TransmitCommChar() bo dotychczas się nie pojawiła. BOOL TransmitCommChar(HANDLE hcommdev, char chtransmit); Pozwala ona na wysłanie jednego znaku do bufora nadajnika. W publikacji RS 232 C. Praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera [4] szczegółowo został omówiony zakres użycia tej funkcji. Funkcja Sleep() zatrzymuje działanie programu na milisekundy, tak aby bufor odbiornika mikroprocesora zdążył przetworzyć otrzymane dane. PODSUMOWANIE Jak widać dzięki środowisku Borland Builder można stworzyć zaawansowane programy obsługi portu COM, co pozwala również na obsłużenie różnych protokołów i wykorzystanie w celach przemysłowych. Należy nadmienić, że stworzony program to tylko szczyt góry lodowej kryjącej się pod nazwą WinAPI. Po szczegóły po raz kolejny odsyłam do książki Andrzeja Daniluka RS 232 C. Praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Jest to najlepsze źródło opisujące standard RS232C w szczególności programowanie pod Windows. 6. Podsumowanie Obsługa portu szeregowego jest pojęciem bardzo szerokim, gdyż tyczy się różnych urządzeń, różnego sposobu sterowania i różnych opcji transmisji. Niniejsze opracowanie to jedynie wstęp do tworzenia aplikacji dla mikrokontrolerów AVR, obsługiwanych przez komputery PC, a także pracujących w trybach master/slave, w magistralach przemysłowych, jak np. RS485. Można znaleźć wiele zastosować wykorzystania interfejsu szeregowego, a także bardzo dużą liczbę urządzeń korzystającą z tego typu interfejsu. 29

30 Autor starał się przedstawić podstawowe wiadomości o komunikacji PC z. ATmega8. Celem było obsłużenie prostej komunikacji, bez sprawdzania błędów, wykorzystywania zaawansowanych funkcji. Za główny cel tego opracowania autor przyjął zasygnalizowanie sposobów i rodzajów obsługi interfejsu RS232, ma nadzieję, że po części się to udało. 7. Bibliografia [1] Daniluk A.: RS232C. Praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Gliwice 2001, Helion [2] Grębosz J.: Symfonia C++. Kraków 1999, Kallimach [3] Opracowanie własne Programowanie mikrokontrolerów AVR w języku C. Kraków 2007 [4] Witkowski A.: Mikrokontrolery AVR. Programowanie w języku C. Katowice 2006, PAN [5] Atmel : ATmega8 datasheet. Atmel 2007 [6] Modicon : Modbus Protocol Reference Guide. Massachusetts, Modicon 1996 [7] 8. Tabela kodów ASCII 30

TECHNIKA MIKROPROCESOROWA

TECHNIKA MIKROPROCESOROWA LABORATORIUM TECHNIKA MIKROPROCESOROWA Port transmisji szeregowej USART ATmega Opracował: Tomasz Miłosławski 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się ze sposobami komunikacji mikrokontrolera

Bardziej szczegółowo

Programowanie mikrokontrolerów. 15 stycznia 2008

Programowanie mikrokontrolerów. 15 stycznia 2008 Programowanie mikrokontrolerów Marcin Engel Marcin Peczarski 15 stycznia 2008 RS232 Jeden z najstarszych interfejsów szeregowych Pierwotne przeznaczenie to łączenie terminali znakowych z komputerem, często

Bardziej szczegółowo

Komunikacja w mikrokontrolerach Laboratorium

Komunikacja w mikrokontrolerach Laboratorium Laboratorium Ćwiczenie 2 Magistrala UART Program ćwiczenia: konfiguracja transmisji danych między komputerem PC a mikrokontrolerem przy użyciu magistrali UART. Zagadnienia do przygotowania: podstawy programowania

Bardziej szczegółowo

Podstawy systemów mikroprocesorowych. Interfejs USART. Interfejsy szeregowe w mikrokontrolerach AVR

Podstawy systemów mikroprocesorowych. Interfejs USART. Interfejsy szeregowe w mikrokontrolerach AVR Podstawy systemów mikroprocesorowych Wykład nr 4 Interfejsy szeregowe dr Piotr Fronczak http://www.if.pw.edu.pl/~agatka/psm.html Komputery przesyłają dane na dwa sposoby: równolegle: Kilka bitów danych

Bardziej szczegółowo

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN MODBUS RTU wersja M1.14 protokół komunikacyjny do wyświetlaczy SEM 04.2010 Str. 1/5 MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN W wyświetlaczach LDN protokół MODBUS RTU wykorzystywany

Bardziej szczegółowo

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

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

Bardziej szczegółowo

INTERFEJSY SYSTEMÓW ELEKTRONICZNYCH. Interfejsy klasy RS

INTERFEJSY SYSTEMÓW ELEKTRONICZNYCH. Interfejsy klasy RS INTERFEJSY SYSTEMÓW ELEKTRONICZNYCH Interfejsy klasy RS Grzegorz Lentka/Marek Niedostatkiewicz Katedra Optoelektroniki i Systemów Elektronicznych ETI PG 2010 RS232 (1) RS232-1962, RS232C - 1969, Electronic

Bardziej szczegółowo

System interfejsu RS 232C opracowali P. Targowski i M. Rębarz

System interfejsu RS 232C opracowali P. Targowski i M. Rębarz System interfejsu RS 232C opracowali P. Targowski i M. Rębarz Standard RS 232C (Recommended Standard) został ustanowiony w 1969 r. przez Electronic Industries Association. Definiuje on sposób nawiązania

Bardziej szczegółowo

4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD.

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,

Bardziej szczegółowo

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych Architektura Systemów Komputerowych Transmisja szeregowa danych Standardy magistral szeregowych 1 Transmisja szeregowa Idea transmisji szeregowej synchronicznej DOUT Rejestr przesuwny DIN CLK DIN Rejestr

Bardziej szczegółowo

CM-180-5 Konwerter SUCOM_A Master - ModBus RTU Slave

CM-180-5 Konwerter SUCOM_A Master - ModBus RTU Slave CM-180-5 Konwerter SUCOM_A Master - ModBus RTU Slave AN-CM-180-5-1-v1_02 Data aktualizacji: 02/2013r. 02/2013 AN-CM-180-5-1-v1_02 1 Spis treści Symbole i oznaczenia... 3 Ogólne zasady instalacji i bezpieczeństwa...

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

Funkcje standardowej biblioteki wejść-wyjść do wyświetlania i pobierania danych

Funkcje standardowej biblioteki wejść-wyjść do wyświetlania i pobierania danych Funkcje standardowej biblioteki wejść-wyjść do wyświetlania i pobierania danych Przykłady wykorzystanie funkcji printf i scanf do wyświetlania danych na wyświetlaczu LCD oraz komunikacji sterownika mikroprocesorowego

Bardziej szczegółowo

Instrukcja MM-717 Tarnów 2010

Instrukcja MM-717 Tarnów 2010 Instrukcja MM-717 Tarnów 2010 Przeznaczenie modułu komunikacyjnego MM-717. Moduł komunikacyjny MM-717 służy do realizacji transmisji z wykorzystaniem GPRS pomiędzy systemami nadrzędnymi (systemami SCADA)

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

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

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ŝ.

Bardziej szczegółowo

Terminal TR01. Terminal jest przeznaczony do montażu naściennego w czystych i suchych pomieszczeniach.

Terminal TR01. Terminal jest przeznaczony do montażu naściennego w czystych i suchych pomieszczeniach. Terminal TR01 Terminal jest m, umożliwiającym odczyt i zmianę nastaw parametrów, stanów wejść i wyjść współpracujących z nim urządzeń automatycznej regulacji wyposażonych w port komunikacyjny lub i obsługujących

Bardziej szczegółowo

interfejs szeregowy wyświetlaczy do systemów PLC

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

Bardziej szczegółowo

Przemysłowe Sieci informatyczne

Przemysłowe Sieci informatyczne Wykład #3 Transmisja szeregowa Przemysłowe Sieci informatyczne Opracował dr inż. Jarosław Tarnawski Plan wykładu Transmisja szeregowa i równoległa Transmisja synchroniczna i asynchroniczna Simpleks, pół

Bardziej szczegółowo

Czujnik zbliżeniowy indukcyjny

Czujnik zbliżeniowy indukcyjny Czujnik zbliżeniowy indukcyjny Wizualizacja Danych Sensorycznych Projekt Łukasz Adamczuk (133047) 1. Wstęp. Czujniki indukcyjne zbliżeniowe są elementami automatyki reagującymi na wprowadzenie metalu w

Bardziej szczegółowo

CM-180-1 Konwerter ModBus RTU slave ModBus RTU slave

CM-180-1 Konwerter ModBus RTU slave ModBus RTU slave CM-180-1 Konwerter ModBus RTU slave ModBus RTU slave Spis treści: 1. Przeznaczenie modułu 3 2. Tryby pracy modułu 3 2.1. Tryb inicjalizacyjny 3 2.2. Tryb normalny 3 3. Podłączenie modułu 3 4. Konfiguracja

Bardziej szczegółowo

SM210 RS485 - JBUS/MODBUS dla SM102E. Æ Instrukcja obsługi

SM210 RS485 - JBUS/MODBUS dla SM102E. Æ Instrukcja obsługi SM210 RS485 - JBUS/MODBUS dla SM102E Æ Instrukcja obsługi Æ Spis treści Przygotowanie... 1 Informacje ogólne... 1 Montaż... 2 Programowanie... 3 Wejście w tryb programowania (COde= 100)... 3 Adres komunikacji...

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

2010-04-12. Magistrala LIN

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

Bardziej szczegółowo

1 Moduł Modbus ASCII/RTU 3

1 Moduł Modbus ASCII/RTU 3 Spis treści 1 Moduł Modbus ASCII/RTU 3 1.1 Konfigurowanie Modułu Modbus ASCII/RTU............. 3 1.1.1 Lista elementów Modułu Modbus ASCII/RTU......... 3 1.1.2 Konfiguracja Modułu Modbus ASCII/RTU...........

Bardziej szczegółowo

SM211 RS485 - JBUS/MODBUS dla SM103E. Æ Instrukcja obsługi

SM211 RS485 - JBUS/MODBUS dla SM103E. Æ Instrukcja obsługi SM211 RS485 - JBUS/MODBUS dla SM103E Æ Instrukcja obsługi Æ Spis treści Przygotowanie... 1 Informacje ogólne... 1 Montaż... 2 Programowanie... 3 Adres komunikacji... 4 Prędkość transmisji danych... 4 Kontrola

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Modem Bluetooth MBL-232/UK

Modem Bluetooth MBL-232/UK Modem Bluetooth MBL-232/UK Dziękujemy za wybór naszego produktu. Niniejsza instrukcja pomoże państwu w prawidłowym podłączeniu urządzenia, uruchomieniu, oraz umożliwi prawidłowe z niego korzystanie. Przed

Bardziej szczegółowo

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości Politechnika Lubelska Wydział Elektrotechniki i Informatyki PRACA DYPLOMOWA MAGISTERSKA Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości Marcin Narel Promotor: dr inż. Eligiusz

Bardziej szczegółowo

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Instytut Informatyki Politechnika Poznańska 1 Sieć Modbus w dydaktyce Protokół Modbus Rozwiązania sprzętowe Rozwiązania programowe Podsumowanie 2 Protokół Modbus Opracowany w firmie Modicon do tworzenia

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

Konfigurator Modbus. Instrukcja obsługi programu Konfigurator Modbus. wyprodukowano dla

Konfigurator Modbus. Instrukcja obsługi programu Konfigurator Modbus. wyprodukowano dla Wersja 1.1 29.04.2013 wyprodukowano dla 1. Instalacja oprogramowania 1.1. Wymagania systemowe Wspierane systemy operacyjne (zarówno w wersji 32 i 64 bitowej): Windows XP Windows Vista Windows 7 Windows

Bardziej szczegółowo

3. Sieć PLAN. 3.1 Adresowanie płyt głównych regulatora pco

3. Sieć PLAN. 3.1 Adresowanie płyt głównych regulatora pco 3. Sieć PLAN Wszystkie urządzenia podłączone do sieci plan są identyfikowane za pomocą swoich adresów. Ponieważ terminale użytkownika i płyty główne pco wykorzystują ten sam rodzaj adresów, nie mogą posiadać

Bardziej szczegółowo

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 www.and-tech.pl Strona 1 Zawartość Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2

Bardziej szczegółowo

Kod produktu: MP01611

Kod produktu: MP01611 CZYTNIK RFID ZE ZINTEGROWANĄ ANTENĄ, WYJŚCIE RS232 (TTL) Moduł stanowi tani i prosty w zastosowaniu czytnik RFID dla transponderów UNIQUE 125kHz, umożliwiający szybkie konstruowanie urządzeń do bezstykowej

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Strona 1 Spis treści 1. Instalacja...3 2. Instalacja sterowników w trybie HID....3 3. Programowanie w trybie HID...4 4. Instalacja w trybie COM....5 5. Programowanie

Bardziej szczegółowo

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

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

Bardziej szczegółowo

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

Instrukcja programu użytkownika OmegaUW.Exe. Program obsługuje następujące drukarki fiskalne: ELZAB OMEGA II generacji ELZAB OMEGA F, MERA, MERA F.

Instrukcja programu użytkownika OmegaUW.Exe. Program obsługuje następujące drukarki fiskalne: ELZAB OMEGA II generacji ELZAB OMEGA F, MERA, MERA F. Instrukcja programu użytkownika OmegaUW.Exe Program obsługuje następujące drukarki fiskalne: ELZAB OMEGA II generacji ELZAB OMEGA F, MERA, MERA F. Program nie obsługuje drukarek ELZAB OMEGA I generacji

Bardziej szczegółowo

CM-180-26 ModBus RTU Slave Danfoss MCD3000 Master

CM-180-26 ModBus RTU Slave Danfoss MCD3000 Master CM-180-26 ModBus RTU Slave Danfoss MCD3000 Master AN-CM-180-26-1-v1_03 Data aktualizacji: 02/2013r. 02/2013 AN-CM-180-26-1-v1_03 1 Spis treści Ogólne zasady instalacji i bezpieczeństwa... 3 1. Przeznaczenie...

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR

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

Bardziej szczegółowo

SmartDRIVE protokół transmisji szeregowej RS-485

SmartDRIVE protokół transmisji szeregowej RS-485 SmartDRIVE protokół transmisji szeregowej RS-485 Dokumentacja przygotowana przez firmę Gryftec w oparciu o oryginalną dokumentację dostarczoną przez firmę Westline GRYFTEC 1 / 12 1. Przegląd Kontrolery

Bardziej szczegółowo

APLIKACJA COMMAND POSITIONING Z WYKORZYSTANIEM KOMUNIKACJI SIECIOWEJ Z PROTOKOŁEM USS W PRZETWORNICACH MDS/FDS 5000

APLIKACJA COMMAND POSITIONING Z WYKORZYSTANIEM KOMUNIKACJI SIECIOWEJ Z PROTOKOŁEM USS W PRZETWORNICACH MDS/FDS 5000 APLIKACJA COMMAND POSITIONING Z WYKORZYSTANIEM KOMUNIKACJI SIECIOWEJ Z PROTOKOŁEM USS W PRZETWORNICACH MDS/FDS 5000 Autor: Ver: Marcin Ataman 1.0 Spis treści strona 1. Wstęp... 2 2. Pierwsze uruchomienie....

Bardziej szczegółowo

FAQ: 00000041/PL Data: 09/06/2012. Zastosowanie zmiennych Raw Data Type WinCC v7.0

FAQ: 00000041/PL Data: 09/06/2012. Zastosowanie zmiennych Raw Data Type WinCC v7.0 Zmienne typu Raw Data są typem danych surowych nieprzetworzonych. Ten typ danych daje użytkownikowi możliwość przesyłania do oraz z WinCC dużych ilości danych odpowiednio 208 bajtów dla sterowników serii

Bardziej szczegółowo

1 Moduł Modbus ASCII/RTU

1 Moduł Modbus ASCII/RTU 1 Moduł Modbus ASCII/RTU Moduł Modbus ASCII/RTU daje użytkownikowi Systemu Vision możliwość komunikacji z urządzeniami za pomocą protokołu Modbus. Moduł jest konfigurowalny w taki sposób, aby umożliwiał

Bardziej szczegółowo

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 www.and-tech.pl Strona 1 Zawartość Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2

Bardziej szczegółowo

Kod produktu: MP-BT-USB

Kod produktu: MP-BT-USB Interfejs Bluetooth na USB do zastosowań kontrolno-pomiarowych, sterowany komendami AT Urządzenie zbudowano w oparciu o moduł transmisyjny Bluetooth typu BTM-222 firmy Rayson, umożliwiający zasięg bezprzewodowy

Bardziej szczegółowo

2. Format danych i zaimplementowane funkcje MODBUS

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

Bardziej szczegółowo

Przemysłowy odtwarzacz plików MP3

Przemysłowy odtwarzacz plików MP3 Przemysłowy odtwarzacz plików MP3 WWW.DIGINN.EU Spis treści 1. Opis odtwarzacza MP3... 3 2. Wyprowadzenia odtwarzacza... 4 2.1 Wymiary płytki... 6 4. Tryby pracy... 8 5. Podłączanie MP3 Playera... 9 6.

Bardziej szczegółowo

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle Uniwersalny rejestrator danych pochodzących z portu szeregowego RS 232 Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle - UNIWERSALNY REJESTRATOR DANYCH Max. 35 GB pamięci! to nowoczesne

Bardziej szczegółowo

STEKOP SA. Odbiornik dialerowy. Zakład Pracy Chronionej 15-404 Białystok, ul. Młynowa 21 tel./fax : (+48 85) 7420039, 7423567 http://www.stekop.

STEKOP SA. Odbiornik dialerowy. Zakład Pracy Chronionej 15-404 Białystok, ul. Młynowa 21 tel./fax : (+48 85) 7420039, 7423567 http://www.stekop. STEKOP SA Zakład Pracy Chronionej 15-404 Białystok, ul. Młynowa 21 tel./fax : (+48 85) 7420039, 7423567 http://www.stekop.com Odbiornik dialerowy typ AT 1M ver. 1.0 Instrukcja użytkownika Białystok lipiec

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Spis treści. 1 Moduł RFID (APA) 3

Spis treści. 1 Moduł RFID (APA) 3 Spis treści 1 Moduł RFID (APA) 3 1.1 Konfigurowanie Modułu RFID..................... 3 1.1.1 Lista elementów Modułu RFID................. 3 1.1.2 Konfiguracja Modułu RFID (APA)............... 4 1.1.2.1

Bardziej szczegółowo

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 Strona 1 Zawartość 1. Instalacja... 3 2. Instalacja sterowników w trybie HID.... 3 3. Programowanie

Bardziej szczegółowo

Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. (05.2011)

Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. (05.2011) Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. (05.2011) Interfejs sieciowy umożliwia przyłączenie jednego lub więcej przepływomierzy do wspólnej

Bardziej szczegółowo

Komunikacja szeregowa UART:

Komunikacja szeregowa UART: Kmunikacja szeregwa UART: Serial Buses UART Universal Asynchrnus Receiver Transmitter: Standard rzwinięty już w latach 60, Prsty, uniwersalny, dbrze udkumentwany, Wlna kmunikacja: max. 1Mbit/s, P jednym

Bardziej szczegółowo

Moduł RS232 E054. TAP - Systemy Alarmowe Sp. z o. o. os. Armii Krajowej 125 61-381 Poznań tel. 061 876 70 88; fax: 061 875 03 03

Moduł RS232 E054. TAP - Systemy Alarmowe Sp. z o. o. os. Armii Krajowej 125 61-381 Poznań tel. 061 876 70 88; fax: 061 875 03 03 TAP - Systemy Alarmowe Sp. z o. o. os. Armii Krajowej 125 61-381 Poznań tel. 061 876 70 88; fax: 061 875 03 03 I n s t r u k c j a O b s ł u g i Ademco Microtech Security Moduł RS232 E054 Nr kat.: L114/A

Bardziej szczegółowo

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. 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

Bardziej szczegółowo

UNIPROD 44-100 GLIWICE ul. Sowińskiego 3 tel: +48 32 238 77 31, fax +48 32 238 77 32 e-mail: kontakt@uniprod.pl 12.11.2011.1.

UNIPROD 44-100 GLIWICE ul. Sowińskiego 3 tel: +48 32 238 77 31, fax +48 32 238 77 32 e-mail: kontakt@uniprod.pl 12.11.2011.1. UNIPROD 44-100 GLIWICE ul. Sowińskiego 3 tel: +48 32 238 77 31, fax +48 32 238 77 32 e-mail: kontakt@uniprod.pl 12.11.2011.1 UniSonic_HL INSTRUKCJA OBSŁUGI INTERFEJS SIECIOWY RS-485 MODBUS Spis treści.

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

Instrukcja użytkownika ARSoft-WZ1

Instrukcja użytkownika ARSoft-WZ1 05-090 Raszyn, ul Gałczyńskiego 6 tel (+48) 22 101-27-31, 22 853-48-56 automatyka@apar.pl www.apar.pl Instrukcja użytkownika ARSoft-WZ1 wersja 3.x 1. Opis Aplikacja ARSOFT-WZ1 umożliwia konfigurację i

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

ARS3-MODEM dokumentacja modemu radiowego do lokalnej transmisji danych w wolnych pasmach 433MHz i 868MHz

ARS3-MODEM dokumentacja modemu radiowego do lokalnej transmisji danych w wolnych pasmach 433MHz i 868MHz ARS3-MODEM dokumentacja modemu radiowego do lokalnej transmisji danych w wolnych pasmach 433MHz i 868MHz dokument DOK 04-05-12 wersja 1.0 arskam.com www.arskam.com 1 firma ARIES Warszawa Polska 1. Zastosowania

Bardziej szczegółowo

System automatyki domowej. Nexo.API Protokół Karty komend NXW396

System automatyki domowej. Nexo.API Protokół Karty komend NXW396 System automatyki domowej Nexo.API Protokół Karty komend NXW396 Nexwell Engineering 04/2010 Copyright Nexwell Engineering Autor dołożył wszelkich starań aby informacje zawarte w dokumencie były aktualne

Bardziej szczegółowo

asix4 Podręcznik użytkownika CtSNPX - drajwer protokołu SNPX sterowników GE Fanuc Podręcznik użytkownika

asix4 Podręcznik użytkownika CtSNPX - drajwer protokołu SNPX sterowników GE Fanuc Podręcznik użytkownika Podręcznik użytkownika CtSNPX - drajwer protokołu SNPX sterowników GE Fanuc Podręcznik użytkownika Dok. Nr PLP4060 Wersja: 05-10-2005 Podręcznik użytkownika asix4 ASKOM i asix to zastrzeżone znaki firmy

Bardziej szczegółowo

Rejestratory Sił, Naprężeń.

Rejestratory Sił, Naprężeń. JAS Projektowanie Systemów Komputerowych Rejestratory Sił, Naprężeń. 2012-01-04 2 Zawartość Typy rejestratorów.... 4 Tryby pracy.... 4 Obsługa programu.... 5 Menu główne programu.... 7 Pliki.... 7 Typ

Bardziej szczegółowo

STEROWNIK ŚWIATEŁ i SZLABANÓW SWS-4/485K/UK

STEROWNIK ŚWIATEŁ i SZLABANÓW SWS-4/485K/UK STEROWNIK ŚWIATEŁ i SZLABANÓW SWS-4/485K/UK Dziękujemy za wybór naszego produktu. Niniejsza instrukcja pomoże państwu w prawidłowym podłączeniu urządzenia, uruchomieniu, oraz umożliwi prawidłowe z niego

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

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

Programator procesorów rodziny AVR AVR-T910

Programator procesorów rodziny AVR AVR-T910 Programator procesorów rodziny AVR AVR-T910 Instrukcja obsługi Opis urządzenia AVR-T910 jest urządzeniem przeznaczonym do programowania mikrokontrolerów rodziny AVR firmy ATMEL. Programator podłączany

Bardziej szczegółowo

Instrukcja obsługi. PROGRAMATOR dualavr. redflu Tarnów

Instrukcja obsługi. PROGRAMATOR dualavr. redflu Tarnów 2008 Instrukcja obsługi PROGRAMATOR dualavr redflu Tarnów 1. Instalacja. Do podłączenia programatora z PC wykorzystywany jest przewód USB A-B (często spotykany przy drukarkach). Zalecane jest wykorzystanie

Bardziej szczegółowo

Ćwiczenie: JavaScript Cookies (3x45 minut)

Ćwiczenie: JavaScript Cookies (3x45 minut) Ćwiczenie: JavaScript Cookies (3x45 minut) Cookies niewielkie porcje danych tekstowych, które mogą być przesyłane między serwerem a przeglądarką. Przeglądarka przechowuje te dane przez określony czas.

Bardziej szczegółowo

Moduł Ethernetowy. instrukcja obsługi. Spis treści

Moduł Ethernetowy. instrukcja obsługi. Spis treści Moduł Ethernetowy instrukcja obsługi Spis treści 1. Podstawowe informacje...2 2. Konfiguracja modułu...4 3. Podłączenie do sieci RS-485 i LAN/WAN...9 4. Przywracanie ustawień fabrycznych...11 www.el-piast.com

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

UW-DAL-MAN v2 Dotyczy urządzeń z wersją firmware UW-DAL v5 lub nowszą.

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

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

NX700 PLC www.atcontrol.pl

NX700 PLC www.atcontrol.pl NX700 PLC NX700 Podstawowe cechy Rozszerzalność, niezawodność i łatwość w integracji Szybki procesor - zastosowanie technologii ASIC pozwala wykonywać CPU proste instrukcje z prędkością 0,2 us/1 krok Modyfikacja

Bardziej szczegółowo

Opis czytnika TRD-FLAT CLASSIC ver. 1.1. Naścienny czytnik transponderów UNIQUE w płaskiej obudowie

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

Bardziej szczegółowo

Instrukcja do konwertera USB-RS232

Instrukcja do konwertera USB-RS232 1. Przeznaczenie Instrukcja do konwertera USB-RS232 Komputery coraz częściej nie posiadają portów szeregowych, natomiast wyposażone są w porty USB. Konwerter USB-RS232 to urządzenie rozwiązujące problem

Bardziej szczegółowo

SystimPlus. Dokumentacja (FAQ) dla wersji: v1.14.05.12

SystimPlus. Dokumentacja (FAQ) dla wersji: v1.14.05.12 SystimPlus Dokumentacja (FAQ) dla wersji: v1.14.05.12 Spis treści 1.Co to jest SystimPlus?... 1 2.Instalacja i wymagania... 1 3.Jakie drukarki fiskalne obsługuje SystimPlus?... 3 4.Jak połączyć się z drukarką

Bardziej szczegółowo

Ćwiczenia z S7-1200. Komunikacja S7-1200 z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Ćwiczenia z S7-1200. Komunikacja S7-1200 z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP. Ćwiczenia z S7-1200 Komunikacja S7-1200 z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP FAQ Marzec 2012 Spis treści 1 Opis zagadnienie poruszanego w ćwiczeniu. 3 1.1 Wykaz

Bardziej szczegółowo

Użycie AVR Studio do kompilacji AVRUB

Użycie AVR Studio do kompilacji AVRUB Użycie AVR Studio do kompilacji AVRUB 1. Utwórz nowy folder, skopiuj wszystkie pliki z avrub do niego. 2. Otwórz AVR Studio, utwórz nowy projekt, dodaj plik bootldr.c do grupy "Source Files". 3. Otwórz

Bardziej szczegółowo

Protokół MODBUS. Przemysłowe Sieci Informatyczne (PSI)

Protokół MODBUS. Przemysłowe Sieci Informatyczne (PSI) Przemysłowe Sieci Informatyczne (PSI) Protokół MODBUS Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok II, semestr IV Opracowanie:

Bardziej szczegółowo

1. Opis. 2. Wymagania sprzętowe:

1. Opis. 2. Wymagania sprzętowe: 1. Opis Aplikacja ARSOFT-WZ2 umożliwia konfigurację, wizualizację i rejestrację danych pomiarowych urządzeń produkcji APAR wyposażonych w interfejs komunikacyjny RS232/485 oraz protokół MODBUS-RTU. Aktualny

Bardziej szczegółowo

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

2. PORTY WEJŚCIA/WYJŚCIA (I/O) 2. PORTY WEJŚCIA/WYJŚCIA (I/O) 2.1 WPROWADZENIE Porty I/O mogą pracować w kilku trybach: - przesyłanie cyfrowych danych wejściowych i wyjściowych a także dla wybrane wyprowadzenia: - generacja przerwania

Bardziej szczegółowo

Zasady programowania Dokumentacja

Zasady programowania Dokumentacja Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika

Bardziej szczegółowo

RPTC CONTROLLER (v1.11) STEROWNIK PRZEMIENNIKA RADIOWEGO OBSŁUGA KOMUNIKATÓW GŁOSOWYCH OBSŁUGA KOMUNIKATÓW IDCW OPCJONALNY MODUŁ GSM

RPTC CONTROLLER (v1.11) STEROWNIK PRZEMIENNIKA RADIOWEGO OBSŁUGA KOMUNIKATÓW GŁOSOWYCH OBSŁUGA KOMUNIKATÓW IDCW OPCJONALNY MODUŁ GSM RPTC CONTROLLER (v1.11) STEROWNIK PRZEMIENNIKA RADIOWEGO OBSŁUGA KOMUNIKATÓW GŁOSOWYCH OBSŁUGA KOMUNIKATÓW IDCW OPCJONALNY MODUŁ GSM Instrukcja użytkownika Instrukcja oprogramowania konfiguracyjnego Designer:

Bardziej szczegółowo

Modem Bluetooth MBL-USB/UK

Modem Bluetooth MBL-USB/UK Modem Bluetooth MBL-USB/UK Dziękujemy za wybór naszego produktu. Niniejsza instrukcja pomoże państwu w prawidłowym podłączeniu urządzenia, uruchomieniu, oraz umożliwi prawidłowe z niego korzystanie. Przed

Bardziej szczegółowo

Konwerter Transmisji KT-01

Konwerter Transmisji KT-01 EL-TEC Sp. z o.o. e-mail: info@el-tec.com.pl http://www.el-tec.com.pl Konwerter Transmisji KT-01 Dokumentacja Techniczno Ruchowa Spis Treści 1. Opis działania... 3 1.1. Podstawowe cechy:... 3 1.2. Dane

Bardziej szczegółowo

TM-47.1-2 PROGRAM TERMINALA RS232 DLA MULTIPLEKSERA 8XRS232 / ETHERNET 10BASE-T

TM-47.1-2 PROGRAM TERMINALA RS232 DLA MULTIPLEKSERA 8XRS232 / ETHERNET 10BASE-T LANEX S.A. ul. Ceramiczna 8 20-150 Lublin tel. (081) 444 10 11 tel/fax. (081) 740 35 70 TM-47.1-2 PROGRAM TERMINALA RS232 DLA MULTIPLEKSERA 8XRS232 / ETHERNET 10BASE-T LANEX S.A., ul.ceramiczna 8, 20-150

Bardziej szczegółowo

1.10 MODUŁY KOMUNIKACYJNE

1.10 MODUŁY KOMUNIKACYJNE ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO 1.10 MODUŁY KOMUNIKACYJNE IC200SET001 konwerter łącza RS (RS232 lub RS485) na Ethernet (10/100Mbit), obsługiwane protokoły: SRTP, Modbus TCP IC200USB001

Bardziej szczegółowo

Konwerter DAN485-MDIP

Konwerter DAN485-MDIP Konwerter DAN485-MDIP KONWERTER DAN485-MDIP służy do zamiany standardu komunikacyjnego z RS232 na RS485 (lub RS422). Dzięki niemu możliwe jest transmitowanie danych na większe odległości (do 1200m) niż

Bardziej szczegółowo

Wybór urządzenia/ Scanner Selection Screen: Skrócony Opis Programu MetroSet 2

Wybór urządzenia/ Scanner Selection Screen: Skrócony Opis Programu MetroSet 2 Wybór urządzenia/ Scanner Selection Screen: Skrócony Opis Programu MetroSet 2 Ekran konfiguracji: Zrzut ekranu przedstawia menu konfiguracji skanera. Możemy stąd zmieniać ustawienia urządzenia, pobierać

Bardziej szczegółowo

Instrukcja dla: Icomsat v1.0 SIM900 GSM/GPRS shield for Arduino oraz dla GPRS Shield produkcji Seeedstudio.

Instrukcja dla: Icomsat v1.0 SIM900 GSM/GPRS shield for Arduino oraz dla GPRS Shield produkcji Seeedstudio. Instrukcja dla: Icomsat v1.0 SIM900 GSM/GPRS shield for Arduino oraz dla GPRS Shield produkcji Seeedstudio. IComsat jest to shield GSM/GPRS współpracujący z Arduino oparty o moduł SIM900 firmy SIMCOM.

Bardziej szczegółowo

Odbiornik pilotów RC-5. z interfejsem RS-485 / MODBUS

Odbiornik pilotów RC-5. z interfejsem RS-485 / MODBUS Odbiornik pilotów RC-5 z interfejsem RS-485 / MODBUS Wersja urządzenia: 1.0 Wersja dokumentacji: 1.1 http://plc-home.pl 1. Projekt, prawa i użytkowanie Poniżej opisane urządzenie jest projektem hobbystycznym

Bardziej szczegółowo

Konwerter Transmisji KT-02

Konwerter Transmisji KT-02 EL-TEC Sp. z o.o. e-mail: info@el-tec.com.pl http://www.el-tec.com.pl Konwerter Transmisji KT-02 Dokumentacja Techniczno Ruchowa Spis treści 1. Opis działania...3 1.1. Dane techniczne...4 1.2. Instalacje

Bardziej szczegółowo

MIKROKONTROLERY - MAGISTRALE SZEREGOWE

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

Bardziej szczegółowo

High Speed USB 2.0 Development Board

High Speed USB 2.0 Development Board High Speed USB 2.0 Development Board Instrukcja użytkownika. wersja 0.1 Autor: Łukasz Krzak Spis treści. 1. Opis układu 1.1. Widok płytki 1.2. Diagram przepływu informacji 2. Konfiguracja układu. 2.1.

Bardziej szczegółowo

GRM-10 - APLIKACJA PC

GRM-10 - APLIKACJA PC GRM-10 - APLIKACJA PC OPIS Aplikacja służy do aktualizacji oprogramowania urządzenia GRM-10 oraz jego konfiguracji z poziomu PC. W celu wykonania wskazanych czynności konieczne jest połączenie GRM-10 z

Bardziej szczegółowo