TECHNIKA MIKROPROCESOROWA

Podobne dokumenty
TECHNIKA MIKROPROCESOROWA

. Rodzaje transmisji sygnału i RS-232

Instytut Teleinformatyki

MIKROPROCESORY architektura i programowanie

Techniki mikroprocesorowe i systemy wbudowane

Hardware mikrokontrolera X51

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

MIKROPROCESORY architektura i programowanie

Start Bity Bit Stop 1 Bit Par Rys. 1

Architektura mikrokontrolera MCS51

Architektura mikrokontrolera MCS51

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

INTERFEJSY SYSTEMÓW ELEKTRONICZNYCH. Interfejsy klasy RS

4 Transmisja szeregowa, obsługa wyświetlacza LCD.

LABORATORIUM TELEINFORMATYKI W GÓRNICTWIE

MOBOT-RCR v2 miniaturowe moduły radiowe Bezprzewodowa transmisja UART

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

IZOLATOR FOTOELEKTRYCZNY Z INTERFEJSEM SZEREGOWYM RS-232

Kod produktu: MP01611-ZK

Ćwiczenie 2 Transmisja a szeregowa µc 8051(8052) - PC

Ćwiczenie 6 Komunikacja z komputerem (łącze RS232)

Kod produktu: MP01611

Przemysłowe Sieci informatyczne

dokument DOK wersja 1.0

Instrukcje do laboratorium ASK (1)

Programowanie mikrokontrolerów AVR z rodziny ATmega.

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

Instytut Teleinformatyki

Kod produktu: MP01611-ZK

Zerowanie mikroprocesora

Kod produktu: MP-BTM222-5V

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Kod produktu: MP01105T

Instrukcja obsługi. Terminal SD for DB25 CNC

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Instrukcja do oprogramowania ENAP DEC-1

Kod produktu: MP-BT-RS232

Ćw. 5. Obsługa portu szeregowego UART w mikrokontrolerach 8051.

SML3 październik

Konwerter RS 232 / Centronics typ KSR

TECHNIKA MIKROPROCESOROWA II

Instytut Teleinformatyki

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

Ćwiczenie 9 Częstościomierz oparty na µc 8051(8052)

KERN EW-A01 Wersja /99

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

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

CM Konwerter SUCOM_A Master - ModBus RTU Slave

interfejs szeregowy wyświetlaczy do systemów PLC

Kod produktu: MP01105

Ogólne zasady zestawiania połączeń modemowych pomiędzy sterownikami serii PCD firmy SAIA- Burgess Electronics oraz komputerem systemu asix

Ćwiczenie 7 Matryca RGB

Komunikacja w mikrokontrolerach Laboratorium

IC200UDR002 ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO

RS-H0-05 (K)* Czytnik RFID MHz Mifare. Karta użytkownika

Instrukcja do konwertera USB-RS232

Interfejs transmisji danych

Transmisja danych cyfrowych

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

1.10 MODUŁY KOMUNIKACYJNE

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

Konwerter Transmisji KT-02

Systemy wbudowane. Wprowadzenie. Wprowadzenie. Mikrokontroler 8051 Budowa

Dokumentacja Techniczna. Konwerter USB/RS-232 na RS-285/422 COTER-24I COTER-24N

PUNKTOWE STEROWNIKI VERSAMAX MICRO

Kod produktu: MP00501-XE232NET

CM ModBus RTU slave DMX master

Programowanie Układów Logicznych kod kursu: ETD6203. Komunikacja z układami cyfrowymi W dr inż. Daniel Kopiec

Instrukcja obsługi urządzenia LAN2RS

ALNET USB - RS Konwerter USB RS 232/422/485 Instrukcja obsługi

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

Konwerter sygnału RS-232 na RS-485

CM Konwerter ModBus RTU slave ModBus RTU slave

Programowalne układy logiczne kod kursu: ETD Układy sekwencyjne W

Konwerter Transmisji KT-01

Programowanie mikrokontrolerów. 8 listopada 2007

Technika mikroprocesorowa I Wykład 4

Architektury Komputerów - Laboratorium Informatyka III rok studia dzienne

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

Moduł RS232 E054. TAP - Systemy Alarmowe Sp. z o. o. os. Armii Krajowej Poznań tel ; fax:

MODEMY ASTRAADA GSM ASTOR KATALOG SYSTEMÓW KOMUNIKACJI ASTRAADA GSM. AS30GSM101C Astraada GSM; Modem GSM/GPRS RB900 z RS232; Obsługa SMS

Konwerter DAN485-MDIP

usbcat OPTOIZOLOWANY INTERFEJS USB<->CAT OPTOIZOLOWANE STEROWANIE PTT, CW, FSK GALWANICZNA IZOLACJA AUDIO IN, AUDIO OUT Podręcznik użytkownika

Opis czytnika TRD-80 CLASSIC ver Moduł czytnika transponderów UNIQUE z wbudowaną anteną

CM ModBus RTU Slave Danfoss MCD3000 Master

Instrukcja obsługi czytnika MM-R32

Przemysłowy odtwarzacz plików MP3

Kod produktu: MP-W7100A-RS232

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

Modem Bluetooth MBL-232/UK

SZYMAŃSKI ŁÓDŹ Ul. Wiskicka 22 Tel./fax. (042) Tel./fax. (042) Kom

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

1.1 Co to jest USBCOM? Budowa oraz parametry techniczne... 3

Pracownia Transmisji Danych, Instytut Fizyki UMK, Toruń. Instrukcja do ćwiczenia nr 10. Transmisja szeregowa sieciami energetycznymi

TRB-0610 Konwerter USB RS 232/422/485 Instrukcja obsługi

Schematy Połączeń Kas Fiskalnych z Wagami Elektronicznymi

STEKOP SA. Odbiornik dialerowy. Zakład Pracy Chronionej Białystok, ul. Młynowa 21 tel./fax : (+48 85) ,

Systemy pomiarowe z interfejsem RS-232. KSP w2

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

INTERFEJSY SYSTEMÓW ELEKTRONICZNY

Transkrypt:

LABORATORIUM TECHNIKA MIKROPROCESOROWA Port transmisji szeregowej USART MCS'51 Opracował: Tomasz Miłosławski

1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się ze sposobami komunikacji mikrokontrolera rodziny MCS-51 przez wbudowany port szeregowy USART z komputerem PC oraz innymi urządzeniam posiadającymi synchroniczny lub asynchroniczny port szeregowy oraz jego konfiguracją i oprogramowaniem. 2. Charakterystyka portu szeregowego USART MCS-51 Wbudowany port szeregowy umożliwia przesyłanie informacji szeregowej w jednym z czterech trybów: tryb 0 półdupleksowa szeregowa transmisja synchroniczna 8-bitowych znaków z prędkością f S = 1/12 F XTAL, tryb 1 dupleksowa szeregowa transmisja asynchroniczna 8-bitowych znaków z prędkością ustalaną programowo, tryb 2 dupleksowa szeregowa transmisja asynchroniczna 9-bitowych znaków z prędkością f S = 1/32 F XTAL lub 1/64 F XTAL, tryb 3 dupleksowa szeregowa transmisja asynchroniczna 9-bitowych znaków z prędkością ustalaną programowo. O konfiguracji portu szeregowego decydują bity rejestru SCON znajdującego się w obszarze SFR wewnętrznej pamięci danych mikrokomputera (adres 98H). SCON.7 SM0 ustawienie trybu pracy, SCON.6 SM1 ustawienie trybu pracy, SCON.5 SM2 znacznik maskowania odbioru znaku, SCON.4 REN uaktywnienie odbiornika, SCON.3 TB8 dziewiąty bit wysyłanego znaku w trybie 2 i 3, SCON.2 RB8 dziewiąty bit odebranego znaku w trybie 2 i 3, SCON.1 TI wskaźnik wysłania znaku, znacznik zgłoszenia przerwania, SCON.0 RI wskaźnik odebrania znaku, znacznik zgłoszenia przerwania. Ustawienie trybu pracy zależne jest od stanu bitów SM0 i SM1, co przedstawia Tabela1: Tabela 1 SM0 SM1 TRYB 0 0 0 0 1 1 1 0 2 1 1 3 W celu wysłania znaku przez port szeregowy, po uprzednim określeniu trybu pracy i prędkości transmisji, należy zapisać go do rejestru wyjściowego, natomiast znaki odebrane znajdują się w rejestrze wejściowym. Oba te rejestry występują pod tą samą nazwą SBUF i adresem 99H w obszarze SFR wewnętrznej pamięci danych. 2

RxD dane wyj. D0 D1 D2 D3 D4 D5 D6 D7 TxD CLK Rys.1. Przebiegi czasowe portu szeregowego w trybie 0 nadawanie. µc 8051 RxD TxD X CLK SIPO Rys.2. Wykorzystanie portu szeregowego w trybie 0 - nadawanie. RxD dane wej. D0 D1 D2 D3 D4 D5 D6 D7 TxD CLK Rys. 3. Przebiegi czasowe portu szeregowego w trybie 0 odbiór. µc 8051 RxD TxD Y CLK PISO Rys. 4. Wykorzystanie portu szeregowego w trybie 0 odbiór. 3

