Tartalomjegyzék:

FPGA Cyclone IV DueProLogic - Nyomógomb és LED: 5 lépés
FPGA Cyclone IV DueProLogic - Nyomógomb és LED: 5 lépés

Videó: FPGA Cyclone IV DueProLogic - Nyomógomb és LED: 5 lépés

Videó: FPGA Cyclone IV DueProLogic - Nyomógomb és LED: 5 lépés
Videó: Tutorial FPGA 1.- Presentación Kit FPGA Cyclone IV EP4CE6 Blue 2024, November
Anonim
FPGA Cyclone IV DueProLogic - nyomógomb és LED
FPGA Cyclone IV DueProLogic - nyomógomb és LED

Ebben az oktatóanyagban az FPGA -t fogjuk használni a külső LED áramkör vezérlésére. A következő feladatokat fogjuk végrehajtani

(A) Használja az FPGA Cyclone IV DuePrologic nyomógombjait a LED vezérléséhez.

(B) A vaku LED rendszeresen be- és kikapcsol

Videó demó

Labormenü:

1. lépés: Elektronikus áramkör építése

2. lépés: Ellenőrizze a PIN -kódtervezőt és a Verilog -kód szerkesztését

Ellenőrizze a PIN -tervezőt és a Verilog -kód szerkesztését
Ellenőrizze a PIN -tervezőt és a Verilog -kód szerkesztését

3. lépés: A Verilog -kód szerkesztése

Verilog -kód szerkesztése
Verilog -kód szerkesztése

FPGA DueProLogic vásárlásakor DVD -t kell kapnia. A "Projects_HDL" megnyitása után látnia kell az eredeti kódfájlt

Adja hozzá a kiemelt kódot. Regisztrálja az I/O portokat, és számokat rendel a portokhoz.

kimeneti vezeték [7: 0] XIO_1, // XIO-D2-D9

kimeneti vezeték [5: 0] XIO_2, // XIO-D10-D12

kimeneti vezeték [5: 0] XIO_3, // XIO-D22-D29

bemeneti vezeték [5: 0] XIO_4, // XIO-D30-D37

bemeneti vezeték [5: 0] XIO_5, // XIO-D38-D45

kimeneti vezeték [4: 0] XIO_6_OUT, // XIO-D46-D53

bemeneti vezeték [31: 5] XIO_6, // XIO-D46-D53

kimeneti vezeték [2: 0] XIO_7, // XIO - D69, D70, D71, D74, D75, D76

bemeneti vezeték UBA, // Nyomógombos kapcsolók

bemeneti vezeték UBB // Nyomógombos kapcsolók

hozzárendelni XIO_1 [3] = start_stop_cntrl;

hozzárendel XIO_2 [1] = start_blinky; // LED vaku LED be- és kikapcsolása

hozzárendelni XIO_2 [2] = 1'b1; // kimenet HIGH

hozzárendel XIO_2 [3] = ~ UBA; // Nyomja meg az A gombot

hozzárendel XIO_2 [4] = UBB; // Nyomja meg a B gombot

hozzárendel c_enable = XIO_5 [2];

hozzárendelni LEDExt = XIO_5 [5];

Ezután késleltetési időzítőt kell beállítanunk. Kommentálja az eredeti időzítő kódját, és írjon egy új időzítő funkciót

//-----------------------------------------------

// LED Blinky start

//-----------------------------------------------

/*

mindig @(CLK_66 posedge vagy RGE szegmens)

kezdődik

ha (! RST)

start_blinky <= 1'b0;

más

kezdődik

ha (kontroll_register [7: 4]> 0)

start_blinky <= 1'b1;

más

start_blinky <= 1'b0;

vége

vége

*/

reg [31: 0] ex;

kezdő kezdet

ex <= 32'b0;

start_blinky <= 1'b0;

vége

mindig @(poszter CLK_66)

kezdődik

ex <= ex + 1'b1;

ha (pl.> 100000000) // a vaku be-/kikapcsolása ~ 1,6 másodperc, órajele 66 MHz

kezdődik

start_blinky <=! start_blinky;

ex <= 32'b0;

vége

vége

//-----------------------------------------------

// LED késleltetés időzítő számláló

//-----------------------------------------------

/*

mindig @(CLK_66 posedge vagy RGE szegmens)

kezdődik

ha (! RST)

led_delay_counter <= TIMER_LOW_LIMIT;

más

kezdődik

if (állapota [SELECT_MODE])

led_delay_counter <= timer_value;

else if (állapota [WAIT_FOR_TIMER])

led_delay_counter <= led_delay_counter - 1'd1;

vége

vége*/

4. lépés: Fordítsa össze a Verilog -kódot

Fordítsa össze a Verilog kódot
Fordítsa össze a Verilog kódot
Fordítsa össze a Verilog kódot
Fordítsa össze a Verilog kódot

Nyomja meg a "Fordítás indítása" gombot a Quartusban, nem kell hibaüzenetet generálni.

Ha hibaüzenetet kap több tűről. Lépjen a Hozzárendelések -> Eszköz -> Eszköz- és tűbeállítások -> Kettős célú csapok -> módosítsa a megfelelő tű értékét "Használja rendes I/O" -ra.

A fordítás után közvetlenül meg kell kapnia a pof kimeneti fájlt. Ha a szoftvere nem naprakész, akkor csak sof fájlt kaphat. Amikor ez megtörténik, kattintson a "Fájl" gombra a Quartusban -> "konvertálja a programozási fájlokat". Módosítsa a piros dobozokkal jelölt beállításokat.

5. lépés: Próbáljuk ki

Végül is működnie kell !!! A sárga LED mindig világít. A piros LED villog. A kék LED kialszik, ha megnyomja a B gombot. A zöld LED akkor világít, ha megnyomja az A gombot

Ajánlott: