Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C300 020



Podobne dokumenty
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

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 8 (3h) Implementacja pamięci ROM w FPGA

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej.

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: PROGRAMOWALNE STRUKTURY LOGICZNE

Programowalne Układy Cyfrowe Laboratorium

Język opisu sprzętu VHDL

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

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

Projektowanie z użyciem softprocesora picoblaze w układach programowalnych firmy Xilinx

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: PROGRAMOWALNE STRUKTURY LOGICZNE

Politechnika Białostocka

1.Wprowadzenie do projektowania układów sekwencyjnych synchronicznych

Elektronika samochodowa (Kod: ES1C )

Politechnika Śląska w Gliwicach

Ćw. 7: Układy sekwencyjne

Elektronika samochodowa (Kod: ES1C )

Politechnika Białostocka

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: PROGRAMOWALNE STRUKTURY LOGICZNE

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

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

Bezpieczeństwo informacji oparte o kryptografię kwantową

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TZ1A

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 8 (3h) Implementacja pamięci RAM w FPGA.

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

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

Technika Cyfrowa. Badanie pamięci

Podstawowe układy cyfrowe

STEROWNIKI PROGRAMOWALNE OBSŁUGA AWARII ZA POMOCĄ STEROWNIKA SIEMENS SIMATIC S7

Bezpieczeństwo informacji oparte o kryptografię kwantową

Politechnika Białostocka. Wydział Elektryczny. Katedra Automatyki i Elektroniki. Kod przedmiotu: TS1C

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: PROGRAMOWALNE STRUKTURY LOGICZNE

Elektronika samochodowa (Kod: TS1C )

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Wydział Fizyki UW CC=5V 4A 4B 4Y 3A 3B 3Y

Technika cyfrowa i mikroprocesorowa. Zaliczenie na ocenę. Zaliczenie na ocenę

Politechnika Białostocka

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

Politechnika Białostocka

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. Automaty stanów

Podstawy Elektroniki dla Elektrotechniki. Liczniki synchroniczne na przerzutnikach typu D

LABORATORIUM ELEKTRONIKI I TEORII OBWODÓW

PROGRAMOWALNE STEROWNIKI LOGICZNE

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

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TZ1A

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYNTEZA UKŁADÓW CYFROWYCH ES2D100005

Wydział Mechaniczny. Instrukcja do zajęć laboratoryjnych. Numer ćwiczenia: 4. Laboratorium z przedmiotu: Technika cyfrowa i mikroprocesorowa

2. PRZERZUTNIKI I REJESTRY

Instytut Teleinformatyki

Przetwarzanie AC i CA

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

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

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

INFORMATOR LABORATORYJNY. TECHNIKA CYFROWA (studia niestacjonarne)

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

Bramki logiczne Instrukcja do ćwiczeń laboratoryjnych

Laboratorium przedmiotu Technika Cyfrowa

CECHY URZĄDZENIA: Podłączenie wyświetlacza

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Inwerter logiczny. Ilustracja 1: Układ do symulacji inwertera (Inverter.sch)

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

ĆWICZENIE 7. Wprowadzenie do funkcji specjalnych sterownika LOGO!

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

PROTOTYPOWANIE UKŁADÓW ELEKTRONICZNYCH Programowalne układy logiczne FPGA Maciej Rosół, Katedra Automatyki AGH,

Politechnika Białostocka

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204

Politechnika Białostocka

Ćwiczenie MMLogic 002 Układy sekwencyjne cz. 2

Politechnika Białostocka

Instrukcja do ćwiczenia : Matryca komutacyjna

Spis treści 1. Wstęp 2. Ćwiczenia laboratoryjne LPM

INSTYTUT INFORMATYKI POLITECHNIKI BIAŁOSTOCKIEJ

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Część 3. Układy sekwencyjne. Układy sekwencyjne i układy iteracyjne - grafy stanów TCiM Wydział EAIiIB Katedra EiASPE 1

Projekt prostego układu sekwencyjnego Ćwiczenia Audytoryjne Podstawy Automatyki i Automatyzacji

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć

Elektronika i techniki mikroprocesorowe

Ćwiczenie 2. Siedmiosegmentowy wyświetlacz LED

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

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

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

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

ID1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki stacjonarne

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

Definicja 2. Twierdzenie 1. Definicja 3

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 1 (3h) Wprowadzenie do systemu Quartus II

Systemy Czasu Rzeczywistego FPGA

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

LABORATORIUM AUTOMATYKA i ROBOTYKA Inne funkcje sterownika PLC część 2

Asynchroniczne statyczne układy sekwencyjne

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

Przetwarzanie A/C i C/A

Mateusz Żyliński Tadeusz Włodarkiewicz. WireWorld. Zebranie informacji dotyczących tematyki projektu oraz przedstawienie koncepcji realizacji projektu

Transkrypt:

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C300 020 Ćwiczenie Nr 12 PROJEKTOWANIE WYBRANYCH UKŁADÓW STERUJĄCYCH W STRUKTURACH PROGRAMOWALNYCH Opracował: dr inż. Wojciech Wojtkowski dr inż. Walenty Owieczko BIAŁYSTOK 2013

Spis treści instrukcji: 1. Cel i zakres ćwiczenia laboratoryjnego 2 2. Wyświetlacz matrycowy LED... 2 3. Projektowanie automatu sterującego w AHDL.. 5 4. Zagadnienia do przygotowania... 8 5. Wymagania BHP.. 8 6. Sprawozdanie studenckie. 8 7. Przykładowe zadania 9 8. Literatura.. 10 1. CEL I ZAKRES ĆWICZENIA LABORATORYJNEGO Celem ćwiczenia jest poznanie zasad projektowania układów sterujących przy pomocy programu MAX2Plus oraz bloków funkcjonalnych z biblioteki LPM. W ramach ćwiczenia studenci projektują wybrane układy sterujące wyświetlaczem matrycowym LED różnymi metodami. Układ sterujący można zaprojektować znanymi metodami projektowania sekwencyjnego automatu synchronicznego. Zakres ćwiczenia obejmuje: Projektowanie układów sekwencyjnych służących do wyświetlania komunikatów i symboli na wyświetlaczu matrycowym LED z wykorzystaniem pamięci ROM. Projektowanie układów sekwencyjnych służących do wyświetlania komunikatów i symboli na wyświetlaczu matrycowym LED z wykorzystaniem przerzutników. Projektowanie układów sterowania częstotliwością i generatorów słów sterujących. Szczegółowy zakres ćwiczenia ustala prowadzący. 2. WYŚWIETLACZ MATRYCOWY LED Matryca LED wykorzystywana w laboratorium jest zbudowana z dwukolorowych diod LED rozmieszczonych w 8 wierszach i 8 kolumnach (matryca 8x8). Od strony elektrycznej mamy dwie matryce LED (czerwoną i zieloną rys. 1 i 2), z których każda może być podłączona do osobnych wyprowadzeń układu FLEX10k70. Połączenie z układem FLEX następuje po wsunięciu złącza matrycy do gniazda FLEX_EXPAN_B płytki UP2. Rozmieszczenie złącz na płytce prototypowej UP2 jest przedstawione na rysunku 3. Diody w obu matrycach są połączone anodami w kolumnach, natomiast katodami w wierszach (rys. 1 i 2). Taka organizacja pozwala na znaczącą redukcję ilości potrzebnych wyprowadzeń matrycy, natomiast komplikuje sposób wyświetlania. Aby wyświetlić dowolny znak na całej matrycy, trzeba to zrobić w trybie multipleksowym. Wyświetla się najpierw zawartość np. pierwszej 2

kolumny, następnie po wygaszeniu (wygaszenie jest równoważne z podaniem 1 na bazę tranzystora sterującego anodami danej kolumny) załącza się anody drugiej kolumny (poziom logiczny L na bazie odpowiedniego tranzystora sterującego daną kolumną) i na katody podaje się zawartość drugiej kolumny. Jeżeli w ten sposób zostaną wyświetlone po kolei wszystkie kolumny, i cały cykl będzie się powtarzał z odpowiednią częstotliwością, obserwator będzie przekonany, że wyświetlony obraz jest statyczny. Gdy zaistnieje potrzeba uzyskania efektu przewijania napisu, tok postępowania jest identyczny, to znaczy zawartość jednego ekranu jest wyświetlana np. 30 razy na sekundę, jednak co ok. 0,5 sek. następuje przesunięcie napisu o 1 kolumnę w lewo. Wówczas uzyskamy efekt płynnego przewijania. Rys. 1. Matryca czerwona Aby wyświetlone znaki miały jeden z dostępnych kolorów diod LED, należy wyświetlać na jednej matrycy, natomiast drugą wygasić poprzez podłączenie na stałe jedynek logicznych 3

