Stap 4: 7-segment display
Wij willen onze adder te laten uitzien als een rekenmachine, ook. Rekenmachines geven de nummers worden toegevoegd en hun som. Als u wilt weergeven van onze nummers op het bord, onze 7-segment display neemt de binaire vertegenwoordiging van onze nummers en weergegeven op een typische digitale nummerweergave.
1) uitschrijven van de cijfers 0-9 in binaire en de invloed van elk nummer op de verlichting van elke balk in de weergave.
Opmerking: De bars hebben het label van A-G in een richting van de klok. Iedere uitgang dat a-G zal worden beïnvloed door input 0000-1001. (Volledige 7-segment displays doen 0-F met behulp van hexadecimale, 0-9 en A-F, maar we zullen niet nodig hebben. Als u later opnieuw wilt gebruiken wilt, is het handig om programmering A-F. Ik zal gaan over de volledige uitvoering van het 7-segment display.) In programmeeromgevingen is dit een 7-segment display een uitgang van 0 komt overeen met een verlichte bar terwijl 1 betekent dat het niet is verlicht.
Zie foto
2) Maak een Verilog HDL-bestand.
Zie foto
Dit bestand zal worden anders dan de anderen. De output van elk segment zal specifiek worden gepreciseerd in termen van binaire. Dit bestand zal worden gecodeerd.
3) Sla het op als 7_segment_display.
4) Voer in de eerste lijn, "module 7_segment_display (A, B, C, D, E, F, G, W, X, Y, Z);".
Opmerking: A-G zijn onze uitgangen, overeenkomt met de 7 segmenten in de digitale klok. W-Z zijn onze ingangen, overeenkomt met elke digitale van onze binaire getallen. Dit zijn hoofdlettergevoelig. Houd het hetzelfde.
5) Voer op de tweede regel "input W, X, Y, Z;".
6) voor de derde regel, voert u "output A, B, C, D, E, F, G;".
7) op de vierde regel, typ "reg A, B, C, D, E, F, G;".
8) overslaan naar de zesde regel.
9) invoeren "altijd of X of Y of Z)".
10) Geef 'begin' op regel 7.
11) lijn 8 zal zeggen "geval ({W, X, Y, Z})".
Lijnen 6-8 gaat in elk geval. Elk geval bestaat uit de verschillende mogelijkheden voor de ingangen en wat de output zal zijn voor elke input.
12) overslaan om lijn 10, voer "4'b0000: A ='b0;".
13) op lijn 11, voer "4'b0001: A ='b1;".
"4" b "vertelt de computer dat onze ingangen in 4 cijfers van binary, in tegenstelling tot decimaal, hexadecimaal of achthoekig zullen. Voor elke bepaalde input, wordt de output van A gegeven, die kan slechts 1 decimaal, overeenkomt met 2 mogelijke uitgangen hebben.
14) gebruiken de tabel Tijdsregistratie dat hierboven wordt getoond en die u hebt aangebracht aan het voltooien van de gevallen voor uitvoer A.
15) immers de invoer gevallen worden gegeven, moet je bereid zijn om te typen op de regel 26.
16) on line 26, voer "endcase".
17) Geef "end" op regel 27.
Zie foto
18) Skipping aan lijn 29, te beginnen met het zelfde proces voor uitvoer B.
19) om de code leesbaar te houden, houden u spaties tussen de gevallen voor elke uitgang.
20) als u ruimten gehouden zoals voorgesteld, wanneer u klaar bent met de gevallen voor uitvoer G, zullen de volgende lege regel lijn 161.
21) Voer op de lege regel, "endmodule".
22) Sla het bestand.
23) het analyseren van het bestand.
24) maken een symbool voor 7_segment_display.