Obsah:

Program maľovania VGA: 5 krokov
Program maľovania VGA: 5 krokov

Video: Program maľovania VGA: 5 krokov

Video: Program maľovania VGA: 5 krokov
Video: Девушка разбила мой компьютер🤬 я отомстил и сломал ей ноутбук🤯 2024, Júl
Anonim
Program maľovania VGA
Program maľovania VGA

Projekt: Adam Klein, Ian Strachan, Brandon Slater

Projekt, ktorý sme sa rozhodli dokončiť, bol ukladať, analyzovať a zobrazovať informácie z myši USB vo forme programu na maľovanie. Myšlienkou projektu je umožniť zapojiť káble myši a VGA do dosky Basys v jej vstavaných portoch a nechať myš zobraziť ako pohyblivý maliarsky štvorec na monitore a meniť rôzne farby pri kliknutí ľavým a pravým tlačidlom myši. použité. V zásade by sme vytvorili ovládač na používanie myši so základnou doskou a overenie funkčnosti by mal mať monitor. To, čo sa nakoniec stalo, bolo vytvorenie programu na kreslenie so základnou doskou ako vstupným systémom a polofunkčným systémom na zachytávanie údajov pre myš.

V tomto návode rozoberieme kroky od vstupu myši po výstup vga.

Krok 1: Motivácia a problém

Motivácia a problém
Motivácia a problém

Motivácia:

Hlavnou motiváciou nášho projektu bolo vytvoriť ovládač myši pre dosku Basys3, ktorý by budúci študenti CPE 133 mohli v budúcnosti použiť na svoje záverečné projekty. Túto myšlienku sme však posunuli o krok ďalej tým, že sme vytvorili program maľovania, z ktorého by mohli stavať aj budúci študenti.

Problém:

Problém, ktorý sme zistili, bol ten, že nie je k dispozícii žiadny jasný modul myši, ktorý by bolo možné stiahnuť a použiť pre dosku Basys3. Aby sme tento problém vyriešili, pokúsili sme sa ho vytvoriť sami. Snažili sme sa tým vytvoriť modul myši, ktorý by budúcim študentom umožnil jednoduchšiu implementáciu vstupu myši do ich projektov.

Krok 2: Získanie surových bitových informácií zo základne USB

Získanie surových bitových informácií zo základov USB
Získanie surových bitových informácií zo základov USB
  • Väčšina toho, čo sme pre myš v tomto projekte urobili, pochádza z dokumentácie Basys3. Z malého sprievodcu k USB portu Basys v tomto pdf sme zistili, že doska Basys má vstavané hodiny na čítanie bitov správnou rýchlosťou zo zariadení USB.
  • Myš v podstate odosiela bity na usb počnúc od nečinnosti, číta 32 bitov predstavujúcich stav myši, pozíciu x a polohu y a nakoniec končí ďalším nečinným bitom. Na tento účel vstupný komponent myši používa posuvný register a 32 bitový čítač, kde sa posuvný register používa na ukladanie 32 bitov prichádzajúcich údajov z myši a 32 bitový čítač sa používa na počítanie počtu uložených bitov, čo umožňuje stav. zaregistrujte sa, aby ste resetovali a uložili ďalšiu sadu 32 prichádzajúcich bitov.
  • Kódy pre posuvný register, 32 -bitový čítač a čítačku údajov si môžete stiahnuť nižšie, ako aj súbor s obmedzeniami prispôsobený nášmu použitiu portu USB ako vstupu

Krok 3: Analyzujte informácie o USB

Analýza informácií o USB
Analýza informácií o USB
Analýza informácií o USB
Analýza informácií o USB
  • Po vytvorení vstupu myši do komponentu USB bolo ďalším krokom vytvorenie komponentu USB bitov s vektorovou informáciou, ktorý by umožnil čitateľnosť údajov prijatých myšou pre vga.
  • Tento komponent používa stavový automat, ktorý preberá množinu bitov výstupných zo vstupu myši na USB a prechádza stavmi podľa toho, či boli zadané nové bity, ktoré menia stav a polohu myši.
  • Tu je zobrazený blokový diagram pre prvé dva kroky projektu a dva súbory vhdl slúžia na testovanie implementácie myši pomocou základných LED diód (test, ktorý bohužiaľ nikdy neprešiel) a na prenášanie bitového toku z USB port na vektory rýchlosti a polohy, ktoré môže VGA používať.
  • Obrázok vedľa blokového diagramu vyššie je malou snímkou (Instructables nám neumožňuje zobraziť celý široký obraz) bitových informácií, ktoré sme našli v dokumentácii základov na dokončenie tohto kroku.

Krok 4: Zobrazenie namaľovaného obrázku cez VGA a úprava nakresleného obrázku

Zobrazenie namaľovaného obrazu cez VGA a úpravy nakresleného obrazu
Zobrazenie namaľovaného obrazu cez VGA a úpravy nakresleného obrazu
Zobrazenie namaľovaného obrazu cez VGA a úpravy nakresleného obrazu
Zobrazenie namaľovaného obrazu cez VGA a úpravy nakresleného obrazu
Zobrazenie namaľovaného obrazu cez VGA a úpravy nakresleného obrazu
Zobrazenie namaľovaného obrazu cez VGA a úpravy nakresleného obrazu
  • Kábel VGA má 14 bitový výstup, 4 bitové pre každú z troch farieb a bit pre horizontálnu synchronizáciu a vertikálnu synchronizáciu.
  • OtherVGA je poskytovaný modul VGA a funguje nasledovne:

    • Monitor je rozdelený na bloky 40 x 30 s rozmermi 16 x 16 pixelov pre obrazovku s rozlíšením 640 x 480, ako je vidieť na obrázku vyššie. Modul vyberie adresu bloku, ktorá bude predstavovať jeden z 1 200 blokov na monitore. Adresa bloku sa vyberá podľa nasledujúcej rovnice: adresa = 40y + x
    • Farba je reprezentovaná 12 -bitovým signálom, ktorý koreluje s hodnotou RRRRGGGGBBBB, ktorá farbí vybraný blok.
  • Náš kontrolný kód VGAtest a VGAtestconst funguje nasledovne:

    • Vybratý blok najskôr nastaví do stredu monitora.
    • Farba bloku je určená 12 prepínačmi na doske, ktoré nastavujú hodnotu RRRRGGGGBBBB.
    • Štyrmi smerovými tlačidlami na doske sa zmení zvolená adresa. Napríklad stlačením pravého tlačidla sa k adrese pridá 1 a vyberie sa blok vpravo od predchádzajúceho bloku. Stlačením tlačidla nadol sa pridá 40 k adrese, pričom sa vyberie blok pod predchádzajúcim blokom.
    • Stredné tlačidlo slúži na nastavenie všetkých hodnôt farieb na 0 pri stlačení. Toto sa má správať ako tlačidlo vymazania, ktoré je užívateľovi ľahko použiteľné, aby užívateľ nemusel prepínať každý prepínač na 0, aby ho vymazal.
  • Posledný obrázok je blokový diagram ovládača. Je dosť široký, pretože obsahuje komponenty modulu a nemusí sa zobraziť úplne.

Krok 5: Užite si svoje stvorenie

Tu je prepojený rýchly timelapse zábavy, ktorú si môžete užiť s konečným projektom, dokonca aj pomocou vstupov ako prepínačov a tlačidiel na základnej doske.

Vďaka za prečítanie!

Odporúča: