Designa en Multi nod LED PWM lampa (2 / 6 steg)
Steg 2: prototyper:
Jag gick och köpte en ny CSS C-kompilator som riktar sig till den 10F2xx micros. Familjen 10F2xx marker är riktigt billigt! Med höga hopp, jag dök och började skriva massor av kod.
10F206 har en jättestor 24 byte RAM - chip också sport 512 byte av flash och en åtta-bitars timer. Medan resurserna är gles, är priset bra på 41 cent i stora mängder. Min Gud, en miljoner instruktioner per sekund (1 MIPS) för 41 cent! Jag älskar bara Moores lag. Evan på en av priser, 10F206 från Digikey är listad på 66 öre.
Jag tillbringade en massa tid åt att arbeta med 10F206. När du arbetar med 10F206 upptäckte jag att multitasking är absolut nödvändiga. PWM utsignaler måste hålla sig uppdaterad även om du tar emot nya meddelande meddelanden. Avbrott i uppdatera PWM signaler kommer att ses som glitches på lysdioderna. Det mänskliga ögat är riktigt bra på att se glitches.
Det finns ett par grundläggande problem med 10F206 chip. Minst grundläggande problem för min ansökan. Det första problemet är att det finns inga avbrott! Att fånga i början av ny kommunikation med hjälp av en polling loop gör för timing fel. Det andra problemet är att det finns bara en timer. Jag kunde bara inte hitta ett sätt att ta emot kommandon bibehållen PWM utgångar. Lysdioderna skulle glitch varje gång ett nytt kommando mottogs. Dela tidtagare mellan tar emot kommandon och kör PWM utgångar var också jobbigt stora programvara. Jag kunde inte återställa timern medan får en ny karaktär eftersom timern användes också till att kontrollera PWM signaler.
När du arbetar med 10F206 såg jag en artikel i krets källare om Freescales nya små MC9RS08KA1 micro. Jag älskar Freescale chips - jag är ett stort fan av deras BDM felsökning. Jag använde Star12 markerna mycket tidigare (jag skrev alla program som GM Cadillac & Lacern ultraljud systemet på en Star12 - min ultraljud programvara är i produktion nu på dessa två bilar). Så, jag var verkligen hoppas att deras nya små marker skulle vara bra. Priset är med rätta, Digikey har dessa marker överst på 38 cent i stor mängd.
Freescale var bra och skickade mig några gratisprover. Men Freescale 9RS08 chip verkade verkligen dum - jag kunde inte göra mycket framsteg med den. Chipet lider också en avsaknad av avbrott och endast en timer. Nåja, åtminstone jag tänkte att alla ut utan att slösa pengar på spinning en annan proto styrelse. Se bilder nedan.
Nu jag vet - för min ansökan måste jag ha avbrott och mer än en timer.
Tillbaka till mikrochip hittade jag 12F609 chip. Den har avbrott och två timers. Det har också 1K av flash och 64 byte ram. Nackdelen är priset; Digikey listar dessa marker på 76 cent i stor mängd. Nåja, Moores lag kommer att ta hand om det snart nog. På plussidan, kan 12F609 också beställas i DIP paket. På minussidan, jag var tvungen att köpa nästa nivå upp kompilator - som kinda brände min &.
Nu är det April och jag har lärt mig mycket om vad fungerar inte. Jag har spunnit en styrelse och bortkastade pengar på en kompilator som jag inte behöver. Fortfarande, testa hittills är uppmuntrande.
Med ny kompilator och 12F209 gick marker i DIP paket nivå Bänktest snabbt. Testningen bekräftade jag hade rätt chip. Dags att snurra en annan proto styrelse! Genom denna punkt, är jag bestämd.