START D0 D1 D2 D3 D4 D5 D6 D7 STOP Rys.5. Format danych w trybie 1. START D0 D1 D2 D3 D4 D5 D6 D7 D8 STOP Rys.6. Format danych w trybie 2 i 3. µc8051 RS232 Konwerter poziomów RS-232 TTL TxD RxD Rys. 7. Połączenie µc8051 z komputerem PC za pomocą interfejsu RS232C w trybie 1, 2 lub 3. 3. Określenie prędkości transmisji portu szeregowego USART MCS-51 w trybach 1 i 3 Do programowego określenia prędkości transmisji w trybie 1 i 3 wykorzystywany jest sygnał przepełnienia licznika T1 lub licznika T2 (np. w µc8052). W przypadku wykorzystania licznika T1 w trybie 2, częstotliwość przepełnienia licznika wynosi: stąd prędkość transmisji f T1 = F XTAL / (12 * (256-TH1)) f S = f T1 / 32 dla SMOD = 0, f S = f T1 / 16 dla SMOD = 1, SMOD bit sterujący w rejestrze PCON (adres 97H). 4

Wykorzystanie licznika T2 do określania prędkości transmisji wymaga w rejestrze T2CON ustawienia bitów sterujących RCLK (T2CON.5) dla odbiornika i TCLK (T2CON.4) dla nadajnika. Prędkość transmisji wynosi wówczas: f S = F XTAL / (2 * 16 * (65536 RLD)) gdzie RLD jest wartością początkową wpisaną do rejestrów RLDH i RLDL. 4. Ćwiczenia programowe Poniżej przedstawiono dwa przykładowe programy komunikacji modułu ABC-02 z komputerem PC za pomocą łącza pracującego w standardzie RS232 przez złącze COM1 lub COM2 z wykorzystaniem programu Hyper Terminal. Port szeregowy µc51 pracuje w trybie 1. Pierwszy z programów wysyła w pętli nieskończonej jeden znak alfanumeryczny do komputera PC. Działanie programu przedstawia następujący algorytm: START Konfiguracja portu szeregowego tryb 1 Wyzerowanie wskaźnika wysłania znaku Zapis znaku do rejestru SBUF Znak wysłany? N T Rys.8. Algorytm programu wysyłającego znak w pętli nieskończonej. 5

1; ;LISTING 4-1 2: ;Program wysyłania znaku. 8-bitowe znaki 'a' transmitowane są do komputera PC przez 3: ;port szeregowy COM1 lub COM2 i wyświetlane na monitorze pomocą programu Hyper 4: ;Terminal lub podobnego. 5: ;Do określenia prędkości transmisji wykorzystano licznik T1 pracujący w trybie 2. 6: ;Dla f S = 4800bit/s, przy F XTAL = 11.0592MHz, TH1 = 0FAH 7: 8: ORG 0000H 9: 10: mov SCON,#01010000b ;konfiguracja portu szeregowego 11: ;tryb 1, uaktywniony odbiornik 12: mov TMOD,#00100000b ;tryb 2 licznika T1, wykorzystanie licznika T1 13: ;do określenia prędkości transmisji 4800bit/s 14: mov TH1,#0FAH ;wartość początkowa dla licznika T1 15: setb TR1 ;uruchomienie licznika T1 16: 17: PETLA: 18: clr TI ;wyzerowanie wskaźnika wysłania znaku 19: mov SBUF,#'a' ;zapis znaku do rejestru SBUF 20: jnb TI,$ ;oczekiwanie na wysłąnie znaku 21: 22: sjmp PETLA ;przejście do wysłania następnego znaku 23: 24: END 6

Drugi program odbiera znaki transmitowane z komputera PC do modułu ABC-02 poprzez wpisywanie ich na klawiaturze w programie Hyper Terminal. Odebrany znak wyświetlany jest w postaci binarnej za pomocą diod LED sterowanych przez port P2. Algorytm programu przedstawiono poniżej: START Konfiguracja portu szeregowego tryb 1 Wyzerowanie wskaźnika odebrania znaku Znak odebrany? N T Odczyt znaku z rejestru SBUF i zapis do P2 Rys.9. Algorytm programu odbierającego znak. ;LISTING 4-2 1: ;Program odbioru znaku. 8-bitowe znaki 'a' transmitowane są z komputera PC przez 2: ;port szeregowy COM1 lub COM2 za pomocą programu Typer Terminal lub podobnego. 3: ;Odebrane znaki będą wyświetlane w postaci binarnej za pomocą diod LED podłączonych 4: ;do portu P2 modułu ABC-02. 5: ;Do określenia prędkości transmisji wykorzystano licznik T1 pracujący w trybie 2. 6: ;Dla f S = 4800bit/s, przy F XTAL = 11.0592MHz, TH1 = 0FAH 7: 8: org 0000H 9: 10: mov SCON,#01010000b ;konfiguracja portu szeregowego 11: ;tryb 1, uaktywniony odbiornik 12: mov TMOD,#00100000b ;tryb 2 licznika T1, wykorzystanie licznika T1 7

13: ;do określenia prędkości transmisji 4800bit/s 14: mov TH1,#0FAH ;wartość początkowa dla licznika T1 15: setb TR1 ;uruchomienie licznika T1 16: 17: PETLA: 18: clr RI ;wyzerowanie wskaźnika odebrania znaku 19: jnb RI,$ ;oczekiwanie na odebranie znaku 20: mov P2,SBUF ;odczyt znaku i zapis do portu P2 21: sjmp PETLA ;przejście do oczekiwania na następny znak 22: 23: end ZADANIE 1 Napisać program odbierający pojedynczy znak z terminala komputera PC i odsyłający ten sam znak z powrotem do terminala, tzw. echo. Prędkość transmisji 2400bit/s, tryb 1 portu szeregowego. Do wysyłania znaków z klawiatury komputera PC należy wykorzystać program Hyper Terminal. ZADANIE 2 Napisać program dekodujący znaki będące kodami ASCII przycisków 0, 1, 2, 3, 4, 5, 6, 7 klawiatury komputera PC przesyłane za pomocą łącza RS-232 do modułu ABC-02. Stan wciśniętego przycisku powinien być sygnalizowany za pomocą odpowiedniej diody LED podłączonej do portu P2 (0 - P2.0, 1 - P2.1, 2 - P2.2, 3 - P2.3, 4 - P2.4, 5 - P2.5, 6 - P2.6, 7 - P2.7) w module ABC-02. Prędkość transmisji 4800bit/s, tryb 1 portu szeregowego. ZADANIE 3 Napisać program odbierający i wysyłający komunikat wieloznakowy na zasadzie echa z sumą kontrolną EX-OR. Komunikat powinien mieć następujący format: $abc*[chsh][chsl][cr][lf] gdzie: $ - jeden znak ASCII, znacznik początku komunikatu abc - trzy znaków ASCII, treść komunikatu, * - jeden znak ASCII, znacznik końca treści komunikatu [CHSH][CHSL] - dwa znaki ASCII reprezentujące 8-bitową liczbę zapisaną w kodzie heksadecymalnym, bądącą suma kontrolną EX-OR, [CR] - pierwszy znacznik końca komunikatu, [LF] - drugi znacznik końca komunikatu. Suma kontrolna liczona jest w następujący sposób: CHS = 0 xor a xor b xor c. Do wysyłania komunikatu należy wykorzystać program Hyper Terminal wysyłanie pliku. Prędkość transmisji 4800bit/s, tryb 1 portu szeregowego. 8

5. Przewód łączeniowy komputera PC i modułu ABC-02 Do komputera PC 5 1 9 6 4 2 8 7 3 3 7 8 2 4 6 9 1 5 Do modułu ABC-02 DB9F DB9F Rys.10. Przewód łączeniowy do transmisji danych bez kontroli sprzętowej. Pełny opis sygnałów gniazda DB9 łącza RS232: 1 DCD - Data Carrier Detected - sygnał wykrycia nośnej 2 RXD - Receive Data - odbiór danych 3 TXD - Transmit Data - transmisja danych 4 DTR - Data Terminal Ready - przetworzono dane (gotowość odbioru) 5 GND - Signal Ground - masa 6 DSR - Data Set Ready - wypełniony bufor (gotowość transmisji) 7 RTS - Request to Send Data - żądanie wysyłania 8 CTS - Clear to Send Data - gotowość wysyłania 9 RI - Ring indicator - wskaźnik dzwonka Uwaga W celu transmisji danych za pomocą łącza RS232 do i z modułu ABC-02, należy w module ABC-02 zewrzeć styki złącza JP1-1 z JP1-2 i JP2-1 z JP2-2. 9

6. Tablica kodów ASCII (American Standard Code for Information Interchange) Tablica kodów ASCII rozszerzona Źródło: www.lookuptables.com Źródło: www.lookuptables.com 10