
Tartalomjegyzék:
2025 Szerző: John Day | [email protected]. Utoljára módosítva: 2025-01-23 14:48


Üdvözöljük az oktatóanyagban, hogyan lehet stopperórát készíteni az alapvető VHDL és Basys 3 kártyák használatával. Örömmel osztjuk meg Önnel projektünket! Ez volt a CPE 133 (Digitális tervezés) tanfolyam utolsó projektje a Cal Poly, SLO -ban 2016 őszén. Az általunk készített projekt egy egyszerű stopper, amely elindítja, visszaállítja és megállítja az időt. A Basys3 táblán három nyomógombot használ bemenetként, és az idő megjelenik a kártya négy számjegyű, hét szegmenses kijelzőjén. Az eltelt idő másodpercben: centisekundum formátumban jelenik meg. A tábla rendszeróráját használja bemenetként az eltelt idő nyomon követésére, és az időt adja ki a hét szegmenses kijelző négy számjegyére.
1. lépés: Anyagok

A projekthez szükséges anyagok:
- 1 számítógép Vivado Design Suite WebPack csomaggal telepítve a Xilinx -ből (előnyben részesíti a 2016.2 verziót)
- 1 Digilent Basys3 Xilinx Artix-7 FPGA kártya
- 1 USB port kábel
2. lépés: A bemenetek és kimenetek beállítása
A fenti ábra a fő stopper modul felső szintű blokkdiagramját mutatja. A stopper "CLK" (óra), "S1" (start gomb), "S2" (szünet gomb) és "RST" (reset) bemeneteket vesz fel, és 4 bites "Anódok", 7 bites kimenettel rendelkezik kimenet "szegmens", és egybites kimenet "DP" (tizedespont). Ha az "S1" bemenet magas, a stopper elkezdi számlálni az időt. Ha az "S2" alacsony, a stopper megállítja az időt. Ha az "RST" magas, a stopper leáll, és visszaállítja az időt. Az áramkörön belül négy almodul van: az óraosztó, a számjegyszámláló, a hét szegmenses kijelzőmeghajtó és a hét szegmenses kijelző-kódoló. A stopper fő modul összekapcsolja az összes almodult, valamint a bemeneteket és kimeneteket.
3. lépés: Órák készítése

Az óraosztó modul felveszi a rendszerórát, és egy osztó bemenetet használ, hogy bármilyen sebességű órát hozzon létre, amely nem nagyobb, mint a rendszeróra. A stopper két különböző óramodult használ, az egyik 500 Hz -es órát hoz létre, a másik pedig 100 Hz -es órát. Az óraosztó sémája a fenti ábrán látható. Az óraosztó egybites "CLK" bemenetet, 32 bites "Osztó" bemenetet és egybites "CLKOUT" kimenetet vesz fel. A "CLK" a rendszeróra, a "CLKOUT" pedig a kapott óra. A modul tartalmaz egy NOT kaput is, amely átkapcsolja a "CLKTOG" jelet, amikor a számláló eléri az osztó értékét.
4. lépés: Tízig számolás

A számjegyszámláló minden számjegyet 0-tól 10-ig számol, és létrehoz egy másik órát, hogy a következő számjegy működjön, ami oszcillál, amikor a szám eléri a 10-et. A modul 3 egybites "S", "RST" és "CLK bemenetet vesz fel "és egybites" N "kimenetet és 4 bites" D "kimenetet eredményez. Az "S" bemenet a bemenet engedélyezése. Az óra bekapcsol, ha az "S" magas, és kikapcsol, ha az "S" alacsony. Az "RST" a reset bemenet, így az óra visszaáll, ha az "RST" magas. A "CLK" a számjegyszámláló óra bemenete. "N" az óra kimenete, amely a következő számjegy bemeneti órájává válik. A "D" kimenet a számjegy bináris értékét mutatja.
5. lépés: Számok megjelenítése

A hét szegmenses kijelző kódoló kódolja a hét szegmenses kijelző illesztőprogram modulból kapott bináris számot, és bitfolyammá alakítja, amelyet a kijelző minden szegmensében „1” vagy „0” értékként fognak értelmezni. A bináris számot a modul 4 bites bemeneti "számjegyként" fogadja, és 7 bites kimeneti "szegmenseket" eredményez. A modul egyetlen esetfeldolgozási blokkból áll, amely egy adott 7 bites adatfolyamot rendel hozzá minden lehetséges bemeneti értékhez 0 és 9 között. A hét bites adatfolyamok minden bitje a kijelző számjegyeinek hét szegmensének egyike. A folyamban lévő szegmensek sorrendje „abcdefg”, a „0” pedig az adott számnál világító szegmenseket jelöli.
6. lépés: A stopper megjelenítése

