Odbiór i dekodowanie znaków ASCII za pomocą makiety cyfrowej. Znaki wysyłane przez komputer za pośrednictwem łącza RS-232.

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

UKŁADY CYFROWE. Układ kombinacyjny

Ćw. 7: Układy sekwencyjne

PRZERZUTNIKI: 1. Należą do grupy bloków sekwencyjnych, 2. podstawowe układy pamiętające

1. Poznanie właściwości i zasady działania rejestrów przesuwnych. 2. Poznanie właściwości i zasady działania liczników pierścieniowych.

dwójkę liczącą Licznikiem Podział liczników:

Ćwiczenie D2 Przerzutniki. Wydział Fizyki UW

Cel. Poznanie zasady działania i budowy liczników zliczających ustaloną liczbę impulsów. Poznanie kodów BCD, 8421 i Rys. 9.1.

Zapoznanie się z podstawowymi strukturami liczników asynchronicznych szeregowych modulo N, zliczających w przód i w tył oraz zasadą ich działania.

UKŁADY SEKWENCYJNE Opracował: Andrzej Nowak

Przerzutnik ma pewną liczbę wejść i z reguły dwa wyjścia.

Państwowa Wyższa Szkoła Zawodowa

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10.

Podstawy Elektroniki dla Elektrotechniki. Liczniki synchroniczne na przerzutnikach typu D

Plan wykładu. Architektura systemów komputerowych. Cezary Bolek

Układy sekwencyjne. 1. Czas trwania: 6h

Przerzutnik (z ang. flip-flop) jest to podstawowy element pamiętający każdego układu

Cyfrowe układy sekwencyjne. 5 grudnia 2013 Wojciech Kucewicz 2

WYKŁAD 8 Przerzutniki. Przerzutniki są inną niż bramki klasą urządzeń elektroniki cyfrowej. Są najprostszymi układami pamięciowymi.

WFiIS CEL ĆWICZENIA WSTĘP TEORETYCZNY

Komunikacja w mikrokontrolerach Laboratorium

Statyczne i dynamiczne badanie przerzutników - ćwiczenie 2

AKADEMIA GÓRNICZO-HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE. Wydział Informatyki, Elektroniki i Telekomunikacji LABORATORIUM.

Liczniki, rejestry lab. 07 Układy sekwencyjne cz. 1

Ćwiczenie MMLogic 002 Układy sekwencyjne cz. 2

U 2 B 1 C 1 =10nF. C 2 =10nF

Układy kombinacyjne - przypomnienie

Podstawy elektroniki cyfrowej dla Inżynierii Nanostruktur. Piotr Fita

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

Podstawy Techniki Cyfrowej Liczniki scalone

LEKCJA. TEMAT: Funktory logiczne.

Wstęp działanie i budowa nadajnika

LICZNIKI Liczniki scalone serii 749x

Ćw. 9 Przerzutniki. 1. Cel ćwiczenia. 2. Wymagane informacje. 3. Wprowadzenie teoretyczne PODSTAWY ELEKTRONIKI MSIB

Podstawowe elementy układów cyfrowych układy sekwencyjne. Rafał Walkowiak

Uniwersalny asynchroniczny. UART Universal Asynchronous Receier- Transmiter

LABORATORIUM ELEKTRONIKI I TEORII OBWODÓW

CYFROWE UKŁADY SCALONE STOSOWANE W AUTOMATYCE

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

Cyfrowe Elementy Automatyki. Bramki logiczne, przerzutniki, liczniki, sterowanie wyświetlaczem

Układy sekwencyjne. 1. Czas trwania: 6h

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

Podstawy Elektroniki dla Elektrotechniki. Układy cyfrowe - bramki logiczne i przerzutniki

Ćwiczenie 27C. Techniki mikroprocesorowe Badania laboratoryjne wybranych układów synchronicznych

Przerzutniki. Układy logiczne sekwencyjne odpowiedź zależy od stanu układu przed pobudzeniem

Ćwiczenie 6. Przerzutniki bistabilne (Flip-Flop) Cel

Automatyzacja i robotyzacja procesów produkcyjnych

Tranzystor JFET i MOSFET zas. działania

f we DZIELNIKI I PODZIELNIKI CZĘSTOTLIWOŚCI Dzielnik częstotliwości: układ dający impuls na wyjściu co P impulsów na wejściu

Instrukcja do ćwiczenia : Matryca komutacyjna

Krótkie przypomnienie

Ćwiczenie 29 Temat: Układy koderów i dekoderów. Cel ćwiczenia

Politechnika Wrocławska, Wydział PPT Laboratorium z Elektroniki i Elektrotechniki

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

4. UKŁADY FUNKCJONALNE TECHNIKI CYFROWEJ

LICZNIKI PODZIAŁ I PARAMETRY

Modelowanie liczników w języku Verilog i ich implementacja w strukturze FPGA

KATEDRA ELEKTRONIKI AGH WYDZIAŁ EAIIE. Dydaktyczny model 4-bitowego przetwornika C/A z siecią rezystorów o wartościach wagowych

Podstawy Informatyki Elementarne podzespoły komputera

Interfejsy. w systemach pomiarowych. Ryszard J. Barczyński, 2016 Materiały dydaktyczne do użytku wewnętrznego

Podstawy elektroniki cz. 2 Wykład 2

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

Liniowe układy scalone. Elementy miernictwa cyfrowego

LABORATORIUM ELEKTRONIKI. Jakub Kaźmierczak. 2.1 Sekwencyjne układy pamiętające

Podstawowe układy cyfrowe

TEMAT: PROJEKTOWANIE I BADANIE PRZERZUTNIKÓW BISTABILNYCH

Statyczne badanie przerzutników - ćwiczenie 3

LABORATORIUM PODSTAWY ELEKTRONIKI PRZERZUTNIKI

Układy czasowo-licznikowe w systemach mikroprocesorowych

Podstawowe elementy układów cyfrowych układy sekwencyjne Rafał Walkowiak Wersja

a) dolno przepustowa; b) górno przepustowa; c) pasmowo przepustowa; d) pasmowo - zaporowa.

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

WSTĘP DO ELEKTRONIKI

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

Projektowanie i badanie liczników synchronicznych i asynchronicznych

SYSTEMY LICZBOWE 275,538 =

4. Karta modułu Slave

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

Układy TTL i CMOS. Trochę logiki

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

interfejs szeregowy wyświetlaczy do systemów PLC

LABORATORIUM PODSTAWY ELEKTRONIKI REJESTRY

Moduł licznika położenia LP 2.

1.1. Pozycyjne systemy liczbowe

Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne

Hardware mikrokontrolera X51

Układy sekwencyjne - wiadomości podstawowe - wykład 4

Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.

ĆWICZENIE 7. Wprowadzenie do funkcji specjalnych sterownika LOGO!

Kontrola dostępu przy użyciu sterownika Sterbox.

MIKROPROCESORY architektura i programowanie

Ćwiczenie 01 - Strona nr 1 ĆWICZENIE 01

PODSTAWY TEORII UKŁADÓW CYFROWYCH

LICZNIKI. Liczniki asynchroniczne.

3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8

CHARAKTERYSTYKI BRAMEK CYFROWYCH TTL

W przypadku spostrzeżenia błędu proszę o przesłanie informacji na adres

1 Moduł Neuronu Cyfrowego SM

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

Interfejsy komunikacyjne pomiary sygnałów losowych i pseudolosowych. Instrukcja do ćwiczenia laboratoryjnego

Transkrypt:

Odbiór i dekodowanie znaków ASCII za pomocą makiety cyfrowej. Znaki wysyłane przez komputer za pośrednictwem łącza RS-232. Opracowanie: Andrzej Grodzki Do wysyłania znaków ASCII zastosujemy dostępny w systemie Windows program TERMINAL, ale może to być dowolny terminal, który komunikuje się za pośrednictwem złącza COM (RS-232). Nasza transmisja będzie dla uproszczenia układu ASYNCHRONICZNA, będzie odbywać się po jednej linii, tylko w jedną stronę z komputera do makiety cyfrowej. W TERMINALU ustawimy parametry transmisji: Liczba bitów na sekundę: 57600 Bity danych: 8 Parzystość: brak Bit STOPU: 1 Sterowanie przepływem: brak Na ekranie TERMINALA parametry wyświetlą się tak: Jeśli kogoś interesuje bardziej standard przesyłania danych RS-232, jego historia powstania i rozwoju, warianty, szczegółowe parametry, itp. w internetowej Wikipedii można znaleźć prawdziwe informacje na ten temat pod adresem: http://pl.wikipedia.org/wiki/rs-232. Zanim przejdziemy do szczegółowego schematu zapoznajmy się ze schematem blokowym zamieszczonym poniżej. Strona 1 z 7

Układ do odbioru i dekodowania znaków ASCII będzie składał się z pięciu bloków: 1. Translatora poziomów. 2. Rejestru przesuwnego. 3. Układu START/STOP. 4. Dzielnika częstotliwości. 5. Wyświetlacza siedmiosegmentowego. Oto krótkie omówienie budowy i działania poszczególnych bloków. Translator poziomów Ponieważ cyfrowe sygnały transmisji RS-232 wysyłane przez komputer posiadają poziomy napięcia rzędu +-12V, a nasz układ będzie zbudowany z tradycyjnych układów TTL musimy w pierwszej kolejności dokonać translacji sygnału ze standardu RS-232 do standardu TTL. Można tego dokonać wykorzystując specjalizowane układy scalone dedykowane do tego celu, ale my zastosujemy najprostszą metodę, użyjemy tzw. obcinacza napięcia zbudowanego na oporniku R1 i diodzie Zenera D1. Napięcie dodatnie na wyjściu takiego układu nie przekracza napięcia Zenera, które w naszym przypadku wynosi 5,1V. Po obniżeniu napięcia do bezpiecznego poziomu dla układów TTL pozostaje nam jeszcze odwrócenie sygnału ponieważ RS-232 nadaje w logice ujemnej, a TTL to logika dodatnia dlatego po obcinaczu znajduje się bramka NAND U1-74132 pełniąca rolę inwertera. Strona 2 z 7

Poniżej przedstawiony jest obraz rzeczywistego sygnału przychodzącego z komputera (Kanał 1) i po obcięciu przez układ obcinacza napięcia (Kanał 2). Sygnał TTL przed (Kanał 1) i po inwersji, odwróceniu (Kanał2) Rejestr przesuwny Zadaniem rejestru przesuwnego jest zamiana informacji szeregowej na informacje równoległą (ang. SIPO Serial Input Parallel Output). Układ ten jest sercem całego układu. Zrozumienie działania układu 74164 jest kluczowe dla zrozumienia działania całego układu. Jak działa rejestr przesuwny? Do naszej pracy wykorzystujemy tylko dwa wejścia: szeregowe wejście danych DSa i wejście taktujące CP. W momencie każdego narastającego zbocza na wejściu taktującym CP stan logiczny z wejścia szeregowego danych jest przenoszony do pierwszego rejestru D0 (zapamiętany), jednocześnie dane które były przed nadejściem zbocza zostają przesunięte o jedną pozycję w prawo, czyli stan pierwszego rejestru D0 przesuwa się do rejestru D1, D1 do D2, D2 do D3 itd. Dane przesuwają się w prawo robiąc miejsce nowej danej w D0. Dana z ostatniego rejestru D7 ponieważ nie ma już następnego rejestru zostaje w wyniku takiego działania przesuwania utracona. Układ rejestru przesuwnego U3-74164 posiada wyjścia wszystkich ośmiu wewnętrznych rejestrów, są to piny D0 do D7. Dzięki własności zapamiętywania i przesuwania informacji oraz posiadania wyjść ze wszystkich rejestrów świetnie nadaje się do przetwarzania informacji szeregowej na równoległą i do tego został on przede wszystkim skonstruowany. Można powiedzieć w momentach narastającego zbocza na CP, Strona 3 z 7

próbkujemy informacje szeregową, a wynik próbkowania jest zapamiętany zatrzaśnięty, w kolejnych rejestrach. Pobieramy kolejne w czasie próbki przebiegu szeregowego. Mamy do wykorzystania osiem rejestrów, które możemy nazwać również komórkami pamięci. Poniżej przedstawiamy rzeczywisty obraz z oscyloskopu, w kanale1 obraz danych, w kanale2 przebieg taktujący. Przebiegi pomierzone na naszej makiecie cyfrowej. Osiem próbek trafia do rejestru przesuwnego, z czego pierwsza próbka to bit STARTU, kolejne to kod binarny wysłanego znaku ASCII, od bitu najmłodszego LSB(2), do najstarszego MSB(8). Nasz znak ma kod binarny 1001010, co odpowiada 4A w układzie heksadecymalnym, a 112 w układzie oktalnym, łatwo sprawdzić w tabeli taki kod posiada duża litera J. Na podstawie schematu elektronicznego wyjaśnij dlaczego ostatni impuls taktujący jest w postaci tzw. szpilki, jego czas trwania jest tak krótki? Od czego zależy jego czas trwania? Układ START/STOP Zadaniem układu jest jednoznaczne rozpoznanie początku nadawania znaków ASCII przez komputer, ponieważ znak może przyjść w dowolnym momencie. Linia przesyłania znaków w stanie spoczynku jest w stanie logicznej jedynki. Układ START/STOP czeka na pierwsze opadające zbocze, bit STARTU. Kiedy ono nadejdzie następuje przełączenie układu zezwalające licznikowi przez 10 zliczanie impulsów zegarowych 576kHz. Po podziale przez 10 przebieg o częstotliwości 57,6kHz taktuje rejestr przesuwny w odpowiednich momentach przesuwając informacje od pierwszego rejestru D0 do Strona 4 z 7

ostatniego D7. Kiedy na wyjściu ostatniego rejestru D7 pojawi się opadające zbocze bitu STARTU, układ zatrzymuje licznik przez 10, do rejestru przestają docierać impulsy zegarowe, informacja szeregowa zostaje zapamiętana w poszczególnych rejestrach i jednocześnie zmieniona na informację równoległą stan każdego z rejestru jest obecny na wyjściach D0 do D7. Układ START/STOP to klasyczny układ przerzutnika RS zbudowany na bramkach NAND. Wyświetlacz siedmio-segmentowy Tego bloku nie musimy budować, jest on częścią makiety cyfrowej. Niestety zastosowane dekodery 7 segmentowe dekodują poprawnie tylko cyfry od 0 do 9 są to dekodery dziesiętne, dlatego podłączymy je w sposób niekonwencjonalny. Do pierwszych dwóch dekoderów podłączymy tylko trzy kolejne linie, czwarte wejścia dekoderów podłączymy do zera, a do ostatniego dekodera podłączymy tylko jedną linię. W taki sposób zespół trzech wyświetlaczy będzie wyświetlał liczbę binarną naszego znaku ASCII w systemie oktalnym, od 0 do 177(oct). Dla ułatwienia, aby nie trzeba było przeliczać, w tabeli znaków ASCII zamieszczonej poniżej znajduje się rubryka z gotowymi oktalnymi reprezentacjami, które powinny wyświetlić się na wyświetlaczach, przy prawidłowym połączeniu układu. Strona 5 z 7

Dzielnik częstotliwości Po co stosować dzielnik częstotliwości? dlaczego nie można taktować rejestru przesuwnego bezpośrednio z generatora zewnętrznego? Nasze generatory zewnętrzne nie posiadają wejścia wyzwalania zewnętrznego, nie potrafią w odpowiednim momencie zacząć generowanie zadanego przebiegu, są generatorami samobieżnymi bez możliwości synchronizacji z zewnętrznym przebiegiem, a taka synchronizacja jest konieczna. Generator taktujący powinien rozpocząć swoją pracę w momencie przyjścia znaku, dokładnie bitu STARTU, a nasz generator takiej funkcji nie posiada. Co w takim wypadku należy zrobić? Zbudować własny wewnętrzny generator na makiecie cyfrowej? Niekoniecznie, można zastosować inne prostsze rozwiązanie. Jeżeli zastosujemy dzielnik przez 10 (7490) taktowany częstotliwością 10 krotnie większą i zezwolimy na dzielenie, tworzenie sygnału taktującego rejestr przesuwny w momencie przyjścia bitu STARTU, to maksymalny błąd (opóźnienie) jaki może powstać wynosi max 1/10 okresu, ponieważ taktujemy rejestr przesuwny w ½ okresu ta 1/10 opóźnienia absolutnie nie zagraża prawidłowemu taktowaniu. Resetowanie układu Na koniec warto omówić funkcje resetowania układu. Założeniem układu była jego maksymalna prostota, ale jednocześnie prawidłowe, bezbłędne, dekodowanie znaków ASCII. Upraszczając układ zrezygnowaliśmy z możliwości dekodowania wielu znaków ASCII wysyłanych po sobie. Za każdym razem aby odebrać znak, należy układ ręcznie wyzerować, a dokładnie przygotować do odbioru znaku. Warunkiem koniecznym do prawidłowej pracy jest ustawienie rejestru przesuwnego w stanie samych jedynek we wszystkich rejestrach. Wyjaśnij dlaczego? Układ 74164 niestety nie posiada takiej funkcji, takiego wejścia SET, posiada jedynie wejście RESET zerowanie wszystkich rejestrów. Jak ustawić same jedynki? W czasie kiedy nie są nadawane znaki na wejściu rejestru (szynie danych) panuje logiczna jedynka, wystarczy 8 taktów zegara, aby jedynka z wejścia pojawiła się we wszystkich rejestrach, włączmy więc na krótko dzielnik częstotliwości wykorzystując drugie wejście zerujące, podłączone do wyjścia NIE Q generatora pojedynczych impulsów w makiecie. W czasie trwania pojedynczego impulsu dzielnik wygeneruje nam wystarczającą ilość impulsów, aby ustawić rejestry w stanie jeden, co będzie widoczne pojawieniem się liczby 177 na wyświetlaczach makiety, układ jest gotowy do odbioru kolejnego znaku. Wykaz elementów 1. U1-74132 cztery dwuwejściowe bramki NAND z wejściem Schmitt a. 2. U2-7490 licznik dziesiętny. 3. U3-74HC164 ośmiobitowy rejestr przesuwny typu SIPO 4. R1-rezystor 10 kiloomów. 5. D1-dioda Zener a 5V1 (5,1V) Strona 6 z 7

Cdn Strona 7 z 7