do odpowiednich wyprowadzeń. Wyświetlenie jednoczesne na obydwu matrycach daje efekt koloru pomarańczowego (zmieszanie barwy zielonej i czerwonej). Istnieje możliwość uzyskania kilku odcieni kolorów od zielonego do czerwonego poprzez sterowanie PWM (Pulse Width Modulation). Komplikuje to jednak znacząco układ sterujący wyświetlaczem. Generację sygnałów sterujących matrycą w celu wyświetlenia litery bądź znaku można zrealizować za pomocą prostego automatu Moore a. Najprościej można zaprojektować taki automat korzystając z języka AHDL. Można też zaprojektować automat Moore a korzystając z tradycyjnych metod syntezy, rysując graf przejść, tabelę przejść i wyjść, minimalizując liczbę stanów wewnętrznych, kodując i realizując na przerzutnikach. Rys. 2. Matryca zielona W przypadku wyświetlania przewijanego napisu, celowym wydaje się zastosowanie pamięci ROM (lub RAM w przypadku, gdy napis może się zmieniać w trakcie działania układu np. może zostać wpisany z zewnętrznego urządzenia) do przechowywania matryc 4

znaków lub całego napisu. Wówczas układ sterujący powinien generować odpowiednie adresy dla pamięci ROM. Poszczególne słowa z pamięci ROM mogą wówczas ustawiać zawartość kolumn, natomiast przełączanie wyświetlanych kolumn rozwiązuje demultiplekser 8 bitowy sterowany licznikiem modulo 8. Rys. 3. Rozmieszczenie złącz FLEX_EXPAN na płytce prototypowej UP2 3. PROJEKTOWANIE AUTOMATU STERUJĄCEGO W AHDL Jeżeli stan wyjść automatu zależy wyłącznie od jego stanu bieżącego, można zastosować konstrukcję WITH STATES do opisu stanów wyjść. Przykład wykorzystania takiej konstrukcji przy projektowaniu automatu wyświetlającego dowolny znak na matrycy 8x8 jest przedstawiony na rys. 4. W miejsca oznaczone kropkami należy wpisać definicje kolejnych stanów automatu. Jak widać najstarsze 8 bitów wyjścia jest wykorzystane do sterowania kolumnami wyświetlacza w kodzie 1zn. 8 najmłodszych bitów wyjścia automatu steruje wierszami matrycy. Do sterowania kolumnami można też wykorzystać demultiplekser 8 bitowy sterowany licznikiem modulo 8. 5

Rys. 4. Przykład automatu wyświetlającego dowolny znak na matrycy 8x8 (niekompletny) Inny sposób opisu automatu synchronicznego w języku AHDL jest przedstawiony na rysunku 5. 6

Rys. 5. Przykład automatu wyświetlającego dowolny znak na matrycy 8x8 (niekompletny) Szczegółowe zasady opisu automatów w AHDL można znaleźć w pomocy programu MAX2+ w: Help - AHDL How To Use AHDL State Machines (AHDL). Jeżeli wykorzystujemy pamięć ROM do przechowywania matryc wyświetlanych znaków, musimy utworzyć plik konfigurujący pamięć. Najprostszy jest format MIF (Memory Initialization File). Rys. 6. Przykładowa zawartość pliku konfigurującego MIF 7

