INHOUDSOPGAWE:

VHDL -stophorlosie: 8 stappe (met foto's)
VHDL -stophorlosie: 8 stappe (met foto's)

Video: VHDL -stophorlosie: 8 stappe (met foto's)

Video: VHDL -stophorlosie: 8 stappe (met foto's)
Video: Fun with Music and Programming by Connor Harris and Stephen Krewson 2024, November
Anonim
VHDL stophorlosie
VHDL stophorlosie

Dit is 'n handleiding oor hoe u 'n stophorlosie kan maak met behulp van VHDL en 'n FPGA-printplaat, soos 'n Basys3 Atrix-7-bord. Die stophorlosie kan van 00,00 sekondes tot 99,99 sekondes tel. Dit gebruik twee knoppies, een vir die begin/stop -knoppie en die ander vir die reset -knoppie. Die getalle word op die bord se sewesegment vertoon met behulp van die anodes en katodes. Daar is drie verskillende lêers nodig om hierdie stophorlosie te laat werk.

Stap 1: Hardeware/sagteware

  • Basys3 Atrix-7 FPGA Board
  • Vivado Design Suite van Xilinx
  • USB 2.0 A Man na Micro-B Male

Stap 2: Blokdiagram

Blokdiagram
Blokdiagram

Die algehele stophorlosie het drie insette en twee uitgange. Die drie insette is die begin/stop, reset en klok. Die begin/stop en die reset is knoppies en die horlosie is die bord se 100MHz -klok. Die twee uitsette is die anodes en katodes vir die sewesegment.

Die eerste module (klokverdeler) het een ingang en twee uitsette. Die ingang is die bord se 100MHz -klok en die uitsette is twee afsonderlike horlosies, een wat op 480Hz werk en 'n ander met 0,5MHz.

Die tweede module (skerm) het vyf insette en twee uitsette. Die insette is die 100MHz -horlosie van die bord, die twee horlosies van die klokverdelermodule en die begin/stop- en resetknoppies. Die uitsette is die anodes en katodes.

Die laaste module (gemodelleer deur die hele blokdiagram) het drie insette en twee uitsette. Dit is die lêer wat alles bymekaar bring. Die insette is die 100 MHz van die bord en die knoppies begin/stop en herstel. Die uitsette is die anodes en katodes wat die sewesegment vertoon. Al die insette en uitsette is fisies op die bord vir die finale module.

Stap 3: Gee diagram

Staatsdiagram
Staatsdiagram

Die foto hierbo toon die toestand diagram vir hoe die stophorlosie werk. As u op die reset -knoppie druk, het dit geen invloed op die toestand van die stophorlosie nie. Die volgende toestand word bepaal deur die start/stop -knoppie. Die begin/stop is "HOOG" as dit ingedruk word, maar nie as dit ingedruk word nie, en "LAAG" as die knoppie teruggekeer word of ingedruk word nadat dit 'HOOG' was.

As die stophorlosie tel en die begin/stop -knoppie "HOOG" gaan, dan stop dit met tel. As die stophorlosie gestop word en die start/stop -knoppie "HOOG" gaan, begin dit weer tel. As die begin/stop -knoppie vir beide state 'LAAG' is, bly dit in die toestand waarin dit tans is.

Stap 4: Klokverdelermodule

Die klokverdelermodule het een ingang, die bord se 100MHz -horlosie en twee uitsette, die 480Hz- en die 0.5MHz -horlosies. Die 480Hz-klok word gebruik om al die LED's op die sewesegment op dieselfde tyd "aan" te hou deur vinnig deur die vier te skakel. Die 0,5MHz-klok word gebruik om die stophorlosie eintlik met sentisekondes te tel.

Stap 5: Vertoonmodule

Hierdie vertoonmodule het vyf insette, die kaart se 100MHz -horlosie, die twee horlosies van die klokmodule, en die begin/stop- en resetknoppies, en twee uitsette, die anodes en katodes. Hierdie module het ook die 'logika' vir hoe die stophorlosie tel en die eindtoestandmasjien bevat.

Stap 6: Bindmodule

Hierdie laaste module is die een wat die ander twee modules bymekaar bring. Dit het drie insette, die kaart se 100MHz -klok en die begin/stop- en resetknoppies, en twee uitgange, die anodes en katodes. Die 100MHz -klok gaan na die klokverdelermodule en die vertoningsmodule, en die knoppies begin/stop en herstel gaan na die vertoonmodule. Die uitsette van die klokverdelermodule (480Hz en 0.5MHz) gaan na die twee klokinsette van die vertoningsmodule. Die uitsette van die vertoonmodule (anodes en katodes) gaan na die uitsette van die finale module.

Stap 7: Beperkings

Beperkings
Beperkings

Die twee insette kan enige knoppies op die Basys3 Atrix-7 FPGA-bord wees, en die uitsette sal die vier anodes en die agt katodes wees (omdat u ook 'n desimale punt tussen sekondes en millisekondes wil hê) vir die sewesegment.

Stap 8: Klaar

Laai die program op u Basys3 Atrix-7 FPGA-bord op en druk op u start/stop-knoppie om die stophorlosie aan die gang te kry!

Aanbeveel: