AVR Assembler handledning 11 (2 / 5 steg)

Steg 2: Dealerns Cash Display



Vi bygger återförsäljare displayen på samma sätt som vi med spelarens 4-siffriga visar i den senaste handledningen. De enda skillnaderna är att det är större, och den har färre pins, så vi kommer att ordna det och binda den annorlunda.

Jag har bifogat en bild av ledningarna för denna display. Du kan se att det är större och har färre stift än våra playercash skärm. Bilden är från sparkfun sida där jag fick displayen och den visar vilket stift är makten för varje siffra, och vilket stift vart och ett av segment i en siffra.

Som vanligt bör du börja genom att koppla skärmen till din prototyping bakbord och testa varje segment för att vara säker att du förstår hur det är kopplat. Ska du ansluta den till en AVR microcontroller provramens på din skärbräda och springa den från där tills vi har all vår kod som arbetar i den här guiden. Slutligen, i slutet, bör du bygga externa styrelsen och löd den på. Sedan när du testar den slutliga produkten vet du att eventuella problem kommer från ditt lödning och styckning jobb och inte koden. Glömde också, inte den välkända axiomen från Snickeri "åtgärd två gånger och klipp en gång", eller när det gäller att göra kretskort: "skär två gånger, löda en gång." Som ni kan se av bilden, jag slutligen bröt ner och köpte den perfekta Dremel fäste för denna typ av arbete. En "Diamond punkt Set". Det kostade 5 spänn men det är mycket mindre än kostnaden för ilska Management terapin som kommer med effing upp min styckning jobb för många gånger i rad.

Jag använder 330 ohm motstånd för denna display. COM stiften går igenom motståndet till GND och strömmen går att segmentera beroende på vilket som du vill visa. Jag kommer att använda PC0 genom PC3 för COM stift och PB0, PB1, PB2, PB3, PB4, PD5, PD6 och PD7 för segmenten.

Här är nyckeln till att maximera dina chanser att få det rätt:

  1. kartlägga kretsen
  2. skär kretsen
  3. Kontrollera ditt ledningar
  4. bifoga motstånden, mössor och kristalloscillator
  5. Kontrollera anslutningarna och ledningar igen
  6. bifoga externa kablar
  7. bifoga mikrokontroller
  8. Kontrollera ledningarna igen
  9. montera 4-siffriga displayen
  10. kontrollera varje siffra med ett par av kablarna från skärbräda
  11. Ställ det åt sidan och skriva koden, att veta att du förmodligen kommer att behöva justera saker senare och hoppas du inte har täckt upp en anslutning som ska skäras.

Jag har visat en serie bilder av mitt ledningar jobb. Du inse att du är gratis tråd din som du vill. Det är mycket troligt kan du hitta en bättre karta än jag gjorde och bör du använda den. Ingenting i dessa tutorials beror på hur dina komponenter är wired, så länge som de har rätt output portar. Vilket påminner mig. Observera att det nu finns två rubriker kommer att SDA och två kommer att SCL? Varför tror du att vi gjorde det?

Nu, som ni kan se av den bifogade uppförandekoden i slutet av handledningen jag klipp och klistrat in koden på spelardisplayen av sista handledningen till en ny fil för att Visa återförsäljare. Då jag gick igenom och förändrat "segment" uppslagstabellen för att motsvara den nya stift karta att notera att för denna display "com" stiften är marken och segment stiften är 5V i stället för tvärtom som det var för andra displayen. Jag har också ändrat initiering av hamnarna att återspegla den nya ledningar, jag ändrade dealercash displayen adress till 0b1000000 så att tärningarna rullen kommer att kunna prata med honom, jag ändrade "cykla" subrutinen så att det stänger av PC0 genom PC3 "com" stift när man vill driva ett visst segment och jag ändrade "siffran" som får visas sedan den nya ledningar har siffrorna i omvänd ordning (om du lämnat det som det var och försökte skulle att Visa 1234 it ha visat som 4321 istället).

Här är den nya register kartan:

(PD7, PD6, PD5, PB4, PB3, PB2, PB1, PB0) = (decimalkomma, c, g, b, f, a, e, d)

där 1 är på och 0 är avstängd.

Nu testa visning av första anger initieras av displayen till olika siffror så att när det blir det visar dem. Detta kommer att berätta om allt fungerar korrekt.

Sedan ändra diceroller koden så att den använder den nya adressen för slaven, koppla in dem tillsammans och köra den. Det bör fungera precis vad vi i den sista läraren förutom att tärningen rullar nu visas på den nya displayen.

Stor! Nu är vi redo att skriva nya tärningarna roller kod så att den kommunicerar med både spelarens display och återförsäljare displayen.

Se Steg
Relaterade Ämnen

AVR Assembler handledning 6

Välkommen till Tutorial 6!Dagens handledning kommer att vara kort där vi kommer att utveckla en enkel metod att kommunicera data mellan en atmega328p och en med två portar ansluta dem. Vi kommer ta sedan tärningarna rullen från läraren 4 och registre...

AVR Assembler handledning 8

Välkommen till Tutorial 8!I denna kort tutorial ska vi ta lite av en skenmanöver från att införa nya aspekter av assembler programmering att visa hur man flytta våra prototyper komponenter till ett separat "tryckta" kretskort. Anledningen är att...

AVR Assembler handledning 10