Przykładowa zawartość pliku konfigurującego pamięć wraz z komentarzami w formacie.mif, jest przedstawiona na rysunku 6. Wartości adresów i danych są zupełnie przypadkowe i służą wyłącznie ilustracji sposobu konstruowania zawartości pliku konfiguracyjnego. Plik.mif można utworzyć w dowolnym edytorze tekstowym, np. w notatniku Windows. 4. ZAGADNIENIA DO PRZYGOTOWANIA Przed przystąpieniem do wykonania ćwiczenia, student powinien: - zapoznać się z instrukcją, - zapoznać się ze schematem matrycy LED - powtórzyć teorię układów sekwencyjnych wykorzystujących pamięci ROM, - powtórzyć projektowanie automatów sekwencyjnych za pomocą języka AHDL, - opracować rozwiązanie co najmniej dwóch z zadań podanych na końcu instrukcji. 5. WYMAGANIA BHP Warunkiem przystąpienia do praktycznej realizacji ćwiczenia jest zapoznanie się z obowiązującą w laboratorium instrukcją BHP oraz przestrzeganie zasad w niej zawartych. Konieczne jest także zapoznanie z ogólnymi zasadami pracy przy stanowisku komputerowym. Instrukcje BHP powinny być podane studentom podczas pierwszych zajęć laboratoryjnych i dostępne do wglądu w Laboratorium. 6. SPRAWOZDANIE STUDENCKIE Sprawozdanie z ćwiczenia powinno zawierać: stronę tytułowa zgodnie z obowiązującym wzorem, cel i zakres ćwiczenia, opis stanowiska badawczego, opis przebiegu ćwiczenia z wyszczególnieniem wykonywanych czynności, algorytm rozwiązania danego problemu, schematy układów, programy AHDL bądź VHDL z komentarzami, rysunki przedstawiające wyniki symulacji, komentarze i wnioski 8

Na ocenę sprawozdania będą miały wpływ następujące elementy: zgodność zawartości z instrukcją, algorytm rozwiązania problemu, wnioski i uwagi, terminowość i ogólna estetyka Sprawozdanie powinno być wykonane i oddane na zakończenie ćwiczenia, najpóźniej na zajęciach następnych. Sprawozdania oddane później będą oceniane niżej. 7. PRZYKŁADOWE ZADANIA: Z1. Wyświetlić dowolny znak na całej matrycy w różnych odcieniach dostępnych kolorów wykorzystując sterowanie metodą PWM. Z2. Wyświetlić literę bądź znak na całej matrycy, dobrać częstotliwość przełączania kolumn/wierszy która zapewni brak migotania. Zanotować częstotliwość minimalną. Z3. Wyświetlić napis przewijany złożony z co najmniej 8 znaków. Matryce znaków powinny być przechowywane w pamięci ROM. Z4. Zaprojektować układ wyświetlający obiekt (jedna włączona dioda LED) poruszający się i odbijający od brzegów matrycy pod kątem 45 o. Z5. Zaprojektować układ wyświetlający pojedynczą literę, której kolor będzie się cyklicznie zmieniał co 1 s. Z6. Zaprojektować układ wyświetlający napis przewijany z częstotliwością 1 kolumna/0.25 s. ze zmieniającym się kolorem co 5 s. Z7. Zaprojektować automat Moore a na przerzutnikach D, wyświetlający literę A na matrycy 5x7. (Matryce znaków 5x7 są najczęściej stosowane w różnego typu wyświetlaczach. Matryca 5x7 jest minimalną matrycą pozwalającą na wyświetlenie dowolnej litery alfabetu) Z8. Zapoznać się z parametrami, wejściami sterującymi i wyjściami bloku lpm_rom. Utworzyć w edytorze tekstowym przykładowy plik.mif i skonfigurować za pomocą tego pliku pamięć ROM. Wynik sprawdzić w symulacji. Z9. Zaprojektować generator słów 8 bitowych o następującej sekwencji: 23, 34, 42, 84, 12, 32, 43, 45, 100, działający w cyklu zamkniętym. Wykorzystać należy automat sekwencyjny z pamięcią ROM. Z10. Zaprojektować generator słów 8 bitowych o 3 przełączanych sekwencjach wyjściowych; a) 23, 34, 42, 84, 12, 32, 43, 45, 100, 9

b) 10, 42, 12, 43, 29, 83, 23, 43, 223, 5 c) 0, 23, 0, 0, 1, 1, 2, 1, 3, 9 działający w cyklu zamkniętym. Przełączanie sekwencji powinno się odbywać za pomocą przycisku PB1. Wykorzystać należy automat sekwencyjny z pamięcią ROM. 8. Literatura: L1. WWW.altera.com - dsf10k.pdf opis układów rodziny FLEX10K L2. Łuba T.: Syntez układów cyfrowych, WKŁ, 2003r. L3. Skorupski A.: Podstawy techniki cyfrowej, WKŁ, 2004 L4. Małysiak H.: Teoria automatów cyfrowych, laboratorium, Wydawnictwo Politechniki Śląskiej, 2003. L5. Pasierbiński, J., Zbysiński P.: Układy programowalne w praktyce, WKŁ, 2002r. 10