Stap 3: Display Module
De vertoningsmodule zal de SSD gebruiken om weer te geven als het alarm is 'ON' of 'Uit'. Hiermee worden de waarden van de gewapende en ontwapend status variabelen. Afhankelijk van de input, zal de module oplichten door bepaalde segmenten van het display. Verwijzen naar de tweede afbeelding van deze sectie om te weten welke segmenten zal worden verlicht. Verwijzen naar de eerste afbeelding van deze sectie om te zien wat de SSD's eruit ziet wanneer de segmenten zijn verlicht.
Wanneer de gewapende staat brandt (input is 1), twee beeldschermen zal worden gebruikt, één voor elke letter van het woord 'on'. De eerste display, alle segmenten maar nummer 6 zal worden verlicht. De tweede display zal hebben segmenten 0, 1, 2, 4 en 5 verlicht (kon ook gebruiken segmenten 2, 4 en 6).
Wanneer de ontwapend staat brandt (input is 1), drie beeldschermen zal worden gebruikt; één voor elke letter van het woord 'uit'. De eerste expositie zullen hetzelfde als voor het eerste scherm wanneer het systeem ingeschakeld is. De tweede en derde displays krijgen beide segmenten 0, 4, 5, 6 zal worden verlicht.
De SSD zijn lage niveau gevoelig, wat betekent dat ze oplichten wanneer ze zijn 0. De labels in de tweede foto vertellen u de positie waarin de 0's moeten worden geplaatst om te vormen van de gewenste vorm. Bijvoorbeeld, om de letter 'n', de segmenten 0, 1, 2, 4 en 5 moeten worden verlicht, wat betekent dat al die standpunten zal gelijk zijn aan nul. De andere posities, in dit geval posities 3 en 6, 1 zal worden. Daarom moet de letter 'n' de 7 bit binaire die zal worden gevoed op de pinnen is 0001001. Omdat elke plank anders is, moet u wellicht te reserveren van de nummers in je board specifiek, maar dit hoe ze alles zou is moeten werken.
De pennen die nodig zijn voor dit project vindt u op pagina's 36 tot en met 38 van de gebruikershandleiding van Altera DE2-115. Bericht dat de SSD pinnen heb 7 pinnen per beeldscherm, zoals HEX0 [0] aan HEX0 [6]. Elke positie van de 7 bit binair getal krijgt elk een van deze 7 pinnen. Echter, hoewel de 7 bit binair getal van positie 0 naar positie 6 gaat, om de juiste volgorde van pins, ze moeten tellen.
HEX0 [6] zullen positie 0, HEX0 [5] zal zijn positie 1, enz.
De code is als volgt:
module armedStatusDisplay (armedState, SSD, SSD1, SSD2);
invoer armedState;
uitvoer reg [6:0] SSD, SSD1, SSD2;
altijd
beginnen
SSD2 = 7' b0000001;
if (armedState == 1)
beginnen
SSD = 7' b1111111;
SSD1 = 7' b0001001;
einde
anders
beginnen
SSD = 7' b0111000;
SSD1 = 7' b0111000;
einde
einde
endmodule