AVR Assembler Övningsexempel 9 (7 / 7 steg)
Steg 7: 4-siffrig display kod och
Det är allt för Övningsexempel 9! Jag har bifogat koden och en video som visar driften.
Detta blir sista gången vi kommer att använda analoga knappsatsen (gudskelov). Det var tufft att använda, men det var också mycket användbart för att hjälpa oss att lära sig om analog-till-digital konvertering, analoga portar, avbrott, multiplexering, buller filter, spänning förstärkare och många aspekter av församlingen kodning från uppslagstabeller till timer/räknare, etc. Det är därför vi valt att använda den. (plus att det är kul att rensa saker).
Nu vi kommer att titta på kommunikation igen och få våra 7-segment och våra 4-siffriga displayer läsa upp rullar våra tärning från vår dice roller på samma sätt som vi gjorde med våra register analyzer. Denna tid vi kommer att använda två-tråd gränssnittet snarare än vår hacka tillsammans morsekod metod.
En gång har vi kommunikationen fungerar och rullar visas på displayerna vi kan äntligen göra den första delen av vår slutprodukt. Du kommer att märka att vår kod utan alla analog port saker kommer att bli betydligt kortare och förmodligen lättare att läsa.
För er som är ambitiösa. Här är ett "projekt" som du kan prova att du verkligen har kunskap att göra på denna punkt om du har gått igenom alla dessa handledning till denna punkt:
Projekt: göra en miniräknare! Använd vår 4-siffrig display och våra knappsats och lägga till en extern knapp push som ska fungera som en "gå in" nyckel. Karta asterisk till "times", hash att "splittra" Ring upp igen till "plus" och blixten för att "minus" och skriva en kalkylator rutin som fungerar som en av de gamla HP "omvänd polska" miniräknare som alla ingenjörer hade tillbaka i dag. Dvs är deras sätt att arbeta att du anger ett nummer och tryck på "enter". Detta driver detta nummer på stacken, då du skriver andra tal och tryck "enter", som skjuter det andra numret på stacken. Slutligen du trycker på någon av transaktioner som X, /, + eller - och det kommer att gälla två översta siffrorna på stacken operationen, resultatet visas, tryck resultatet på stacken så att du kan använda den igen om du vill. Till exempel att lägga till 2 + 3 du skulle göra: 2, "enter", 3, "enter", "+" och displayen skulle då lyda 5.
Du vet hur man använder stacken, displayen, knappsatsen, och du har de flesta av bakgrunden koden redan skrivit. Lägg bara på Enter och subrutiner behövs för Kalkylatorn. Det är lite mer komplicerat än du kanske först tänker, men det är kul och gör-stånd.
Vi ses nästa gång!