Välkommen till handledning 10!Ledsen att det tog så lång tid för att få denna nästa avbetalning ut men detta är en ganska hektisk tid på året. I alla fall, är här det!Vi har kommit långt och du förmodligen redan är kompetenta nog att skriva många int...

AVR Assembler handledning 5

Idag kommer vi att ta en närmare titt på de olika minnesplatserna i Atmega328p mikrokontroller och se om vi bättre kan förstå hur saker lagras, där de lagras och hur pekare och uppslagstabeller fungerar.Handledningen kommer att delas upp i två delar....

AVR Assembler handledning 3

Välkommen till tutorial nummer 3!Innan vi börjar vill jag göra en filosofisk punkt. Inte vara rädd för att experimentera med kretsar och den kod som vi konstruerar i dessa tutorials. Ändra sladdar runt, lägga till nya komponenter, ta komponenter ut,...

AVR Assembler Tutorial 1

Jag har beslutat att skriva en serie tutorials om hur man skriver assembler program för den Atmega328p som är mikrokontroller används i Arduino. Om människor förblir intresserad fortsätter jag att lägga ut en en vecka eller så tills jag får slut på l...

AVR Assembler Övningsexempel 7

Välkommen till Övningsexempel 7!Idag vi första visar hur du rensar en knappsats och sedan visar hur du använder Analog ingång hamnarna för att kommunicera med knappsatsen.Vi kommer att göra med avbrott och en enda tråd som indata. Vi kommer tråd knap...

AVR Assembler Övningsexempel 9

Välkommen till Övningsexempel 9.Idag kommer vi att visa hur du kan styra både 7-segment display och en 4-siffrig display med våra ATmega328P och AVR assembler kod. I samband med detta får vi ta omvägar till hur du använder stacken för att minska anta...

AVR Assembler Tutorial 2

Denna handledning är en fortsättning på "AVR Assembler Tutorial 1"Om du inte har gått igenom Tutorial 1 bör du sluta nu och göra att man först.I den här guiden kommer vi fortsätta vår studie av assembler programmering av den atmega328p som använ...

AVR Assembler Övningsexempel 4

Välkommen till tutorial nummer 4!I den här guiden kommer vi att bygga en krets som kommer att simulera rullning av två tärningar. Sedan kommer vi först skriva en brute force-program som gör jobbet. Sedan kommer vi förenklar det programmet på olika sä...

En avancerad metod för Arduino & AVR programmering

Detta instructable är ett måste läsa för alla som är bekanta med core AVR chips och Arduino.Tja, mer konkret, när jag läste den instructable kommer du att kunna:1) vet väl skillnaden mellan AVR och Arduino.2) programmering Arduino med WinAVR & använd...

Utveckling styrelsen för Attiny84 mikrokontroller

Detta är en utveckling styrelse för Attiny84 mikrokontroller. Tha Attiny84 chip har 11 pins adresserbara med Arduino IDE, 8k flashminne för lagring av program och 512 byte ram tillgängligt för variablerna stack och program.En funktion av den Attiny84...

Hur man ladda program till en Arduino UNO från Atmel Studio 7

I denna korta Instructable kommer vi att lära sig att ladda ett program till en Arduino UNO ombord med Atmel Studio istället för Arduino IDE. Detta är användbart när du behöver utveckla ett program med fler advance funktioner eller på ett annat språk...

MRETV - Video, ljud och mycket mer från en standard Arduino!

MRETV - Video, ljud och mycket mer från en standard Arduino!Nu uppdaterad för Arduino 1.6.6 November 2015!Använd endast två resistorer och två dioder för att generera full skärm video. Text 47 x 29 8 x 8 tecken, dubbla vertikala upplösningen (47 x 57...

Älskling, jag krympte Arduino: flytta från Arduino till ATtiny och skriva din kod i ren AVR-C

Arduino är en stor hård- och mjukvaruplattform, men med alla dess funktioner är det också lite uppsvälld och ofta behöver du bara en liten del av alla funktioner. Projektet kräver ibland för att ha mindre och billigare enheter. Vad du behöver är ATti...

65xx teknik-församlingen språk programmering med W65C02SXB-handledning 1

Western Design Center (WDC) har beslutat att skriva en serie tutorials på hur du kommer igång med vår 65xx teknik och hur man skriver assembler program för 65xx familjen för ICs. Denna handledning kommer att baseras på använda det Standard W65C02 chi...

AVR fuse grunderna: kör en avr med en extern klocka

säkringar är bland de svåraste ämnen som jag stött på samtidigt lära sig om programmering microcontrollers. Även efter att söka och läsa flitigt, kunde jag fortfarande inte lyckas rensa mitt begrepp om dem. Men sedan jag började lära dem ta en i tage...

AVR programmering med Arduino, AVRdude och AVR-gcc

AVR är en gemensam, billig typ av mikro-controller som kan verka skrämmande att arbeta med, men oroa dig inte! När du har Ställ in grundläggande kunskap och kan de bli inte bara nyttigt, men viktigt att nya projektidéer som du drömmer upp!Denna handl...

Idiot's Guide till programmering AVR: s på de billiga (med Arduino IDE!)

Mikrokontroller är, utan tvekan, fantastiska små saker. De är mångsidiga, kraftfull och mycket små. Tyvärr, den sistnämnda drag också delas av både min plånbok och mina kunskaper i programmering. Min förståelse av C är dålig, och jag har knappt råd a...