A hét szegmenses kijelző-illesztőprogram modulban négy 4 bites "D0", "D1", "D2" és "D3" bemenet található, amelyek mindegyike a megjelenítendő négy számjegyet jelenti. A "CLK" bemenet a rendszer óra bemenete. Az egybites "DP" kimenet a tizedespontot jelzi a hét szegmenses kijelzőn. Az "Anódok" 4 bites kimenet határozza meg, hogy a hét szegmenses kijelzőn melyik számjegy jelenik meg, a 4 bites "temp" kimenet pedig a "SEL" 2 bites vezérlőbemenet állapotától függ. A modul 4 multiplexert használ a "SEL" vezérlőbemenethez és a három kimenethez; "Anódok", "temp" és "DP".
7. lépés: Az összes összehozása
Az 500 Hz -es óra lefutó „if” folyamatblokkját használják a start és a szünet gombok létrehozásához. Ezután kapcsolja össze az összes almodult a stopperóra főmoduljában az egyes almodulok összetevőinek deklarálásával és különböző jelek használatával. A számjegyes almodulok az előző számjegyű almodul órajeleit veszik fel, az első pedig a 100 Hz -es órát. A számjegyű almodulok "D" kimenetei a hét szegmenses kijelző -illesztőprogram "D" bemeneteivé válnak. És végül a hét szegmenses kijelző -illesztőprogram "temp" kimenete a hét szegmensű kódoló modul "temp" bemenetévé válik.
8. lépés: Korlátok

Használjon 3 nyomógombot (W19, T17 és U18) az "RST", "S1" és "S2" bemenetekhez. W19 a reset gomb, T17 a start gomb (S1), és U18 a szünet gomb (S2). A W5 port használatával az óra bemenetének korlátozására is szükség van. Ezenkívül ne felejtse el hozzáadni ezt a sort az órakorláthoz:
create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports {CLK}]
Kapcsolja össze az anódokat és a szegmenseket is a táblával, hogy a stopper megjelenjen a hét szegmenses kijelzőn, ahogy a megszorítások fájlban látható.
9. lépés: Tesztelés

Győződjön meg arról, hogy eszköze működik a három gombbal való játékkal: nyomja meg és tartsa őket minden lehetséges sorrendben, hogy megtalálja a kóddal kapcsolatos esetleges problémákat.
Ajánlott:
Egy alapvető elektrokardiogram megszerzése, erősítése és szűrési áramkörének kialakítása: 6 lépés

Alapvető elektrokardiogram megszerzése, erősítése és szűrési áramkörének kialakítása: Ennek az utasításnak a teljesítéséhez csak számítógépre, internet -hozzáférésre és néhány szimulációs szoftverre van szükség. Ebből a célból minden áramkör és szimuláció az LTspice XVII rendszeren fut. Ez a szimulációs szoftver
NAIN 1.0 - az alapvető humanoid robot az Arduino használatával: 6 lépés

NAIN 1.0 - az alapvető humanoid robot az Arduino használatával: A Nain 1.0 alapvetően 5 levehető modult tartalmaz- 1) Arm - amely szervók segítségével vezérelhető. 2) Kerekek - amely egyenáramú motorokkal vezérelhető. 3) Láb - Nain képes lesz váltani a kerekek vagy lábak között a mozgáshoz. 4) Fej és
VHDL Basys3: Connect 4 Játék: 5 lépés

VHDL Basys3: Connect 4 játék: Bevezetés: Ez egy Connect 4 digitális logikai játék, amelyet VHDL -ben terveztek a Vivado szoftver segítségével és a Basys3 táblára programoztak. Ennek a projektnek a felépítése és kialakítása közbenső, de az újonnan belépők lemásolhatják a lépéseket és felépíthetik a digitális
Stopperóra 30 m futáshoz (Arduino): 6 lépés (képekkel)

Stopperóra 30 méteres futáshoz (Arduino): Ez a projekt a finn baseball edzés meghatározott céljára készült, és a junior játékosok sebességének tesztelésére 30 m futásban. Ez az arduino projekt egy tanfolyam volt a tanulmányaim során. A projektnek voltak hullámvölgyei, de most legalább működik
Parallax BOE-Bot készítése az alapvető bélyegzőchip használatával: 7 lépés

Hogyan készítsünk egy Parallax BOE-Bot-ot az alapvető bélyegzőchip használatával: Ez az utasítás a Parallax BOE-Bot Basic bélyegző robot felépítését és módosítását mutatja be