Använda statistisk processtyrning för att testa Attiny85 inre klockan (4 / 7 steg)

Steg 4: Assembler program

Detta är koden för programmet assembler, hex filen nedan är det program som du kommer in på Attiny85:

;************************************
; Skrivet av: JRV31
; datum: 2-20-15
; version: 1.0
; filen sparas som: FreqTest.asm
; för AVR: attiny85
; klockfrekvens: 8MHz
;************************************
; Programmet funktion:
;
; Testa frekvens Attiny85 marker att se om de
; Håll den +/-10% som anges i databladet.
;
;---------------------------------------
.nolist
.include ". / tn85def.inc"
.lista

.def temp = r16
def counter1 = r17
def counter2 = r18
def counter3 = r19

.org 0x0000
rjmp Init

Init:
LDI temp, 0b00000010
ut DDRB, temp; Konfigurera PB1 som utdata.

viktigaste:
SBI PORTB, 1. Ställa in PB1 (aktivera LED i 2 klockcykler)
rcall fördröjning
CBI PORTB, 1. Rensa PB1 (stänga av lampan i 2 klockcykler)
rcall fördröjning
rjmp huvudsakliga

;===============================================
; Denna subrutin är en trippel kapslade dröjsmål loop.
; om counter1 = 2, counter2 = 30 och
; counter3 = 32 förseningen blink programmet
; kör på 504 Hz när chipet körs på 8 MHz.
;===============================================
fördröjning:
LDI counter1, 2
LDI counter2, 30
LDI counter3, 32
antal:
dec counter3
CPI counter3, 0
brne greve
LDI counter3, 32
dec counter2
CPI counter2, 0
brne greve
LDI counter2, 30
dec counter1
CPI counter1, 0
brne greve
ret

Och detta är monterade hex filen du kommer in på Attiny85s:

: 020000020000FC
: 1000000000C002E007BBC19A03D0C19801D0FBCF6A
: 1000100012E02EE130E23A953030E9F730E22A95ED
: 0E0020002030C9F72EE11A951030A9F7089587
: 00000001FF

Denna fil körs på 504 Hz när körs med en klockhastighet på 8 MHz på mitt test Attiny85 med en kontrollerad kristalloscillator. Varje chip kommer att köra på denna frekvens om kontrolleras av min kristall. Detta är den standard som används för att mäta hastigheten på markerna. Genom att köra detta på ett chip med en intern oscillator och mäta skillnaden vi kan mäta hastigheten på chipet.

Kopiera denna kod till en fil och kalla det FreqTest.hex.

Öppna Arduino IDE och ange vilken styrelsen till "Attiny85 (interna 8 MHz klocka)", och bränna boot loader för att ställa in säkringarna så chip går på 8MHz.

Nu kopiera filen FreqTest.hex till en Attiny85 med avrdude. Avrdude är programmet där Arduino IDE att ladda upp koden så att du redan har det installerat.

Använd det här kommandot att ladda upp programmet:

sudo avrdude -b 19200 - c usbtiny -p t85 - v -e - U flash:w:FreqTest.hex

Mäta frekvensen med din mätare. Det uppmätta värdet över 504 gånger 8,000,000 ger dig den verkliga hastigheten av chip när du kör på den interna klockan på 8 MHz.

Alla tillverkade delar har vissa tolerans. Kristallen jag använt har en tolerans på 30 PPM så finns det fortfarande vissa möjligheten till fel, men den är minimerad.

Se Steg
Relaterade Ämnen

Använda Windows kommandotolk för att testa Internetanslutning

IntroduktionDenna guide förklarar du hur till använda Fönstren befalla snabb till springa programmet "ping" att testa din internet-anslutning. Handboken är avsedd för grundläggande datoranvändare som önskar ett enkelt sätt att testa sin internet...

Använda en spis butan patron att fylla tändare

jag vet att ljus butan kan vara mycket dyrt medan kaminen butan är billigt. Detta är att visa dig hur man gör en permanent adapter.Vad du behöverButan patronBIC pennaVarmt lim eller epoxiTångVinklade skärEn lättare att fylla och testaSteg 1: rengörin...

Använda BitTorrent Sync för att synkronisera dina filer

Låt oss säga att du vill ha snabb fildelning mellan din kontorsdator och din personlig bärbar dator, men du har några frågor om cloud-sharing system. Kanske behöver din filstorlek kräver flexibilitet som ett långa abonnemang inte har råd, eller du är...

Tutorial: Hur att installera och använda MT-kort för att spela 3ds spel på N3DS/XL V4.5-4.1

för närvarande finns det fyra kort kan stödja 3ds spel, de är gateway 3ds, mt-kort, r4i gold 3ds deluxe edition och 3dslink. Bland dessa kort, var mt-kort speciellt slående för dess multi 3ds ROM stöds. Det var världens första kort att stödja mult 3d...

Använda din iPhone för att skanna koder och Läs Sensor fordonsdata

Med hjälp av en mycket billig (10$!) adapter som du kan använda din iPhone som ett diagnostiskt verktyg för att räkna ut ditt fordons check engine ljus, koder, eller avmarkera Visa sensorer (t.ex. temperatur, syre sensormätningar och fordonets hastig...

Använda RPi, Azure och Cortana att automatisera ditt hem!

IntroduktionDet finns ny teknik runt omkring oss och bara fler kommer varje dag. Vår micro styrenheter blir snabbare, är telefoner blir smartare och molnet blir starkare. Med all denna nya teknik alla frågar sig: Hur kan jag utnyttja det hela?Tja, ko...

Använda en borrmaskin för att göra kaffe i den gamla modet sätt

Jag älskar kaffe,... nej jag LIVE kaffe,... ingen I...well på något sätt du får idén, jag är ganska meningslöst utan min tidigt på morgonen varm, mörk, koffein-fyllda dryck. Kalla det ett beroende, jag kalla bara det en saknade elementet i mitt blod....

Använda V360 kameran för att skapa video data overlay (telemetri)

Videor med hastighet, GPS spår, varv etc, grafik overlay är informativ och helt enkelt cool!. Det hjälper verkligen video berätta en historia.Du behöver vanligtvis a:1. kamera att spela in en video,2. och en separat enhet för att spela in telemetrida...

Använda halm pellets för att hålla ogräs borta från din trädgård

HejI detta instructable jag förklara hur du kan få lätt ogräs av din trädgård. Vi använder halm pellets: små pellets tillverkad av halm som normalt finns i stall. Fördelar med halm pellets:* Tack vare regn på kornen sväller och bildar en kontinuerlig...

Använda QR-koder för att identifiera och spåra dina saker

vem flyttas hus vet vad en otäck sak som skulle kunna vara. Jag för närvarande outprocessing, vilket innebär massor av lådor och packning och andra typer av elände. En av mina problem är denna: Hur vet du om ett visst objekt är? Du har inte packat up...

Använda en Laser gravör att göra din egen tabell såg driva pinnar

En av de praktiska sakerna med Laser gravörens är att du kan få mycket trevlig, reproducerbara 90 graders nedskärningar i MDF.Jag drog fördel av detta faktum att göra vissa tryck pinnar för användning på SawStop bordet såg på TechShop San Jose - www....

Använda hörnet klämmor att få rät vinkel

om inte någon har sett ett hörn klämma, de kanske tror att det är svårt att göra en bokhylla eller ett litet bord.Om Dagobert Bumstead hade sett dem, skulle hans projekt har varit bra.Här är vad de är och hur de hjälper.Steg 1: Två storlek grupper; T...

Genom att använda en Arduino för att debitera en DS lite

Detta instructable är för laddning en ds lite med hjälp av en Arduino och två ledningar. Detta är också min första instructable, så det inte kanske så bra som möjligt. :)Anmärkning: Jag är inte ansvarig för eventuella skador på din ds, vänligen arbet...

Använda Galaxy Zoo för att skapa en skrivbordsbakgrund

Galaxy Zoo är ett projekt som använder crowdsourcing för att klassificera bilder av galaxer. Det är också ett bra sätt att hitta intressanta starscapes. Här är hur du skapar din egen unika starscape bakgrundsbild med Galaxy Zoo.Steg 1: Registrera dig...

Använda en dammsugare för att bygga din egen Skateboard

detta Instructable är en steg för steg beskrivning av processen med att bygga en skateboard däck, vilket inkluderar: att göra en böjande mögel, att bygga en påse press och mosa /cutting plywood i form av en skateboard. Dessa instruktioner finns för e...

Lär sig Counter ICs använda en Arduino

har du någonsin behövt räkna något? Visst kan vi alla behöva räkna förändring, räkna välsignelser och ibland räkna kort, men det är inte riktigt typ av räknar jag talar om. I detta Instructable, kommer att jag belysa hur räknar ICs fungerar, och visa...

Att välja och använda magnetiska kompasser

av tonytran2015 (Melbourne, Australien).En magnetisk kompass använder lokala magnetfältet skapas av roterande kärnan i jorden för att ge den roterande axeln av jorden. De två riktningarna är någorlunda nära.Den magnetiska kompassen är en sekundär rik...

Använda Lora sköld och RPi för att bygga en LoRaWAN gateway

Här använder vi Lora Shileld, MEGA2560 och Raspberry Pi för att bygga en enda kanal LoRaWAN gateway.LoRa Tekniken är en trådlös modulering för long-sortiment, låg effekt, låg-data-rate program. Att uppnå ett utbud av mer än 15 kilometer i en förorts...

Använda den MaKey MaKey för att göra DIY hjälpmedel för tillgång till dator

i detta Instructable kommer vi att titta på hur man använder en innovativ produkt som kallas den MaKey MaKey för att skapa anpassade, låg kostnad, DIY dator tillgång gränssnitt för användare med funktionshinder.Vad är en dator tillgång gränssnitt?En...