Tartalomjegyzék:

VGA festési program: 5 lépés
VGA festési program: 5 lépés

Videó: VGA festési program: 5 lépés

Videó: VGA festési program: 5 lépés
Videó: Chicken Gun - Official Trailer 2024, November
Anonim
VGA festési program
VGA festési program

Projekt: Adam Klein, Ian Strachan, Brandon Slater

A projekt, amelyet befejezni akartunk, az volt, hogy információkat tároljon, elemezzen és megjelenítsen egy USB -egérről festési program formájában. A projekt mögött az az elképzelés áll, hogy az egeret és a VGA-kábeleket a beépített portok Basys-táblájába kell csatlakoztatni, és az egeret mozgatható festési négyzetként kell megjeleníteni a monitoron, megváltoztatva a különböző színeket, ha balra és jobbra kattint. használt. Lényegében illesztőprogramot hoznánk létre az egér használatához a basys táblával, és a monitort ellenőrizzük a működőképességben. Ami végül valóban megtörtént, az volt, hogy létrehoztak egy rajzoló programot, a bemeneti rendszerként a basys táblát, és egy félig funkcionális adatgyűjtő rendszert az egér számára.

Ebben az utasításban lebontjuk az egérbemenetről a vga kimenetre vonatkozó lépéseket.

1. lépés: Motiváció és probléma

Motiváció és probléma
Motiváció és probléma

Motiváció:

Projektünk fő motivációja az volt, hogy létrehozzunk egy egér -illesztőprogramot a Basys3 tábla számára, amelyet a jövőbeli CPE 133 diákok a jövőben felhasználhatnak végső projektjeikhez. Ezt a gondolatot azonban egy lépéssel tovább vittük azzal, hogy létrehoztunk egy festési programot, amelyből a jövő diákjai is építhetnek.

Probléma:

A felfedezett probléma az volt, hogy nincs egyértelmű egérmodul, amely letölthető és használható a Basys3 táblához. Ennek a problémának a megoldására mi magunk próbáltunk egyet létrehozni. Ezzel olyan egérmodult akartunk létrehozni, amely lehetővé teszi a jövőbeli diákok számára, hogy könnyebben megvalósítsák az egér bemenetét a projektjeikben.

2. lépés: A nyers bit információk lekérése a Basys USB -ről

A nyers bit információk lekérése a Basys USB -ről
A nyers bit információk lekérése a Basys USB -ről
  • Amit ebben a projektben az egérért tettünk, nagy része a Basys3 dokumentációjából származik. A PDF Basys USB -portján található kis útmutatóból azt találtuk, hogy a Basys tábla beépített órával rendelkezik a bitek megfelelő sebességű olvasásához az USB -eszközökről.
  • Lényegében az egér készenléti állapotból biteket küld az usb -nek, 32 bitet olvas, amelyek az egerek állapotát, x pozícióját és y pozícióját jelzik, és végül egy másik tétlen bittel fejeződik be. Ehhez az egér bemeneti összetevője shift shift regisztert és 32 bites számlálót használ, ahol a shift regisztert 32 bit bejövő adat tárolására használják az egérről, a 32 bites számláló pedig az állapotot lehetővé tevő tárolt bitek számolására szolgál. regisztráljon a következő 32 bejövő bit készlet alaphelyzetbe állításához és tárolásához.
  • Az alábbiakban letölthető a váltóregiszter, a 32 bites számláló és az adatolvasó kódja, valamint a korlátozások fájlja, amely az USB -port bemenetként történő használatához igazodik.

3. lépés: Az USB -adatok elemzése

Az USB -adatok elemzése
Az USB -adatok elemzése
Az USB -adatok elemzése
Az USB -adatok elemzése
  • Miután létrehozta az egér bemenetét az usb komponenshez, a következő lépés az volt, hogy létrehozza az usb biteket a vektoros információ komponenshez, amely az egérrel kapott adatokat olvashatóvá teszi a vga számára.
  • Ez az összetevő egy állapotgépet használ, amely átveszi az egérbemenet által kiadott bitkészletet az usb -re, és áthalad az állapotokon annak alapján, hogy az egér állapotát és pozícióját megváltoztató új bitek kerültek -e be.
  • A projekt első két lépésének blokkdiagramja itt látható, a két vhdl fájl pedig az egér megvalósításának tesztelésére szolgál a basys LED -ekkel (ez a teszt sajnos soha nem sikerült), és a bitfolyam USB -ről történő átviteléhez. port a sebesség és pozíció vektorok számára, amelyeket a VGA használhat.
  • A fenti blokkdiagram melletti kép egy kis pillanatkép (az Instructables nem teszi lehetővé, hogy megjelenítsük a teljes széles képet) azokról a bitinformációkról, amelyeket a bázisdokumentációban találtunk ennek a lépésnek a végrehajtásához.

4. lépés: A festett kép megjelenítése VGA -n és a rajzolás szerkesztése

A festett kép megjelenítése VGA -n és a rajzolás szerkesztése
A festett kép megjelenítése VGA -n és a rajzolás szerkesztése
A festett kép megjelenítése VGA -n és a rajzolás szerkesztése
A festett kép megjelenítése VGA -n és a rajzolás szerkesztése
A festett kép megjelenítése VGA -n és a rajzolás szerkesztése
A festett kép megjelenítése VGA -n és a rajzolás szerkesztése
  • A VGA kábel 14 bit kimenettel rendelkezik, 4 bit mindhárom színhez, és egy bit a vízszintes és függőleges szinkronhoz.
  • Egyéb A VGA a mellékelt VGA modul, és a következőképpen működik:

    • A monitor 40x30 darab 16x16 képpontos blokkokra van bontva 640x480 felbontású képernyőre, amint a fenti képen látható. A modul kiválaszt egy blokkcímet, amely a monitor 1200 blokkjának egyikét reprezentálja. A blokkcím kiválasztása a következő egyenlettel történik: cím = 40y + x
    • A színt egy 12 bites jel képviseli, amely megfelel a kiválasztott blokkot színező RRRRGGGGBBBB értéknek.
  • Vezérlőkódunk, a VGAtest és a VGAtestconst a következőképpen működik:

    • Először a kiválasztott blokkot állítja a monitor közepére.
    • A blokk színét a táblán lévő 12 kapcsoló határozza meg, az RRRRGGGGBBBB érték beállításával.
    • A táblán lévő négy iránygomb megváltoztatja a kiválasztott címet. Például, ha megnyomja a jobb oldali gombot, az 1 hozzáadódik a címhez, és az előző blokktól jobbra lévő blokkot választja ki. A le gomb megnyomásával 40 -et ad hozzá a címhez, kiválasztva az előző blokk alatti blokkot.
    • A középső gombbal az összes színértéket 0 -ra lehet állítani, amikor megnyomják. Ennek célja a törlés gombként való viselkedése, amelyet a felhasználó könnyen használhat, így a felhasználónak nem kell minden kapcsolót 0 -ra fordítania a törléshez.
  • Az utolsó kép a vezérlő blokkdiagramja. Elég széles, mivel tartalmazza a modul összetevőit, és előfordulhat, hogy nem jelenik meg teljesen.

5. lépés: Élvezze alkotását

Itt található egy gyors timelapse a szórakozásból, amelyet a végső projektben élvezhet, még akkor is, ha csak a basszuslapon lévő kapcsolókat és gombokat használja bemenetként.

Köszönöm, hogy elolvasta!

Ajánlott: