Mikrokontrollur AVR Atmel 8-bit bi 2/4/8K Bytes Flash programmabbli fis-sistema
Karatteristiċi
- Prestazzjoni Għolja, Enerġija Baxxa AVR® 8-Bit Microcontroller
- Arkitettura Avvanzata RISC
- 120 Istruzzjoni qawwija – Il-biċċa l-kbira tal-Eżekuzzjoni taċ-Ċiklu tal-Arloġġ Uniku
- 32 x 8 Reġistri ta' Ħidma għal Għan Ġenerali
- Operazzjoni Kompletament Statika
- Memorji tal-Programm u tad-Data mhux volatili
- 2/4/8K Bytes tal-Flash tal-Memorja tal-Programm Programmabbli fis-Sistema
- Resistenza: 10,000 Ikteb / Ħassar Ċikli
- 128/256/512 Bytes EEPROM programmabbli fis-sistema
- Resistenza: 100,000 Ikteb / Ħassar Ċikli
- 128/256/512 Bytes SRAM Intern
- Programming Lock għal Self-Programming Flash Program u EEPROM Data Security
Karatteristiċi Periferali
- Timer/Counter ta '8-bit bi Prescaler u Żewġ Kanali PWM
- Timer/Kontro ta 'Veloċità Għolja ta' 8-bit bi Prescaler Separat
- 2 Outputs PWM ta 'Frekwenza Għolja bi Output Separat Qabbel Reġistri
- Ġeneratur tal-Ħin Mejjet programmabbli
- USI – Universali Serial Interface b'Detector tal-Kundizzjoni tal-Ibda
- 10-bit ADC
4 Kanali Uniċi Ended
2 Pari ta' kanali ADC differenzjali b'gwadann programmabbli (1x, 20x)
Kejl tat-Temperatura
Watchdog Timer programmabbli b'Oxxillatur Separat fuq iċ-ċippa
Komparatur Analoġiku fuq iċ-ċippa
Karatteristiċi Speċjali tal-Mikrokontrollur
debugWIRE On-chip Debug System
Fis-Sistema Programmabbli permezz tal-Port SPI
Sorsi ta' Interruzzjoni Esterni u Interni
Enerġija Baxxa Idle, Tnaqqis tal-Ħsejjes ADC, u Modi ta 'Power-down
Ċirkwit tar-Reset Power-on imtejjeb
Ċirkwit ta' Sejbien ta' Kannella-out programmabbli
Oxxillatur Ikkalibrat Intern
I/O u Pakketti
Sitt Linji I/O programmabbli
PDIP 8-pin, 8-pin SOIC, 20-pad QFN/MLF, u 8-pin TSSOP (ATtiny45/V biss)
Vol Operattivtage
– 1.8 – 5.5V għal ATtiny25V/45V/85V
– 2.7 – 5.5V għal ATtiny25/45/85
Grad tal-Veloċità
– ATtiny25V/45V/85V: 0 – 4 MHz @ 1.8 – 5.5V, 0 – 10 MHz @ 2.7 – 5.5V
– ATtiny25/45/85: 0 – 10 MHz @ 2.7 – 5.5V, 0 – 20 MHz @ 4.5 – 5.5V
Medda ta 'Temperatura Industrijali
Konsum ta 'Enerġija Baxxa
Modalità Attiva:
1 MHz, 1.8V: 300 µA
Modalità ta' qtugħ ta' enerġija:
Konfigurazzjonijiet tal-Pinnijiet
Pinout ATtiny25/45/85
Deskrizzjonijiet tal-Pin
VCC: Provvista voltage.
GND: Art.
Port B (PB5:PB0): Port B huwa port ta 'I/O bidirezzjonali ta' 6 bit b'resistors interni pull-up (magħżula għal kull bit). Il-buffers tal-ħruġ tal-Port B għandhom karatteristiċi ta 'sewqan simetriku kemm b'kapaċità għolja ta' sink kif ukoll ta 'sors. Bħala inputs, il-pinnijiet tal-Port B li jinġibdu baxxi esternament se jġibu l-kurrent jekk ir-resistors pull-up jiġu attivati. Il-pinnijiet tal-Port B huma tri-ddikjarati meta kundizzjoni ta' reset issir attiva, anke jekk l-arloġġ ma jkunx qed jaħdem.
Port B jaqdi wkoll il-funzjonijiet ta 'diversi karatteristiċi speċjali tal-ATtiny25/45/85 kif elenkat
Fuq ATtiny25, il-portijiet I/O programmabbli PB3 u PB4 (pinnijiet 2 u 3) huma skambjati fil-Modalità ta 'Kompatibbiltà ATtiny15 għall-appoġġ tal-kompatibilità b'lura ma' ATtiny15.
RESET: Irrisettja l-input. Livell baxx fuq dan il-pin għal aktar fit-tul minimu tal-polz jiġġenera reset, anki jekk l-arloġġ ma jkunx qed jaħdem u sakemm il-pin reset ma jkunx ġie diżattivat. It-tul minimu tal-polz huwa mogħti fi Tabella 21-4 f’paġna 165. Impuls iqsar mhumiex garantiti li jiġġeneraw reset.
Il-pin reset jista 'jintuża wkoll bħala pin I/O (dgħajjef).
Fuqview
L-ATtiny25/45/85 huwa mikrokontrollur CMOS ta '8-bit ta' qawwa baxxa bbażat fuq l-arkitettura RISC msaħħa AVR. Billi tesegwixxi struzzjonijiet qawwija f'ċiklu ta 'arloġġ wieħed, l-ATtiny25/45/85 jikseb throughputs li joqorbu 1 MIPS għal kull MHz li jippermettu lid-disinjatur tas-sistema jottimizza l-konsum tal-enerġija versus il-veloċità tal-ipproċessar.
Dijagramma tal-Blokk
Il-qalba tal-AVR tgħaqqad sett ta 'struzzjoni rikka ma' 32 reġistru tax-xogħol għal skopijiet ġenerali. It-32 reġistru kollha huma konnessi direttament mal-Unità Loġika Aritmetika (ALU), li tippermetti li jiġu aċċessati żewġ reġistri indipendenti fi istruzzjoni waħda esegwita f'ċiklu wieħed tal-arloġġ. L-arkitettura li tirriżulta hija aktar effiċjenti tal-kodiċi filwaqt li tikseb throughputs sa għaxar darbiet aktar mgħaġġla minn mikrokontrolluri CISC konvenzjonali.
L-ATtiny25/45/85 jipprovdi l-karatteristiċi li ġejjin: 2/4/8K bytes ta' Flash programmabbli fis-sistema, 128/256/512 bytes EEPROM, 128/256/256 bytes SRAM, 6 linji I/O għal skopijiet ġenerali, 32 ġenerali reġistri ta' ħidma ta' l-iskop, Timer/Counter wieħed ta' 8-bit b'modi ta' tqabbil, Timer/Counter ta' veloċità għolja ta' 8-bit, Interface Serial Universali, Interruzzjonijiet Interni u Esterni, ADC ta' 4 kanali, 10-bit, Timer ta' Watchdog programmabbli b'intern Oxxillatur, u tliet modi ta 'ffrankar ta' enerġija magħżula minn softwer. Il-modalità Idle twaqqaf is-CPU filwaqt li tippermetti lis-sistema SRAM, Timer/Counter, ADC, Analog Comparator, u Interrupt tkompli taħdem. Il-modalità ta' qtugħ ta' enerġija jiffranka l-kontenut tar-reġistru, billi jiskonnettja l-funzjonijiet kollha taċ-ċippa sal-Interrupt jew Reset tal-Hardware li jmiss. Il-modalità tat-Tnaqqis tal-Ħsejjes ADC twaqqaf is-CPU u l-moduli I/O kollha ħlief l-ADC, biex jimminimizza l-istorbju tal-qlib waqt il-konverżjonijiet tal-ADC.
L-apparat huwa manifatturat bl-użu tat-teknoloġija ta 'memorja mhux volatili ta' densità għolja ta 'Atmel. Il-Flash ISP On-chip jippermetti li l-memorja tal-Programm tiġi pprogrammata mill-ġdid fis-Sistema permezz ta 'interface serjali SPI, minn programmatur konvenzjonali tal-memorja mhux volatili jew permezz ta' kodiċi tal-boot On-chip li jaħdem fuq il-qalba AVR.
L-ATtiny25/45/85 AVR huwa appoġġjat b'ġabra sħiħa ta' programmi u għodod għall-iżvilupp tas-sistema inklużi: C Compilers, Macro Assemblers, Program Debugger/Simulators u kits ta' Evalwazzjoni.
Dwar ir-Riżorsi
Sett komprensiv ta' għodod ta' żvilupp, noti ta' applikazzjoni u datasheets huma disponibbli biex jitniżżlu http://www.atmel.com/avr.
Kodiċi Eżamples
Din id-dokumentazzjoni fiha kodiċi sempliċi examples li juru fil-qosor kif tuża diversi partijiet tal-apparat. Dawn il-kodiċi examples jassumu li l-header parti speċifika file hija inkluża qabel il-kumpilazzjoni. Kun konxju li mhux il-bejjiegħa kollha tal-kompilaturi C jinkludu definizzjonijiet tal-bit fl-header files u l-immaniġġjar tal-interruzzjoni f'C huwa dipendenti fuq il-kompilatur. Jekk jogħġbok ikkonferma mad-dokumentazzjoni tal-kompilatur C għal aktar dettalji.
Għar-Reġistri I/O li jinsabu fil-mappa I/O estiża, l-istruzzjonijiet “IN”, “OUT”, “SBIS”, “SBIC”, “CBI”, u “SBI” għandhom jiġu sostitwiti bi struzzjonijiet li jippermettu aċċess għal I estiż. /O. Tipikament, dan ifisser "LDS" u "STS" flimkien ma' "SBRS", "SBRC", "SBR", u "CBR". Innota li mhux l-apparati AVR kollha jinkludu mappa I/O estiża.
Sensing tat-Touch capacitiv
Il-Librerija Atmel QTouch tipprovdi soluzzjoni sempliċi biex tintuża għal interfaces sensittivi għall-mess fuq mikrokontrolluri Atmel AVR. Il-Librerija QTouch tinkludi appoġġ għall-metodi ta 'akkwist QTouch® u QMatrix®.
Sensing tal-mess huwa faċilment miżjud ma 'kwalunkwe applikazzjoni billi tgħaqqad il-Librerija QTouch u tuża l-Interface tal-Programmazzjoni tal-Applikazzjoni (API) tal-librerija biex tiddefinixxi l-kanali tat-touch u s-sensuri. L-applikazzjoni mbagħad titlob lill-API biex tirkupra l-informazzjoni tal-kanal u tiddetermina l-istat tas-sensor tat-touch.
Il-QTouch Library hija b'xejn u tista' titniżżel mill-Atmel websit. Għal aktar informazzjoni u dettalji tal-implimentazzjoni, irreferi għall-Gwida tal-Utent tal-Librerija QTouch – disponibbli wkoll mill-Atmel websit.
Żamma tad-Data
Ir-riżultati tal-Kwalifiki tal-Affidabbiltà juru li r-rata ta 'falliment taż-żamma tad-dejta proġettata hija ħafna inqas minn 1 PPM fuq 20 sena f'85°C jew 100 sena f'25°C.
AVR CPU Core
Introduzzjoni
Din it-taqsima tiddiskuti l-arkitettura ewlenija tal-AVR b'mod ġenerali. Il-funzjoni ewlenija tal-qalba tas-CPU hija li tiżgura l-eżekuzzjoni korretta tal-programm. Is-CPU għandu għalhekk ikun kapaċi jaċċessa memorji, jagħmel kalkoli, jikkontrolla l-periferali, u jimmaniġġja l-interruzzjonijiet.
Arkitettoniku Overview
Sabiex timmassimizza l-prestazzjoni u l-paralleliżmu, l-AVR juża arkitettura ta 'Harvard - b'memorji u karozzi tal-linja separati għall-programm u d-dejta. L-istruzzjonijiet fil-memorja tal-Programm huma esegwiti b'pipelining ta' livell wieħed. Waqt li tkun qed tiġi esegwita struzzjoni waħda, l-istruzzjoni li jmiss tinġabar minn qabel mill-memorja tal-Programm. Dan il-kunċett jippermetti li l-istruzzjonijiet jiġu esegwiti f'kull ċiklu tal-arloġġ. Il-memorja tal-Programm hija memorja Flash Riprogrammabbli fis-Sistema.
Ir-Reġistru ta' aċċess mgħaġġel File fih 32 x 8-bit reġistri ta 'ħidma għal skopijiet ġenerali b'ħin ta' aċċess għal ċiklu ta 'arloġġ wieħed. Dan jippermetti operazzjoni ta' Unità Loġika Aritmetika (ALU) b'ċiklu wieħed. F'operazzjoni ALU tipika, żewġ operandi joħorġu mir-Reġistru File, l-operazzjoni titwettaq, u r-riżultat jinħażen lura fir-Reġistru File– f'ċiklu ta' arloġġ wieħed.
Sitta mit-32 reġistru jistgħu jintużaw bħala tliet indikaturi ta’ reġistru ta’ indirizzi indiretti ta’ 16-il bit għall-indirizzar tal-Ispazju tad-Data – li jippermettu kalkoli effiċjenti tal-indirizzi. Wieħed minn dawn l-indikazzjonijiet ta 'l-indirizz jista' jintuża wkoll bħala punter ta 'l-indirizz għat-tiftix ta' tabelli fil-memorja tal-Programm Flash. Dawn ir-reġistri tal-funzjoni miżjuda huma r-reġistru X-, Y-, u Z-16-bit, deskritti aktar tard f'din it-taqsima.
L-ALU jappoġġja operazzjonijiet aritmetiċi u loġiċi bejn reġistri jew bejn kostanti u reġistru. Operazzjonijiet ta' reġistru uniku jistgħu wkoll jiġu eżegwiti fl-ALU. Wara operazzjoni aritmetika, ir-Reġistru tal-Istatus jiġi aġġornat biex jirrifletti informazzjoni dwar ir-riżultat tal-operazzjoni.
Il-fluss tal-programm huwa pprovdut minn struzzjonijiet ta 'qabża u sejħa kundizzjonali u inkondizzjonali, kapaċi jindirizzaw direttament l-ispazju tal-indirizz kollu. Ħafna mill-istruzzjonijiet AVR għandhom format ta 'kelma waħda ta' 16-bit, iżda hemm ukoll struzzjonijiet ta '32 bit.
Waqt interruzzjonijiet u sejħiet subrutina, l-indirizz tar-ritorn Program Counter (PC) huwa maħżun fuq il-Munzell. Il-Munzell huwa allokat b'mod effettiv fid-dejta ġenerali SRAM, u konsegwentement id-daqs tal-Munzell huwa limitat biss mid-daqs totali tal-SRAM u l-użu tal-SRAM. Il-programmi kollha tal-utent għandhom jinizjalizzaw l-SP fir-rutina Irrisettja (qabel jiġu eżegwiti subrutini jew interruzzjonijiet). Is-Stack Pointer (SP) huwa aċċessibbli għall-qari/kitba fl-ispazju I/O. Id-data SRAM tista 'tkun aċċessata faċilment permezz tal-ħames modi differenti ta' indirizzar appoġġjati fl-arkitettura AVR.
L-ispazji tal-memorja fl-arkitettura AVR huma kollha mapep tal-memorja lineari u regolari.
Modulu ta' interruzzjoni flessibbli għandu r-reġistri ta' kontroll tiegħu fl-ispazju I/O b'bit ta' Attivazzjoni ta' Interruzzjoni Globali addizzjonali fir-Reġistru ta' l-Istatus. L-interruzzjonijiet kollha għandhom Vettur ta' Interruzzjoni separat fit-tabella tal-Vettur ta' Interruzzjoni. L-interruzzjonijiet għandhom prijorità skont il-pożizzjoni tagħhom tal-Interrupt Vector. Aktar ma jkun baxx l-indirizz tal-Vector Interrupt, iktar tkun għolja l-prijorità.
L-ispazju tal-memorja I/O fih 64 indirizz għal funzjonijiet periferali tas-CPU bħala Reġistri tal-Kontroll, SPI, u funzjonijiet I/O oħra. Il-memorja I/O tista' tiġi aċċessata direttament, jew bħala l-postijiet tal-Ispazju tad-Data wara dawk tar-Reġistru File, 0x20 – 0x5F.
ALU – Unità Loġika Aritmetika
L-AVR ALU ta 'prestazzjoni għolja topera b'konnessjoni diretta mat-32 reġistru tax-xogħol għal skopijiet ġenerali kollha. F'ċiklu ta' arloġġ wieħed, jiġu esegwiti operazzjonijiet aritmetiċi bejn reġistri ta' skop ġenerali jew bejn reġistru u immedjat. L-operazzjonijiet ALU huma maqsuma fi tliet kategoriji ewlenin - funzjonijiet aritmetiċi, loġiċi, u bit-. Xi implimentazzjonijiet tal-arkitettura jipprovdu wkoll multiplikatur qawwi li jappoġġja kemm il-multiplikazzjoni ffirmata/mhux iffirmata kif ukoll il-format frazzjonali. Ara t-taqsima “Sett ta’ Istruzzjonijiet” għal deskrizzjoni dettaljata.
Reġistru tal-Istatus
Ir-Reġistru tal-Istatus fih informazzjoni dwar ir-riżultat tal-istruzzjoni aritmetika l-aktar reċentement esegwita. Din l-informazzjoni tista' tintuża biex tbiddel il-fluss tal-programm sabiex jitwettqu operazzjonijiet kondizzjonali. Innota li r-Reġistru tal-Istatus huwa aġġornat wara l-operazzjonijiet kollha tal-ALU, kif speċifikat fir-Referenza tas-Sett tal-Istruzzjonijiet. Dan f'ħafna każijiet ineħħi l-ħtieġa għall-użu tal-istruzzjonijiet dedikati għall-paragun, li jirriżulta f'kodiċi aktar mgħaġġel u kompatt.
Ir-Reġistru ta' l-Istatus ma jinħażenx awtomatikament meta tidħol f'rutina ta' interruzzjoni u jiġi restawrat meta jerġa' lura minn interruzzjoni. Dan għandu jiġi mmaniġġjat minn softwer.
SREG – Reġistru tal-Istatus AVR
Ir-Reġistru tal-Istatus AVR – SREG – huwa definit bħala:
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x3F | I | T | H | S | V | N | Z | C | SREG |
Aqra/Ikteb | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit 7 – I: Jippermettu Interruzzjoni Globali
Il-bit Global Interrupt Enable għandu jkun issettjat biex l-interruzzjonijiet ikunu attivati. Il-kontroll tal-abilitazzjoni tal-interruzzjoni individwali mbagħad jitwettaq f'reġistri ta' kontroll separati. Jekk ir-Reġistru tal-Enable Interrupt Globali jitneħħa, l-ebda waħda mill-interruzzjonijiet ma tkun attivata indipendentement mis-settings individwali tal-abilitazzjoni tal-interruzzjoni. L-I-bit jitneħħa mill-ħardwer wara li tkun seħħet interruzzjoni, u jiġi ssettjat mill-istruzzjoni RETI biex tippermetti interruzzjonijiet sussegwenti. L-I-bit jista 'wkoll jiġi ssettjat u kklerjat mill-applikazzjoni bl-istruzzjonijiet SEI u CLI, kif deskritt fir-referenza tas-sett ta' struzzjonijiet.
Bit 6 – T: Ħażna tal-Kopja Bit
L-istruzzjonijiet Bit Copy BLD (Bit LoaD) u BST (Bit Store) jużaw it-T-bit bħala sors jew destinazzjoni għall-bit operat. Daqsxejn minn reġistru fir-Reġistru File jista 'jiġi kkupjat f'T bl-istruzzjoni BST, u daqsxejn f'T jista' jiġi kkupjat f'bit f'reġistru fir-Reġistru File mill-istruzzjoni BLD.
Bit 5 – H: Half Carry Flag
Il-Bandiera ta' Half Carry H tindika Half Carry f'xi operazzjonijiet aritmetiċi. Half Carry huwa utli fl-aritmetika BCD. Ara d-“Deskrizzjoni tas-Sett ta’ Istruzzjonijiet” għal informazzjoni dettaljata.
Bit 4 – S: Sinjal Bit, S = N ⊕ V
L-S-bit huwa dejjem esklussiv jew bejn il-Bandiera Negattiva N u l-Bandiera ta' Overflow tal-Komplement tat-Twejn V. Ara d-“Deskrizzjoni tas-Sett ta' Istruzzjonijiet” għal informazzjoni dettaljata.
Bit 3 – V: Bandiera ta' Overflow tal-Komplement ta' Żewġ
It-Twejn's Complement Overflow Flag V jappoġġja l-aritmetika tal-kompliment tat-tnejn. Ara d-“Deskrizzjoni tas-Sett ta’ Istruzzjonijiet” għal informazzjoni dettaljata.
Bit 2 – N: Bandiera Negattiva
Il-Bandiera Negattiva N tindika riżultat negattiv f'operazzjoni aritmetika jew loġika. Ara d-“Deskrizzjoni tas-Sett ta’ Istruzzjonijiet” għal informazzjoni dettaljata.
Bit 1 – Z: Bandiera Żero
Il-Bandiera Żero Z tindika riżultat żero f'operazzjoni aritmetika jew loġika. Ara d-“Deskrizzjoni tas-Sett ta’ Istruzzjonijiet” għal informazzjoni dettaljata.
Bit 0 – C: Ġorru Bandiera
Il-Carry Flag C tindika ġarr f'operazzjoni aritmetika jew loġika. Ara d-“Deskrizzjoni tas-Sett ta’ Istruzzjonijiet” għal informazzjoni dettaljata.
Reġistru ta' Għan Ġenerali File
Ir-Reġistru File hija ottimizzata għas-sett ta' struzzjonijiet AVR Enhanced RISC. Sabiex tinkiseb il-prestazzjoni u l-flessibbiltà meħtieġa, l-iskemi ta’ input/output li ġejjin huma appoġġjati mir-Reġistru File:
Operand wieħed ta' output ta' 8-bit u input wieħed ta' riżultat ta' 8-bit
Żewġ operandi ta 'output ta' 8-bit u input wieħed tar-riżultat ta '8-bit
Żewġ operandi ta 'output ta' 8-bit u input wieħed tar-riżultat ta '16-bit
Operand wieħed ta' output ta' 16-bit u input wieħed ta' riżultat ta' 16-bit
Figura 4-2 turi l-istruttura tat-32 reġistru tax-xogħol għal skopijiet ġenerali fis-CPU.
Kif muri fi Figura 4-2, kull reġistru huwa wkoll assenjat indirizz tal-memorja tad-Data, li jimmappjahom direttament fl-ewwel 32 post tal-Ispazju tad-Data tal-utent. Għalkemm mhux qed tiġi implimentata fiżikament bħala postijiet SRAM, din l-organizzazzjoni tal-memorja tipprovdi flessibilità kbira fl-aċċess tar-reġistri, peress li r-reġistri tal-punter X-, Y- u Z jistgħu jiġu ssettjati biex jindikaw kwalunkwe reġistru fil- file.Ħafna mill-istruzzjonijiet li joperaw fuq ir-Reġistru File għandhom aċċess dirett għar-reġistri kollha, u ħafna minnhom huma struzzjonijiet ta’ ċiklu wieħed.
Ir-reġistru X, reġistru Y, u reġistru Z
Ir-reġistri R26..R31 għandhom xi funzjonijiet miżjuda mal-użu għall-iskop ġenerali tagħhom. Dawn ir-reġistri huma indikaturi ta' indirizzi ta' 16-il bit għall-indirizzar indirett tal-ispazju tad-dejta. It-tliet reġistri tal-indirizzi indiretti X, Y, u Z huma definiti kif deskritt fi Figura 4-3.
Fil-modi differenti ta' indirizzar dawn ir-reġistri ta' indirizzi għandhom funzjonijiet bħala spostament fiss, inkrement awtomatiku, u tnaqqis awtomatiku (ara r-referenza tas-sett ta' struzzjonijiet għad-dettalji).
Munzell Pointer
Il-Munzell jintuża prinċipalment għall-ħażna tad-dejta temporanja, għall-ħażna ta 'varjabbli lokali u għall-ħażna ta' indirizzi ta 'ritorn wara interruzzjonijiet u sejħiet subrutine. Ir-Reġistru tal-Powerer tal-Munzell dejjem jindika l-quċċata tal-Munzell. Innota li l-Munzell huwa implimentat hekk kif qed jikber minn postijiet ta 'memorja ogħla għal postijiet ta' memorja aktar baxxi. Dan jimplika li kmand Stack PUSH inaqqas l-Stack Pointer.
Is-Stack Pointer jindika ż-żona tad-data SRAM Stack fejn jinsabu s-Subroutine u l-Interrupt Stacks. Dan l-ispazju Stack fl-SRAM tad-dejta għandu jiġi definit mill-programm qabel ma jiġu esegwiti kwalunkwe sejħiet subrutina jew jiġu attivati l-interruzzjonijiet. Is-Stack Pointer għandu jiġi ssettjat biex jippunta 'l fuq minn 0x60. Il-Punter tal-Munzell jitnaqqas b'wieħed meta d-dejta tiġi mbuttata fuq il-Munzell bl-istruzzjoni PUSH, u jitnaqqas bi tnejn meta l-indirizz tar-ritorn jiġi mbuttat fuq il-Munzell b'sejħa jew interruzzjoni subrutina. Il-Punter tal-Munzell huwa inkrementat b'wieħed meta d-dejta titpoġġa mill-Munzell bl-istruzzjoni POP, u hija inkrementata bi tnejn meta d-dejta tinqala' mill-Munzell b'ritorn mis-subrutina RET jew mir-ritorn mill-interruzzjoni RETI.
L-AVR Stack Pointer huwa implimentat bħala żewġ reġistri 8-bit fl-ispazju I/O. In-numru ta 'bits attwalment użati huwa dipendenti fuq l-implimentazzjoni. Innota li l-ispazju tad-dejta f'xi implimentazzjonijiet tal-arkitettura AVR huwa tant żgħir li SPL biss huwa meħtieġ. F'dan il-każ, ir-Reġistru SPH mhux se jkun preżenti.
SPH u SPL — Stack Pointer Register
Bit | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | |
0x3E | SP15 | SP14 | SP13 | SP12 | SP11 | SP10 | SP9 | SP8 | SPH |
0x3D | SP7 | SP6 | SP5 | SP4 | SP3 | SP2 | SP1 | SP0 | SPL |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||
Aqra/Ikteb | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Aqra/Ikteb | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND | |
Valur Inizjali | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND | RAMEND |
Żmien ta' Eżekuzzjoni ta' Istruzzjoni
Din it-taqsima tiddeskrivi l-kunċetti tal-ħin tal-aċċess ġenerali għall-eżekuzzjoni tal-istruzzjoni. Is-CPU tal-AVR huwa mmexxi mill-clock CPU clkCPU, iġġenerat direttament mis-sors tal-arloġġ magħżul għaċ-ċippa. Ma tintuża l-ebda diviżjoni interna tal-arloġġ.
Figura 4-4 turi l-istruzzjoni parallel fetches u l-eżekuzzjonijiet tal-istruzzjoni ppermettiet mill-arkitettura ta 'Harvard u r-Reġistru ta' aċċess veloċi File kunċett. Dan huwa l-kunċett bażiku ta 'pipelining biex tikseb sa 1 MIPS għal kull MHz bir-riżultati uniċi korrispondenti għal funzjonijiet għal kull spiża, funzjonijiet għal kull arloġġi, u funzjonijiet għal kull unità ta' enerġija.
Figura 4-5. Operazzjoni ALU ta' Ċiklu Uniku
Irrisettja u Tinterrompi l-Immaniġġjar
L-AVR jipprovdi diversi sorsi ta' interruzzjoni differenti. Dawn l-interruzzjonijiet u r-Reset Vector separat kull wieħed għandu Program Vector separat fl-ispazju tal-memorja tal-Programm. L-interruzzjonijiet kollha huma assenjati bits ta' attivazzjoni individwali li jridu jinkitbu loġika waħda flimkien mal-bit ta' Attivazzjoni tal-Interruzzjoni Globali fir-Reġistru tal-Istatus sabiex tkun tista' ssir l-interruzzjoni.
L-indirizzi l-aktar baxxi fl-ispazju tal-memorja tal-Programm huma definiti b'mod awtomatiku bħala l-Vetturi ta' Reset u Interrupt. Il-lista kompluta ta' vettori tidher fi “Interruzzjonijiet” f’paġna 48. Il-lista tiddetermina wkoll il-livelli ta' prijorità tal-interruzzjonijiet differenti. Aktar ma jkun baxx l-indirizz, iktar ikun għoli l-livell ta’ prijorità. RESET għandu l-ogħla prijorità, u li jmiss huwa INT0 – it-Talba ta’ Interruzzjoni Esterna 0.
Meta sseħħ interruzzjoni, l-I-bit Globali Attiva l-Interruzzjoni jitneħħa u l-interruzzjonijiet kollha jiġu diżattivati. Is-softwer tal-utent jista' jikteb loġika waħda fuq l-I-bit biex jippermetti interruzzjonijiet nested. L-interruzzjonijiet kollha attivati jistgħu mbagħad jinterrompu r-rutina tal-interruzzjoni attwali. L-I-bit jiġi ssettjat awtomatikament meta tiġi esegwita struzzjoni Ritorn minn Interruzzjoni – RETI.
Bażikament hemm żewġ tipi ta’ interruzzjonijiet. L-ewwel tip huwa attivat minn avveniment li jistabbilixxi l-Bandiera ta' Interruzzjoni. Għal dawn l-interruzzjonijiet, il-Programm Counter jiġi mgħoddi għall-Vector Interruzzjoni attwali sabiex tesegwixxi r-rutina tal-immaniġġjar tal-interruzzjonijiet, u l-ħardwer ineħħi l-Bandiera tal-Interruzzjoni korrispondenti. Il-Bnadar ta' Interruzzjoni jistgħu wkoll jiġu kklerjati billi tikteb waħda loġika fil-pożizzjoni(jiet) tal-bit tal-bandiera li trid tiġi kklerjata. Jekk isseħħ kondizzjoni ta 'interruzzjoni waqt li l-bit ta' attivazzjoni ta 'interruzzjoni korrispondenti jiġi kklerjat, il-Bandiera ta' Interruzzjoni tiġi ssettjata u mfakkar sakemm l-interruzzjoni tkun attivata, jew il-bandiera tiġi kklerjata minn softwer. Bl-istess mod, jekk kundizzjoni ta' interruzzjoni waħda jew aktar iseħħu waqt li l-bit ta' Interruzzjoni Globali Jippermettiet jiġi kklerjat, il-Bandiera(i) ta' Interruzzjoni korrispondenti jiġu ssettjati u mfakkra sakemm jiġi ssettjat il-bit ta' Interruzzjoni Globali Jippermettiet, u mbagħad jiġu eżegwiti b'ordni ta' prijorità.
It-tieni tip ta 'interruzzjonijiet se jibdew sakemm il-kundizzjoni ta' interruzzjoni tkun preżenti. Dawn l-interruzzjonijiet mhux bilfors ikollhom Bnadar ta' Interruzzjoni. Jekk il-kundizzjoni tal-interruzzjoni tisparixxi qabel ma l-interruzzjoni tkun attivata, l-interruzzjoni ma tiġix attivata.
Meta l-AVR joħroġ minn interruzzjoni, dejjem se jirritorna għall-programm prinċipali u jesegwixxi istruzzjoni oħra qabel ma tiġi moqdija kwalunkwe interruzzjoni pendenti.
Innota li r-Reġistru ta' l-Istatus ma jiġix maħżun awtomatikament meta tidħol f'rutina ta' interruzzjoni, u lanqas restawrata meta terġa' lura minn rutina ta' interruzzjoni. Dan għandu jiġi mmaniġġjat minn softwer.
Meta tuża l-istruzzjoni CLI biex tiddiżattiva l-interruzzjonijiet, l-interruzzjonijiet jiġu diżattivati immedjatament. L-ebda interruzzjoni ma tiġi esegwita wara l-istruzzjoni CLI, anki jekk isseħħ fl-istess ħin mal-istruzzjoni CLI. L-eżample turi kif dan jista 'jintuża biex jiġu evitati interruzzjonijiet matul is-sekwenza tal-kitba EEPROM bil-ħin.
Kodiċi tal-Assemblea Eżample |
f'r16, SREG; jaħżen il-valur SREG
cli ; tiddiżattiva interruzzjonijiet waqt sekwenza bil-ħin sbi EECR, EEMPE ; tibda tikteb EEPROM sbi EECR, EEPE barra SREG, r16; restawra l-valur SREG (I-bit) |
C Kodiċi Eżample |
char cSREG;
cSREG = SREG; /* jaħżen il-valur SREG */ /* tiddiżattiva l-interruzzjonijiet matul is-sekwenza bil-ħin */ _CLI(); EECR |= (1< EECR |= (1< SREG = cSREG; /* irrestawra l-valur SREG (I-bit) */ |
Meta tuża l-istruzzjoni SEI biex tippermetti l-interruzzjonijiet, l-istruzzjoni wara SEI tiġi eżegwita qabel kwalunkwe interruzzjoni pendenti, kif muri f'dan l-ex.ample.
Kodiċi tal-Assemblea Eżample |
sei ; issettja Global Interrupt Enable
irqad; jidħol irqad, stennija għall-interruzzjoni ; nota: se tidħol irqad qabel kwalunkwe pendenti ; interruzzjoni(jiet) |
C Kodiċi Eżample |
_SEI(); /* issettja Global Interrupt Enable */
_RIQD (); /* daħħal irqad, tistenna l-interruzzjoni */ /* nota: se tidħol sleep qabel kwalunkwe interruzzjoni(jiet) pendenti */ |
Ħin ta' Rispons ta' Interruzzjoni
Ir-rispons tal-eżekuzzjoni tal-interruzzjoni għall-interruzzjonijiet kollha tal-AVR attivati huwa minimu ta' erba' ċikli tal-arloġġ. Wara erba' ċikli ta' l-arloġġ jiġi esegwit l-indirizz tal-Programm Vector għar-rutina attwali ta' l-immaniġġjar ta' l-interruzzjonijiet. Matul dan il-perjodu ta’ erba’ ċiklu ta’ arloġġi, il-Programm Counter jiġi mbuttat fuq il-Munzell. Il-vector huwa normalment qabża għar-rutina tal-interruzzjoni, u din il-qabża tieħu tliet ċikli tal-arloġġ. Jekk isseħħ interruzzjoni waqt l-eżekuzzjoni ta' struzzjoni multi-ċiklu, din l-istruzzjoni titlesta qabel ma tiġi moqdija l-interruzzjoni. Jekk isseħħ interruzzjoni meta l-MCU ikun fil-modalità sleep, il-ħin tar-rispons tal-eżekuzzjoni tal-interruzzjoni jiżdied b'erba' ċikli tal-arloġġ. Din iż-żieda tiġi flimkien mal-ħin tal-bidu mill-modalità ta 'rqad magħżula.
Ritorn minn rutina ta' mmaniġġjar ta' interruzzjoni jieħu erba' ċikli ta' arloġġ. Matul dawn l-erba 'ċikli tal-arloġġ, il-Programm Counter (żewġ bytes) jitpoġġa lura mill-Munzell, il-Power tal-Munzell jiżdied bi tnejn, u l-I-bit f'SREG jiġi ssettjat.
AVR Memorji
Din it-taqsima tiddeskrivi l-memorji differenti fl-ATtiny25/45/85. L-arkitettura AVR għandha żewġ spazji ewlenin tal-memorja, il-memorja tad-Data u l-ispazju tal-memorja tal-Programm. Barra minn hekk, l-ATtiny25/45/85 fih Memorja EEPROM għall-ħażna tad-dejta. It-tliet spazji tal-memorja huma lineari u regolari.
Memorja tal-Programm Flash programmabbli mill-ġdid fis-Sistema
L-ATtiny25/45/85 fih 2/4/8K bytes On-chip In-System Reprogrammable Flash Memorja għall-ħażna tal-programm. Peress li l-istruzzjonijiet AVR kollha huma wiesgħa 16 jew 32 bit, il-Flash huwa organizzat bħala 1024/2048/4096 x 16.
Il-memorja Flash għandha reżistenza ta 'mill-inqas 10,000 ċiklu ta' kitba/tħassir. Il-Programm Counter (PC) ATtiny25/45/85 huwa wiesa '10/11/12 bits, u b'hekk jindirizza l-postijiet tal-memorja tal-Programm 1024/2048/4096. “Programm tal-Memorja- ming” f’paġna 147 fih deskrizzjoni dettaljata dwar it-tniżżil tas-serje tad-dejta Flash bl-użu tal-labar SPI.
Tabelli kostanti jistgħu jiġu allokati fl-ispazju kollu tal-indirizz tal-memorja tal-Programm (ara d-deskrizzjoni tal-istruzzjoni tal-memorja tal-programm LPM – Tagħbija).
Figura 5-1. Mappa tal-Memorja tal-Programm
Memorja tad-Data SRAM
Figura 5-2 juri kif il-Memorja SRAM ATtiny25/45/85 hija organizzata.
Il-lokazzjonijiet aktar baxxi tal-memorja tad-Data 224/352/607 jindirizzaw kemm ir-Reġistru File, il-memorja I/O u d-data interna SRAM. L-ewwel 32 post jindirizzaw ir-Reġistru File, l-64 post li jmiss il-memorja I/O standard, u l-aħħar 128/256/512 postijiet jindirizzaw id-data interna SRAM.
Il-ħames modi differenti ta' indirizzar għall-memorja tad-Data jkopru: Dirett, Indirett bi Spostament, Indirett, Indiret bi Pre-tnaqqis, u Indirett b'Post-inkrement. Fir-Reġistru File, ir-reġistri R26 sa R31 jinkludu r-reġistri tal-pointer tal-indirizzar indirett.
L-indirizzar dirett jilħaq l-ispazju kollu tad-dejta.
Il-mod Indirett bi Spostament jilħaq 63 post ta' indirizz mill-indirizz bażi mogħti mir-reġistru Y- jew Z-.
Meta tuża modi ta' indirizzar indirett tar-reġistru b'decrement awtomatiku minn qabel u wara inkrement, ir-reġistri tal-indirizzi X, Y, u Z jitnaqqsu jew jiżdiedu.
It-32 reġistru tax-xogħol ta 'skop ġenerali, 64 Reġistru I/O, u l-128/256/512 bytes ta' SRAM tad-dejta interna fl-ATtiny25/45/85 huma kollha aċċessibbli permezz ta 'dawn il-modi ta' indirizzar kollha. Ir-Reġistru File huwa deskritt fi “Ġen- Reġistru tal-Għan ġenerali File” f’paġna 10.
Figura 5-2. Mappa tal-Memorja tad-Data
Aċċess għall-Memorja tad-Data Times
Din it-taqsima tiddeskrivi l-kunċetti tal-ħin tal-aċċess ġenerali għall-aċċess għall-memorja interna. L-aċċess SRAM tad-dejta interna jitwettaq f'żewġ ċikli clkCPU kif deskritt fi Figura 5-3.
Figura 5-3. Ċikli ta' Aċċess SRAM tad-Data fuq iċ-ċippa Memorja tad-Dejta EEPROM
L-ATtiny25/45/85 fih 128/256/512 bytes ta 'memorja EEPROM tad-data. Huwa organizzat bħala spazju tad-dejta separat, li fih jistgħu jinqraw u jinkitbu bytes singoli. L-EEPROM għandha reżistenza ta 'mill-inqas 100,000 ċiklu ta' kitba/tħassir. L-aċċess bejn l-EEPROM u s-CPU huwa deskritt f'dan li ġej, li jispeċifika r-Reġistri tal-Indirizzi tal-EEPROM, ir-Reġistru tad-Data tal-EEPROM, u r-Reġistru tal-Kontroll tal-EEPROM. Għad-dettalji ara “Tniżżil tas-serje” f’paġna 151.
Aċċess Aqra/Kitba EEPROM
Ir-Reġistri ta' Aċċess għall-EEPROM huma aċċessibbli fl-ispazju I/O.
Il-ħinijiet ta' aċċess għall-kitba għall-EEPROM huma mogħtija fi Tabella 5-1 f’paġna 21. Funzjoni awto-timing, madankollu, tħalli s-softwer tal-utent jiskopri meta l-byte li jmiss jista 'jinkiteb. Jekk il-kodiċi tal-utent ikun fih struzzjonijiet li jiktbu l-EEPROM, għandhom jittieħdu xi prekawzjonijiet. Fi provvisti ta 'enerġija ffiltrati ħafna, VCC x'aktarx jitla' jew jinżel bil-mod
Power-up/down. Dan jikkawża li l-apparat għal xi perjodu ta 'żmien jaħdem f'voltage inqas minn dak speċifikat bħala minimu għall-frekwenza tal-arloġġ użata. Ara “Prevenzjoni tal-Korruzzjoni tal-EEPROM” f’paġna 19 għal dettalji dwar kif jiġu evitati problemi f’dawn is-sitwazzjonijiet.
Sabiex jiġi evitat il-kitba mhux intenzjonata tal-EEPROM, trid tiġi segwita proċedura ta' kitba speċifika. Irreferi għal “Atomika Byte Programming” f’paġna 17 u “Programmazzjoni tal-Byte maqsuma” f’paġna 17 għal dettalji dwar dan.
Meta tinqara l-EEPROM, is-CPU jitwaqqaf għal erba' ċikli ta' arloġġ qabel ma titwettaq l-istruzzjoni li jmiss. Meta tinkiteb l-EEPROM, is-CPU jitwaqqaf għal żewġ ċikli ta' arloġġ qabel ma titwettaq l-istruzzjoni li jmiss.
Programmazzjoni Atomika Byte
L-użu tal-Programmazzjoni Atomic Byte huwa l-aktar mod sempliċi. Meta jikteb byte fl-EEPROM, l-utent irid jikteb l-indirizz fir-Reġistru EEAR u d-dejta fir-Reġistru EEDR. Jekk il-bits EEPMn huma żero, il-kitba ta 'EEPE (fi żmien erba' ċikli wara li tinkiteb EEMPE) tixpruna l-operazzjoni ta 'tħassir/kitba. Kemm iċ-ċiklu tat-tħassir kif ukoll il-kitba jsiru f'operazzjoni waħda u l-ħin totali tal-ipprogrammar jingħata fih Tabella 5-1 f’paġna 21. Il-bit EEPE jibqa' ssettjat sakemm jitlestew l-operazzjonijiet tat-tħassir u l-kitba. Waqt li l-apparat ikun okkupat bl-ipprogrammar, mhuwiex possibbli li tagħmel xi operazzjonijiet EEPROM oħra.
Split Byte Programming
Huwa possibbli li taqsam iċ-ċiklu tat-tħassir u l-kitba f'żewġ operazzjonijiet differenti. Dan jista' jkun utli jekk is-sistema teħtieġ ħin ta' aċċess qasir għal xi perjodu ta' żmien limitat (tipikament jekk il-provvista tal-enerġija voltage jaqa’). Sabiex tieħu vantaġġ tage ta 'dan il-metodu, huwa meħtieġ li l-postijiet li għandhom jinkitbu jkunu ġew imħassra qabel l-operazzjoni tal-kitba. Iżda peress li l-operazzjonijiet tat-tħassir u l-kitba huma maqsuma, huwa possibbli li jsiru l-operazzjonijiet tat-tħassir meta s-sistema tippermetti li jsiru operazzjonijiet kritiċi għall-ħin (tipikament wara l-Power-up).
Ħassar
Biex tħassar byte, l-indirizz irid jinkiteb lil EEAR. Jekk il-bits tal-EEPMn huma 0b01, il-kitba tal-EEPE (fi żmien erba’ ċikli wara li jinkiteb EEMPE) tixpruna l-operazzjoni tat-tħassir biss (il-ħin tal-ipprogrammar jingħata f’ Tabella 5-1 fuq paġna 21). Il-bit EEPE jibqa' ssettjat sakemm titlesta l-operazzjoni tat-tħassir. Waqt li l-apparat ikun qed jipprogramma okkupat, mhuwiex possibbli li tagħmel xi operazzjonijiet EEPROM oħra.
Ikteb
Biex tikteb post, l-utent irid jikteb l-indirizz fl-EEAR u d-data fl-EEDR. Jekk il-bits tal-EEPMn huma 0b10, il-kitba tal-EEPE (fi żmien erba’ ċikli wara li tinkiteb EEMPE) tixpruna l-operazzjoni tal-kitba biss (il-ħin tal-ipprogrammar jingħata f’ Tabella 5-1 f’paġna 21). Il-bit EEPE jibqa' ssettjat sakemm titlesta l-operazzjoni tal-kitba. Jekk il-post li jrid jinkiteb ma ġiex imħassra qabel il-kitba, id-dejta li tinħażen għandha titqies bħala mitlufa. Waqt li l-apparat ikun okkupat bl-ipprogrammar, mhuwiex possibbli li tagħmel xi operazzjonijiet EEPROM oħra.
L-Oxxillatur ikkalibrat jintuża biex iżid l-aċċess għall-EEPROM. Kun żgur li l-frekwenza tal-Oxxillatur tkun fi ħdan ir-rekwiżiti deskritti fi “OSCCAL – Reġistru tal-Kalibrazzjoni tal-Oxxillatur” f’paġna 31.
Il-kodiċi li ġej examples juru assemblaġġ wieħed u funzjoni C waħda għat-tħassir, il-kitba jew il-kitba atomika tal-EEPROM. L-examples jassumu li l-interruzzjonijiet huma kkontrollati (eż. billi l-interruzzjonijiet jiġu diżattivati globalment) sabiex ma jseħħu l-ebda interruzzjoni waqt l-eżekuzzjoni ta' dawn il-funzjonijiet.
Kodiċi tal-Assemblea Eżample |
EEPROM_write:
; Stenna għat-tlestija tal-kitba preċedenti sbic EECR,EEPE rjmp EEPROM_write ; Issettja l-mod ta 'Programmazzjoni ldi r16, (0<<EEPM1)|(0<<EEPM0) barra EECR, r16 ; Stabbilixxi l-indirizz (r18:r17) fir-reġistru tal-indirizzi barra EEARH, r18 barra EEARL, r17 ; Ikteb id-dejta (r19) fir-reġistru tad-dejta barra EEDR, r19 ; Ikteb wieħed loġiku lil EEMPE sbi EECR,EEMPE ; Ibda l-eeprom tikteb billi tissettja EEPE sbi EECR,EEPE ret |
C Kodiċi Eżample |
void EEPROM_write(unsigned char ucAddress, unsigned char ucData)
{ /* Stenna għat-tlestija tal-kitba preċedenti */ filwaqt li(EECR & (1< ; /* Issettja l-mod ta' Programmazzjoni */ EECR = (0< /* Stabbilixxi indirizzi u reġistri tad-dejta */ EEAR = ucAddress; EEDR = ucData; /* Ikteb wieħed loġiku lil EEMPE */ EECR |= (1< /* Ibda l-eeprom write billi tissettja EEPE */ EECR |= (1< } |
Il-kodiċi li jmiss examples juru l-assemblaġġ u l-funzjonijiet C għall-qari tal-EEPROM. L-examples jassumu li l-interruzzjonijiet huma kkontrollati sabiex ma jseħħu l-ebda interruzzjoni waqt l-eżekuzzjoni ta 'dawn il-funzjonijiet.
Kodiċi tal-Assemblea Eżample |
EEPROM_qara:
; Stenna għat-tlestija tal-kitba preċedenti sbic EECR,EEPE rjmp EEPROM_read ; Stabbilixxi l-indirizz (r18:r17) fir-reġistru tal-indirizzi barra EEARH, r18 barra EEARL, r17 ; Ibda eeprom aqra billi tikteb EERE sbi EECR,EERE ; Aqra data mir-reġistru tad-data f'r16, EEDR ret |
C Kodiċi Eżample |
char unsigned EEPROM_read (unsigned char ucAddress)
{ /* Stenna għat-tlestija tal-kitba preċedenti */ filwaqt li(EECR & (1< ; /* Twaqqaf reġistru tal-indirizzi */ EEAR = ucAddress; /* Ibda eeprom aqra billi tikteb EERE */ EECR |= (1< /* Irritorna data mir-reġistru tad-data */ ritorn EEDR; } |
Prevenzjoni tal-Korruzzjoni tal-EEPROM
Matul perjodi ta 'VCC baxx, id-dejta tal-EEPROM tista' tiġi korrotta minħabba li l-provvista voltage huwa baxx wisq biex is-CPU u l-EEPROM joperaw sew. Dawn il-kwistjonijiet huma l-istess bħal għas-sistemi tal-livell tal-bord li jużaw EEPROM, u għandhom jiġu applikati l-istess soluzzjonijiet tad-disinn.
Korruzzjoni tad-data EEPROM tista 'tkun ikkawżata minn żewġ sitwazzjonijiet meta l-voltage huwa baxx wisq. L-ewwel, sekwenza ta 'kitba regolari għall-EEPROM teħtieġ vol minimutage biex joperaw b'mod korrett. It-tieni nett, is-CPU innifsu jista 'jesegwixxi l-istruzzjonijiet b'mod żbaljat, jekk il-provvista voltage huwa baxx wisq.
Il-korruzzjoni tad-dejta tal-EEPROM tista’ tiġi evitata faċilment billi ssegwi din ir-rakkomandazzjoni tad-disinn:
Żomm l-AVR RESET attiv (baxx) waqt perjodi ta' provvista ta' enerġija insuffiċjenti voltage. Dan jista' jsir billi jiġi attivat id-Detector intern Brown-out (BOD). Jekk il-livell ta' skoperta tal-BOD intern ma jaqbilx mal-
livell ta 'skoperta meħtieġ, jista' jintuża ċirkwit ta 'protezzjoni ta' reset VCC baxx estern. Jekk isseħħ reset waqt li tkun għaddejja operazzjoni tal-kitba, l-operazzjoni tal-kitba titlesta sakemm il-provvista tal-enerġija voltage huwa biżżejjed.
Memorja I/O
Id-definizzjoni tal-ispazju tal-I/O tal-ATtiny25/45/85 tidher fi “Sommarju tar-Reġistru” f’paġna 200.
L-I/Os u l-periferali ATtiny25/45/85 kollha jitqiegħdu fl-ispazju I/O. Il-lokalitajiet kollha tal-I/O jistgħu jiġu aċċessati mill-istruzzjonijiet LD/LDS/LDD u ST/STS/STD, li jittrasferixxu data bejn it-32 reġistru tax-xogħol għal skopijiet ġenerali u l-ispazju tal-I/O. Ir-Reġistri I/O fil-medda ta' indirizzi 0x00 – 0x1F huma aċċessibbli b'mod dirett permezz tal-istruzzjonijiet SBI u CBI. F'dawn ir-reġistri, il-valur ta' bits singoli jista' jiġi ċċekkjat bl-użu tal-istruzzjonijiet SBIS u SBIC. Irreferi għat-taqsima tas-sett ta 'struzzjonijiet għal aktar dettalji. Meta tuża l-kmandi speċifiċi I/O IN u OUT, għandhom jintużaw l-indirizzi I/O 0x00 – 0x3F. Meta jiġu indirizzati r-Reġistri I/O bħala spazju tad-dejta bl-użu ta' struzzjonijiet LD u ST, 0x20 għandu jiżdied ma' dawn l-indirizzi.
Għal kompatibilità ma 'apparati futuri, bits riżervati għandhom jinkitbu għal żero jekk jiġu aċċessati. L-indirizzi tal-memorja I/O riservati m'għandhom qatt jinkitbu.
Xi wħud mill-Bnadar tal-Istatus jitneħħew billi tikteb waħda loġika lilhom. Innota li l-istruzzjonijiet CBI u SBI se joperaw biss fuq il-bit speċifikat, u għalhekk jistgħu jintużaw fuq reġistri li jkun fihom Bnadar ta 'Status bħal dawn. L-istruzzjonijiet CBI u SBI jaħdmu mar-reġistri 0x00 sa 0x1F biss.
Ir-Reġistri tal-Kontroll tal-I/O u l-Periferali huma spjegati f'sezzjonijiet aktar tard.
Deskrizzjoni tar-Reġistru
EEARH – Reġistru tal-Indirizz EEPROM
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x1F | – | – | – | – | – | – | – | EEAR8 | EEARH |
Aqra/Ikteb | R | R | R | R | R | R | R | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X/0 |
Bits 7:1 - Riż: Bits Riżervati
Dawn il-bits huma riżervati għal użu fil-futur u dejjem jinqraw bħala żero.
Bits 0 – EEAR8: Indirizz EEPROM
Dan huwa l-aktar sinifikanti indirizz EEPROM bit ta 'ATtiny85. F'apparat b'inqas EEPROM, jiġifieri ATtiny25/ATtiny45, dan il-bit huwa riżervat u dejjem se jaqra żero. Il-valur inizjali tar-Reġistru ta' l-Indirizz EEPROM (EEAR) mhuwiex definit u għalhekk għandu jinkiteb valur xieraq qabel ma tiġi aċċessata l-EEPROM.
EEARL – Reġistru tal-Indirizz EEPROM
Bit
0x1E | EEAR7 | EEAR6 | EEAR5 | EEAR4 | EEAR3 | EEAR2 | EEAR1 | EEAR0 | EEARL |
Wara/Ikteb | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | X | X | X | X | X | X | X | X |
Bit 7 – EEAR7: Indirizz EEPROM
Dan huwa l-aktar sinifikanti indirizz EEPROM bit ta 'ATtiny45. F'apparat b'inqas EEPROM, jiġifieri ATtiny25, dan il-bit huwa riżervat u dejjem se jaqra żero. Il-valur inizjali tar-Reġistru tal-Indirizzi tal-EEPROM (EEAR) mhuwiex definit u għalhekk għandu jinkiteb valur xieraq qabel ma tiġi aċċessata l-EEPROM.
Bits 6:0 – EEAR[6:0]: Indirizz EEPROM
Dawn huma l-bits (baxxi) tar-Reġistru tal-Indirizz EEPROM. Il-bytes tad-dejta tal-EEPROM huma indirizzati b'mod lineari fil-medda 0...(128/256/512-1). Il-valur inizjali tal-EEAR mhuwiex definit u għalhekk għandu jinkiteb valur xieraq qabel ma jkun jista' jiġi aċċessat l-EEPROM.
EEDR – Reġistru tad-Dejta EEPROM
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x1D | EEDR7 | EEDR6 | EEDR5 | EEDR4 | EEDR3 | EEDR2 | EEDR1 | EEDR0 | EEDR |
Aqra/Ikteb | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Għall-operazzjoni tal-kitba tal-EEPROM ir-Reġistru tal-EEDR fih id-dejta li trid tinkiteb fl-EEPROM fl-indirizz mogħti mir-Reġistru tal-EEAR. Għall-operazzjoni tal-qari EEPROM, l-EEDR fih id-dejta tinqara mill-
EEPROM fl-indirizz mogħti mill-EEAR.
5.5.4 Reġistru tal-Kontroll tal-EECR – EEPROM |
|||||||||
Bit 7 6 5 | 4 | 3 | 2 | 1 | 0 | ||||
0x1C – | – | EEPM1 | EEPM0 | ERIE | EEMPE | EEPE | EERE | EECR | |
Aqra/Ikteb R R R/W | R/W | R/W | R/W | R/W | R/W | ||||
Valur Inizjali 0 0 X | X | 0 | 0 | X | 0 |
Bit 7 – Riż: Bit Riżervat
Dan il-bit huwa riservat għall-użu fil-futur u dejjem jinqara bħala 0 f'ATtiny25/45/85. Għal kompatibilità ma 'apparati AVR futuri, dejjem ikteb dan il-bit għal żero. Wara l-qari, maskra din il-bit.
Bit 6 – Riż: Bit Riżervat
Dan il-bit huwa riżervat fl-ATtiny25/45/85 u dejjem jinqara bħala żero.
Bits 5:4 – EEPM[1:0]: Bits tal-Modalità ta' Programmazzjoni EEPROM
L-issettjar tal-bits tal-mod ta' programmazzjoni tal-EEPROM jiddefinixxi liema azzjoni ta' programmar se tiġi attivata meta tikteb EEPE. Huwa possibbli li d-dejta tiġi pprogrammata f'operazzjoni atomika waħda (tħassar il-valur l-antik u tipprogramma l-valur il-ġdid) jew li taqsam l-operazzjonijiet Ħassar u Tikteb f'żewġ operazzjonijiet differenti. Il-ħinijiet tal-Programmazzjoni għall-modi differenti huma murija fi Tabella 5-1. Waqt li EEPE huwa ssettjat, kwalunkwe kitba lil EEPMn tiġi injorata. Matul ir-reset, il-bits EEPMn se jiġu reset għal 0b00 sakemm l-EEPROM ma tkunx ipprogrammata okkupata.
Tabella 5-1. Bits tal-Modalità EEPROM
EEPM1 | EEPM0 | Ħin ta' Programmazzjoni | Operazzjoni |
0 | 0 | 3.4 ms | Ħassar u Ikteb f'operazzjoni waħda (Operazzjoni Atomika) |
0 | 1 | 1.8 ms | Ħassar Biss |
1 | 0 | 1.8 ms | Ikteb Biss |
1 | 1 | – | Riżervat għal użu fil-futur |
Bit 3 – EERIE: EEPROM Ready Interrupt Enable
Il-kitba ta' EERIE għal waħda tippermetti l-EEPROM Ready Interrupt jekk l-I-bit fl-SREG ikun issettjat. Il-kitba ta' EERIE għal żero tiddiżattiva l-interruzzjoni. L-EEPROM Ready Interrupt tiġġenera interruzzjoni kostanti meta l-memorja mhux volatili tkun lesta għall-ipprogrammar.
Bit 2 – EEMPE: EEPROM Master Program Enable
Il-bit EEMPE jiddetermina jekk il-kitba ta' EEPE lil wieħed ikollux effett jew le.
Meta l-EEMPE jiġi ssettjat, l-issettjar tal-EEPE fi żmien erba’ ċikli tal-arloġġ se jipprogramma l-EEPROM fl-indirizz magħżul. Jekk EEMPE huwa żero, issettjar EEPE ma jkollu l-ebda effett. Meta EEMPE tkun inkiteb lil wieħed permezz ta 'softwer, il-ħardwer ineħħi l-bit għal żero wara erba' ċikli tal-arloġġ.
Bit 1 – EEPE: Attivazzjoni tal-Programm EEPROM
Il-Programm EEPROM Enable Signal EEPE huwa s-sinjal li jippermetti l-ipprogrammar għall-EEPROM. Meta l-EEPE jinkiteb, l-EEPROM tiġi pprogrammata skont l-issettjar tal-bits EEPMn. Il-bit EEMPE għandu jinkiteb fuq wieħed qabel ma wieħed loġiku jinkiteb lill-EEPE, inkella l-ebda kitba EEPROM ma ssir. Meta l-ħin ta 'aċċess għall-kitba jkun għadda, il-bit EEPE jitneħħa mill-ħardwer. Meta EEPE tkun ġiet issettjata, is-CPU jitwaqqaf għal żewġ ċikli qabel ma titwettaq l-istruzzjoni li jmiss.
Bit 0 – EERE: EEPROM Read Enable
L-EEPROM Read Enable Signal - EERE - huwa l-istrobe read għall-EEPROM. Meta l-indirizz korrett jiġi stabbilit fir-Reġistru EEAR, il-bit EERE għandu jinkiteb f'wieħed biex jibda jinqara l-EEPROM. L-aċċess għall-qari tal-EEPROM jieħu struzzjoni waħda, u d-dejta mitluba hija disponibbli immedjatament. Meta tinqara l-EEPROM, is-CPU jitwaqqaf għal erba' ċikli qabel ma titwettaq l-istruzzjoni li jmiss. L-utent għandu jeżamina l-bit EEPE qabel ma jibda l-operazzjoni tal-qari. Jekk tkun għaddejja operazzjoni ta' kitba, la huwa possibbli li taqra l-EEPROM, u lanqas li tinbidel ir-Reġistru EEAR.
Arloġġ tas-Sistema u Għażliet tal-Arloġġ
Sistemi ta' Arloġġ u d-Distribuzzjoni tagħhom
Arloġġ tas-CPU
L-arloġġ tas-CPU jiġi mgħoddi għal partijiet tas-sistema kkonċernata mat-tħaddim tal-qalba AVR. Eżampil-lezzjonijiet ta' dawn il-moduli huma r-Reġistru ta' Għan Ġenerali File, ir-Reġistru ta' l-Istatus u l-memorja tad-Data li żżomm is-Stack Pointer. It-twaqqif tal-arloġġ tas-CPU jinibixxi l-qalba milli twettaq operazzjonijiet u kalkoli ġenerali.
Arloġġ I/O – clkI/O
L-arloġġ I/O jintuża mill-maġġoranza tal-moduli I/O, bħal Timer/Counter. L-arloġġ tal-I/O jintuża wkoll mill-modulu tal-Interruzzjoni Esterna, iżda innota li xi interruzzjonijiet esterni jiġu skoperti b'loġika asinkronika, li tippermetti li tali interruzzjonijiet jiġu skoperti anki jekk l-arloġġ tal-I/O jitwaqqaf.
Arloġġ Flash - clkFLASH
L-arloġġ tal-Flash jikkontrolla l-operat tal-interface tal-Flash. L-arloġġ tal-Flash huwa normalment attiv fl-istess ħin mal-arloġġ tas-CPU.
Arloġġ ADC - clkADC
L-ADC huwa pprovdut b'dominju tal-arloġġ iddedikat. Dan jippermetti li jitwaqqfu l-arloġġi tas-CPU u I/O sabiex jitnaqqas il-ħoss iġġenerat minn ċirkwiti diġitali. Dan jagħti riżultati ta 'konverżjoni ADC aktar preċiżi.
PLL Intern għal Ġenerazzjoni Mgħaġġla ta' Arloġġ Periferali - clkPCK
Il-PLL intern f'ATtiny25/45/85 jiġġenera frekwenza tal-arloġġ li hija mmultiplikata 8x minn input tas-sors. B'mod awtomatiku, il-PLL juża l-output tal-oxxillatur RC intern ta '8.0 MHz bħala sors. Alternattivament, jekk il-bit LSM ta 'PLLCSR huwa stabbilit il-PLL juża l-output tal-oxxillatur RC diviż bi tnejn. Għalhekk l-output tal-PLL, l-arloġġ periferali veloċi huwa 64 MHz. L-arloġġ periferali veloċi, jew arloġġ prescaled minn dak, jistgħu jintgħażlu bħala s-sors tal-arloġġ għal Timer/Counter1 jew bħala arloġġ tas-sistema. Ara Figura 6-2. Il-frekwenza ta 'l-arloġġ periferali veloċi hija diviża bi tnejn meta LSM ta' PLLCSR huwa ssettjat, li jirriżulta fi frekwenza ta 'arloġġ ta' 32 MHz. Innota, li LSM ma jistax jiġi ssettjat jekk PLLCLK jintuża bħala arloġġ tas-sistema.
Figura 6-2. Sistema ta 'Clocking PCK.
Il-PLL huwa msakkra fuq l-oxxillatur RC u l-aġġustament tal-oxxillatur RC permezz tar-reġistru OSCCAL se jaġġusta l-arloġġ periferali veloċi fl-istess ħin. Madankollu, anki jekk l-oxxillatur RC jittieħed għal frekwenza ogħla minn 8 MHz, il-frekwenza tal-arloġġ periferali mgħaġġla tissatura f'85 MHz (l-agħar każ) u tibqa' toxxilla fil-frekwenza massima. Għandu jiġi nnutat li l-PLL f'dan il-każ m'għadux imsakkar bl-arloġġ tal-oxxillatur RC. Għalhekk, huwa rakkomandat li ma jittieħdux l-aġġustamenti OSCCAL għal frekwenza ogħla minn 8 MHz sabiex iżżomm il-PLL fil-medda operattiva korretta.
Il-PLL intern huwa attivat meta:
Il-bit PLLE fir-reġistru PLLCSR huwa ssettjat.
Il-fjus CKSEL huwa pprogrammat għal '0001'.
Il-fjus CKSEL huwa pprogrammat għal '0011'.
Il-PLLCSR bit PLOCK huwa ssettjat meta PLL huwa msakkar. Kemm l-oxxillatur RC intern kif ukoll il-PLL huma mitfija fil-modi ta 'l-enerġija mitfija u ta' rqad stand-by.
PLL Intern fil-Modalità ta' Kompatibbiltà ATtiny15
Peress li ATtiny25/45/85 huwa mezz ta' migrazzjoni għall-utenti ATtiny15 hemm mod ta' kompatibilità ATtiny15 għal kompatibilità b'lura. Il-mod ta' kompatibilità ATtiny15 jintgħażel billi jiġu pprogrammati l-fjusis CKSEL għal '0011'.
Fil-mod ta 'kompatibilità ATtiny15 il-frekwenza tal-oxxillatur RC intern hija kkalibrata sa 6.4 MHz u l-fattur ta' multiplikazzjoni tal-PLL huwa ssettjat għal 4x. Ara Figura 6-3. B'dawn l-aġġustamenti s-sistema ta 'clocking hija kompatibbli ma' ATtiny15 u l-arloġġ periferali veloċi li jirriżulta għandu frekwenza ta '25.6 MHz (l-istess bħal f'ATtiny15).
Figura 6-3. Sistema ta 'Clocking PCK fil-Modalità ta' Kompatibbiltà ATtiny15.
Sorsi tal-Arloġġ
L-apparat għandu l-għażliet tas-sors tal-arloġġ li ġejjin, li jistgħu jintgħażlu minn bits tal-Fjus tal-Flash kif muri hawn taħt. L-arloġġ mis-sors magħżul huwa input għall-ġeneratur tal-arloġġ AVR, u mgħoddi għall-moduli xierqa.
Tabella 6-1. Għażliet tal-Clock tal-Apparat Agħżel
Għażla tal-Clocking tal-Apparat | CKSEL[3:0](1) |
Arloġġ Estern (ara paġna 26) | 0000 |
Frekwenza Għolja PLL Arloġġ (ara paġna 26) | 0001 |
Oxxillatur Intern Ikkalibrat (ara paġna 27) | 0010(2) |
Oxxillatur Intern Ikkalibrat (ara paġna 27) | 0011(3) |
Oxxillatur intern ta' 128 kHz (ara paġna 28) | 0100 |
Oxxillatur Kristall ta 'Frekwenza Baxxa (ara paġna 29) | 0110 |
Oxxillatur tal-kristall / Reżonatur taċ-ċeramika (ara paġna 29) | 1000 – 1111 |
Riżervat | 0101, 0111 |
Għall-fjusis kollha “1” tfisser mhux ipprogrammat filwaqt li “0” tfisser ipprogrammat.
L-apparat jintbagħat b'din l-għażla magħżula.
Dan se jagħżel il-Modalità ta' Kompatibbiltà ATtiny15, fejn l-arloġġ tas-sistema huwa diviż b'erbgħa, li jirriżulta fi frekwenza ta' arloġġ ta' 1.6 MHz. Għal aktar informazzjoni, ara “Oxxillatur Intern Ikkalibrat” f’paġna 27.
L-għażliet varji għal kull għażla ta 'clocking huma mogħtija fit-taqsimiet li ġejjin. Meta s-CPU jinxtegħel minn Power-down, is-sors ta 'l-arloġġ magħżul jintuża biex iżżomm il-ħin tal-bidu, u jiżgura operazzjoni stabbli ta' l-Oxxillatur qabel ma tibda l-eżekuzzjoni ta 'l-istruzzjoni. Meta s-CPU jibda minn reset, ikun hemm dewmien addizzjonali li jippermetti li l-qawwa tilħaq livell stabbli qabel ma tibda t-tħaddim normali. L-Oxxillatur tal-Watchdog jintuża biex timmarka din il-parti f'ħin reali tal-ħin tal-bidu. In-numru ta' ċikli tal-Oxxillatur WDT użati għal kull time-out jidher fi Tabella 6-2.
Tabella 6-2. Numru ta' Ċikli tal-Oxxillatur tal-Għassa
Tip Time-out | Numru ta' Ċikli |
4 ms | 512 |
64 ms | 8K (8,192) |
Arloġġ Estern
Biex issuq l-apparat minn sors ta 'arloġġ estern, CLKI għandu jiġi misjuq kif muri fi Figura 6-4. Biex tħaddem l-apparat fuq arloġġ estern, il-Fjusijiet CKSEL għandhom ikunu pprogrammati għal "00".
Figura 6-4. Konfigurazzjoni esterna tas-sewqan tal-arloġġ
Meta jintgħażel dan is-sors tal-arloġġ, il-ħinijiet tal-bidu jiġu determinati mill-Fjusijiet SUT kif muri fi Tabella 6-3.
Tabella 6-3. Ħinijiet tal-bidu għall-Għażla tal-Arloġġ Estern
SUT[1:0] | Ħin tal-Start-up minn Power-down | Dewmien Addizzjonali minn Irrisettja | Użu Rakkomandat |
00 | 6 CK | 14CK | BOD attivat |
01 | 6 CK | 14CK + 4 ms | Qawwa li qed tiżdied b'rata mgħaġġla |
10 | 6 CK | 14CK + 64 ms | Qawwa li qed tiżdied bil-mod |
11 | Riżervat |
Meta jiġi applikat arloġġ estern, huwa meħtieġ li jiġu evitati bidliet f'daqqa fil-frekwenza tal-arloġġ applikata biex jiġi żgurat tħaddim stabbli tal-MCU. Varjazzjoni fil-frekwenza ta 'aktar minn 2% minn ċiklu ta' arloġġ għal ieħor tista 'twassal għal imġieba imprevedibbli. Huwa meħtieġ li jiġi żgurat li l-MCU jinżamm f'Reset waqt tali bidliet fil-frekwenza tal-arloġġ.
Innota li l-Prebejgħ tal-Arloġġ tas-Sistema jista 'jintuża biex jimplimenta bidliet fil-ħin tal-ġirja tal-frekwenza interna tal-arloġġ filwaqt li xorta jiżgura tħaddim stabbli. Irreferi għal “System Clock Prescaler” f’paġna 31 għad-dettalji.
Frekwenza Għolja PLL Arloġġ
Hemm PLL intern li jipprovdi nominalment rata ta 'arloġġ ta' 64 MHz imsakkar għall-Oxxillatur RC għall-użu tal-Periferali Timer/Counter1 u għas-sors tal-arloġġ tas-sistema. Meta jintgħażel bħala sors ta' arloġġ tas-sistema, billi jiġu pprogrammati l-fjusijiet CKSEL għal '0001', huwa diviż b'erbgħa kif muri f' Tabella 6-4.
Tabella 6-4. Modi Operattivi tal-Arloġġ PLL ta 'Frekwenza Għolja
CKSEL[3:0] | Frekwenza Nominali |
0001 | 16 MHz |
Meta jintgħażel dan is-sors tal-arloġġ, il-ħinijiet tal-bidu jiġu ddeterminati mill-fjusijiet SUT kif muri fi Tabella 6-5.
Tabella 6-5. Ħinijiet tal-bidu għall-Arloġġ PLL ta' Frekwenza Għolja
SUT[1:0] | Ħin tal-Start-up minn Power Down | Dewmien Addizzjonali mill-Issettjar tal-Power-On (VCC = 5.0V) | Użu rakkomandat |
00 | 14CK + 1K (1024) CK + 4 ms | 4 ms | BOD attivat |
Tabella 6-5. Ħinijiet tal-bidu għall-Arloġġ PLL ta' Frekwenza Għolja
SUT[1:0] | Ħin tal-Start-up minn Power Down | Dewmien Addizzjonali mill-Issettjar tal-Power-On (VCC = 5.0V) | Użu rakkomandat |
01 | 14CK + 16K (16384) CK + 4 ms | 4 ms | Qawwa li qed tiżdied b'rata mgħaġġla |
10 | 14CK + 1K (1024) CK + 64 ms | 4 ms | Qawwa li qed tiżdied bil-mod |
11 | 14CK + 16K (16384) CK + 64 ms | 4 ms | Qawwa li qed tiżdied bil-mod |
Oxxillatur Intern Ikkalibrat
B'mod awtomatiku, l-Oxxillatur RC Intern jipprovdi arloġġ ta 'madwar 8.0 MHz. Għalkemm voltage u dipendenti fuq it-temperatura, dan l-arloġġ jista 'jiġi kalibrat b'mod preċiż ħafna mill-utent. Ara “Akkumulatur ta’ Oxxillatur RC Intern Ikkalibrat racy” f’paġna 164 u “Veloċità tal-Oxxillatur Intern” f’paġna 192 għal aktar dettalji. L-apparat jintbagħat bil-Fjus CKDIV8 ipprogrammat. Ara “System Clock Prescaler” f’paġna 31 għal aktar dettalji.
Dan l-arloġġ jista’ jintgħażel bħala l-arloġġ tas-sistema billi jiġu pprogrammati l-Fjusijiet CKSEL kif muri fi Tabella 6-6 fil-paġna
27. Jekk jintgħażel, se jopera mingħajr komponenti esterni. Waqt ir-reset, il-ħardwer jgħabbi l-valur tal-kalibrazzjoni ipprogrammat minn qabel fir-Reġistru OSCCAL u b'hekk awtomatikament jikkalibra l-Oxxillatur RC. L-eżattezza ta’ din il-kalibrazzjoni tidher bħala Kalibrazzjoni tal-Fabbrika fi Tabella 21-2 f’paġna 164.
Billi tbiddel ir-reġistru OSCCAL minn SW, ara “OSCCAL – Reġistru tal-Kalibrazzjoni tal-Oxxillatur” f’paġna 31, huwa possibbli li tinkiseb preċiżjoni tal-kalibrazzjoni ogħla milli billi tuża l-kalibrazzjoni tal-fabbrika. L-eżattezza ta' din il-kalibrazzjoni hija murija bħala kalibrazzjoni tal-Utent in Tabella 21-2 f’paġna 164.
Meta dan l-Oxxillatur jintuża bħala l-arloġġ taċ-ċippa, l-Oxxillatur tal-Watchdog xorta se jintuża għall-Watchdog Timer u għall-Reset Time-out. Għal aktar informazzjoni dwar il-valur tal-kalibrazzjoni ipprogrammat minn qabel, ara t-taqsima “Kali- Bration Bytes” f’paġna 150.
L-oxxillatur intern jista 'jiġi ssettjat ukoll biex jipprovdi arloġġ ta' 6.4 MHz billi jikteb fjusis CKSEL għal "0011", kif muri f' Tabella 6-6 hawn taħt. Dan is-setting huwa msemmi bħala Mod ta' Kompatibbiltà ATtiny15 u huwa maħsub biex jipprovdi sors ta' arloġġ kalibrat f'6.4 MHz, bħal f'ATtiny15. Fil-Modalità ta' Kompatibbiltà ATtiny15 il-PLL juża l-oxxillatur intern li jaħdem f'6.4 MHz biex jiġġenera sinjal ta' arloġġ periferali ta' 25.6 MHz għal Timer/Counter1 (ara “Timer/Counter8 ta’ 1-bit in ATtiny15 Mode” f’paġna 95). Innota li f'dan il-mod ta 'tħaddim is-sinjal tal-arloġġ ta' 6.4 MHz huwa dejjem diviż b'erbgħa, li jipprovdi arloġġ tas-sistema ta '1.6 MHz.
Tabella 6-6. Modi Operattivi ta' Oxxillatur RC Ikkalibrat Intern
CKSEL[3:0] | Frekwenza Nominali |
0010(1) | 8.0 MHz |
0011(2) | 6.4 MHz |
L-apparat jintbagħat b'din l-għażla magħżula.
Dan is-setting se jagħżel il-Modalità ta' Kompatibbiltà ATtiny15, fejn l-arloġġ tas-sistema huwa diviż b'erbgħa, li jirriżulta fi frekwenza ta' arloġġ ta' 1.6 MHz.
Meta l-oxxillatur intern kalibrat ta' 8 MHz jintgħażel bħala sors ta' arloġġ il-ħinijiet tal-bidu jiġu determinati mill-Fjusijiet SUT kif muri f' Tabella 6-7 hawn taħt.
Tabella 6-7. Ħinijiet tal-bidu għall-Arloġġ tal-Oxxillatur RC Ikkalibrat Intern
SUT[1:0] | Ħin tal-Start-up minn Power-down | Dewmien Addizzjonali mir-Reset (VCC = 5.0V) | Użu Rakkomandat |
00 | 6 CK | 14CK(1) | BOD attivat |
01 | 6 CK | 14CK + 4 ms | Qawwa li qed tiżdied b'rata mgħaġġla |
10(2) | 6 CK | 14CK + 64 ms | Qawwa li qed tiżdied bil-mod |
11 | Riżervat |
1. Jekk il-fjus RSTDISBL ikun ipprogrammat, dan il-ħin tal-bidu se jiżdied għal 14CK + 4 ms biex jiġi żgurat li l-mod ta 'programmar ikun jista' jiddaħħal.
2. L-apparat jintbagħat b'din l-għażla magħżula.
F'ATtiny15 il-ħinijiet tal-bidu tal-Modalità ta' Kompatibbiltà huma determinati minn fjusis SUT kif muri fi Tabella 6-8 hawn taħt.
Tabella 6-8. Ħinijiet tal-bidu għall-Arloġġ tal-Oxxillatur RC Ikkalibrat Intern (fil-Modalità ATtiny15)
SUT[1:0] | Ħin tal-Start-up minn Power-down | Dewmien Addizzjonali mir-Reset (VCC = 5.0V) | Użu Rakkomandat |
00 | 6 CK | 14CK + 64 ms | |
01 | 6 CK | 14CK + 64 ms | |
10 | 6 CK | 14CK + 4 ms | |
11 | 1 CK | 14CK(1) |
Nota: Jekk il-fjus RSTDISBL ikun ipprogrammat, dan il-ħin tal-bidu se jiżdied għal 14CK + 4 ms biex jiġi żgurat li l-mod ta 'programmar ikun jista' jiddaħħal.
Fil-qosor, aktar informazzjoni dwar il-Modalità ta’ Kompatibbiltà ATtiny15 tista’ tinstab fit-taqsimiet “Port B (PB5:PB0)” mixgħula paġna 2, “PLL Intern fil-Modalità ta’ Kompatibbiltà ATtiny15” f’paġna 24, “8-bit Timer/Counter1 fil-Modalità ATtiny15” mixgħula paġna 95, “Limitazzjonijiet ta’ debugWIRE” f’paġna 140, “Bytes ta’ Kalibrazzjoni” f’paġna 150 u fit-tabella “Clock Prescaler Agħżel” f’paġna 33.
Oxxillatur intern ta' 128 kHz
L-Oxxillatur intern ta '128 kHz huwa Oxxillatur ta' qawwa baxxa li jipprovdi arloġġ ta '128 kHz. Il-frekwenza hija nominali fi 3V u 25°C. Dan l-arloġġ jista' jintgħażel bħala l-arloġġ tas-sistema billi jiġu pprogrammati l-Fjusijiet CKSEL għal “0100”.
Meta jintgħażel dan is-sors tal-arloġġ, il-ħinijiet tal-bidu jiġu determinati mill-Fjusijiet SUT kif muri fi Tabella 6-9.
Tabella 6-9. Ħinijiet tal-bidu għall-Oxxillatur Intern ta' 128 kHz
SUT[1:0] | Ħin tal-Start-up minn Power-down | Dewmien Addizzjonali minn Irrisettja | Użu Rakkomandat |
00 | 6 CK | 14CK(1) | BOD attivat |
01 | 6 CK | 14CK + 4 ms | Qawwa li qed tiżdied b'rata mgħaġġla |
10 | 6 CK | 14CK + 64 ms | Qawwa li qed tiżdied bil-mod |
11 | Riżervat |
Nota: Jekk il-fjus RSTDISBL ikun ipprogrammat, dan il-ħin tal-bidu se jiżdied għal 14CK + 4 ms biex jiġi żgurat li l-mod ta 'programmar ikun jista' jiddaħħal.
Oxxillatur Kristall ta 'Frekwenza Baxxa
Biex tuża kristall ta 'l-arloġġ ta' 32.768 kHz bħala s-sors ta 'l-arloġġ għall-apparat, l-Oxxillatur tal-Kristall ta' frekwenza baxxa għandu jintgħażel billi jiġu stabbiliti fjusis CKSEL għal '0110'. Il-kristall għandu jkun imqabbad kif muri fi Figura 6-5. Biex issib kapaċità tat-tagħbija xierqa għal kristall ta' 32.768 kHz, jekk jogħġbok ikkonsulta d-datasheet tal-manifattur.
Meta jintgħażel dan l-oxxillatur, il-ħinijiet tal-bidu huma determinati mill-fjusijiet SUT kif muri fi Tabella 6-10.
Tabella 6-10. Ħinijiet tal-bidu għall-Għażla tal-Arloġġ tal-Oxxillatur tal-Kristal ta 'Frekwenza Baxxa
SUT[1:0] | Ħin tal-Start-up minn Power Down | Dewmien Addizzjonali mir-Reset (VCC = 5.0V) | Użu rakkomandat |
00 | 1K (1024) CK(1) | 4 ms | Qawwa li qed tiżdied b'rata mgħaġġla jew BOD attivat |
01 | 1K (1024) CK(1) | 64 ms | Qawwa li qed tiżdied bil-mod |
10 | 32K (32768) CK | 64 ms | Frekwenza stabbli fil-bidu |
11 | Riżervat |
Nota: Dawn l-għażliet għandhom jintużaw biss jekk l-istabbiltà tal-frekwenza fil-bidu ma tkunx importanti.
L-Oxxillatur tal-Kristall ta 'frekwenza baxxa jipprovdi kapaċità ta' tagħbija interna, ara Tabella 6-11 f'kull pin TOSC.
Tabella 6-11. Kapaċità ta 'Oxxillatur tal-Kristal ta' Frekwenza Baxxa
Apparat | 32 kHz Osc. Tip | Kap (Xtal1/Tosc1) | Kap (Xtal2/Tosc2) |
ATtiny25/45/85 | Sistema Osc. | 16 pF | 6 pF |
Oxxillatur tal-kristall / Reżonatur taċ-ċeramika
XTAL1 u XTAL2 huma input u output, rispettivament, ta 'inverting amplifier li jista 'jiġi kkonfigurat għall-użu bħala Oxxillatur On-chip, kif muri fi Figura 6-5. Jistgħu jintużaw jew kristall tal-kwarz jew reżonatur taċ-ċeramika.
C1 u C2 għandhom dejjem ikunu ugwali kemm għall-kristalli kif ukoll għar-reżonaturi. Il-valur ottimali tal-capacitors jiddependi fuq il-kristall jew ir-resonatur li qed jintuża, l-ammont ta 'capacitance stray, u l-istorbju elettromanjetiku tal-ambjent. Xi linji gwida inizjali għall-għażla ta 'capacitors għall-użu mal-kristalli huma mogħtija fi Tabella 6-12 hawn taħt. Għal reżonaturi taċ-ċeramika, għandhom jintużaw il-valuri tal-kapaċitatur mogħtija mill-manifattur.
Tabella 6-12. Modi Operattivi tal-Oxxillatur tal-Kristall
CKSEL[3:1] | Frekwenza Firxa (MHz) | Firxa Rakkomandata għall-Kondensers C1 u C2 għall-Użu bi Kristalli (pF) |
100(1) | 0.4 – 0.9 | – |
101 | 0.9 – 3.0 | 12 – 22 |
110 | 3.0 – 8.0 | 12 – 22 |
111 | 8.0 – | 12 – 22 |
Noti: Din l-għażla m'għandhiex tintuża ma 'kristalli, biss ma' reżonaturi taċ-ċeramika.
L-Oxxillatur jista 'jopera fi tliet modi differenti, kull wieħed ottimizzat għal firxa ta' frekwenza speċifika. Il-mod ta 'tħaddim huwa magħżul mill-fjusis CKSEL[3:1] kif muri fi Tabella 6-12.
Il-Fjus CKSEL0 flimkien mal-Fjusijiet SUT[1:0] jagħżlu l-ħinijiet tal-bidu kif muri f’ Tabella 6-13.
Tabella 6-13. Ħinijiet tal-bidu għall-Għażla tal-Arloġġ tal-Oxxillatur tal-Kristall
CKSEL0 | SUT[1:0] | Ħin tal-Start-up minn Power-down | Dewmien Addizzjonali minn Irrisettja | Użu Rakkomandat |
0 | 00 | 258 CK(1) | 14CK + 4 ms | Resonatur taċ-ċeramika, qawwa li qed tiżdied b'rata mgħaġġla |
0 | 01 | 258 CK(1) | 14CK + 64 ms | Resonatur taċ-ċeramika, qawwa li qed tiżdied bil-mod |
0 | 10 | 1K (1024) CK(2) | 14CK | Resonatur taċ-ċeramika, BOD attivat |
0 | 11 | 1K (1024)CK(2) | 14CK + 4 ms | Resonatur taċ-ċeramika, qawwa li qed tiżdied b'rata mgħaġġla |
1 | 00 | 1K (1024)CK(2) | 14CK + 64 ms | Resonatur taċ-ċeramika, qawwa li qed tiżdied bil-mod |
1 | 01 | 16K (16384) CK | 14CK | Crystal Oxxillatur, BOD attivat |
1 | 10 | 16K (16384) CK | 14CK + 4 ms | Oxxillatur tal-kristall, qawwa li qed tiżdied b'rata mgħaġġla |
1 | 11 | 16K (16384) CK | 14CK + 64 ms | Oxxillatur tal-kristall, qawwa li qed tiżdied bil-mod |
Noti
Dawn l-għażliet għandhom jintużaw biss meta ma jaħdmux qrib il-frekwenza massima tal-apparat, u biss jekk l-istabbiltà tal-frekwenza fil-bidu ma tkunx importanti għall-applikazzjoni. Dawn l-għażliet mhumiex adattati għall-kristalli.
Dawn l-għażliet huma maħsuba għall-użu ma 'reżonaturi taċ-ċeramika u se jiżguraw l-istabbiltà tal-frekwenza fil-bidu. Jistgħu jintużaw ukoll mal-kristalli meta ma jaħdmux qrib il-frekwenza massima tal-apparat, u jekk l-istabbiltà tal-frekwenza fil-bidu ma tkunx importanti għall-applikazzjoni.
Sors tal-Arloġġ Default
L-apparat jintbagħat b'CKSEL = "0010", SUT = "10", u CKDIV8 ipprogrammat. L-issettjar default tas-sors tal-arloġġ huwa għalhekk l-Oxxillatur RC Intern li jaħdem fi 8 MHz bl-itwal ħin tal-bidu u preskala tal-arloġġ tas-sistema inizjali ta' 8, li jirriżulta f'arloġġ tas-sistema ta' 1.0 MHz. Dan is-setting default jiżgura li l-utenti kollha jistgħu jagħmlu l-issettjar tas-sors tal-arloġġ mixtieq tagħhom billi jużaw In-System jew High-voltage Programmatur.
Sistema ta 'Arloġġ Prescaler
L-arloġġ tas-sistema ATtiny25/45/85 jista 'jinqasam billi tissettja l- “CLKPR – Reġistru tal-Preskala tal-Arloġġ” f’paġna 32. Din il-karatteristika tista 'tintuża biex tnaqqas il-konsum tal-enerġija meta r-rekwiżit għall-qawwa tal-ipproċessar ikun baxx. Dan jista 'jintuża mal-għażliet kollha tas-sors tal-arloġġ, u se jaffettwa l-frekwenza tal-arloġġ tas-CPU u l-periferali sinkroniċi kollha. clkI/O, clkADC, clkCPU, u clkFLASH huma diviżi b'fattur kif muri f' Tabella 6-15 f’paġna 33.
Ħin tal-Qlib
Meta taqleb bejn is-settings tal-prescaler, il-Prescaler tal-Arloġġ tas-Sistema jiżgura li l-ebda glitches ma jseħħu fis-sistema tal-arloġġ u li l-ebda frekwenza intermedja ma tkun ogħla la mill-frekwenza tal-arloġġ li tikkorrispondi għall-issettjar preċedenti, u lanqas mill-frekwenza tal-arloġġ li tikkorrispondi għall-issettjar il-ġdid.
Ir-ripple counter li jimplimenta l-prescaler jaħdem fil-frekwenza tal-arloġġ indiviż, li jista 'jkun aktar mgħaġġel mill-frekwenza tal-arloġġ tas-CPU. Għalhekk, mhuwiex possibbli li jiġi ddeterminat l-istat tal-prescaler - anki jekk ikun jista 'jinqara, u l-ħin eżatt li tieħu biex taqleb minn diviżjoni tal-arloġġ għal oħra ma jistax jiġi mbassar eżatt.
Minn meta jinkitbu l-valuri CLKPS, tieħu bejn T1 + T2 u T1 + 2*T2 qabel ma l-frekwenza l-ġdida tal-arloġġ tkun attiva. F'dan l-intervall, jiġu prodotti 2 truf tal-arloġġ attivi. Hawnhekk, T1 huwa l-perjodu ta 'arloġġ preċedenti, u T2 huwa l-perjodu li jikkorrispondi għall-issettjar ġdid ta' prescaler.
Buffer tal-Ħruġ tal-Arloġġ
L-apparat jista' joħroġ l-arloġġ tas-sistema fuq il-pin CLKO (meta ma jintużax bħala pin XTAL2). Biex tippermetti l-output, il-Fjus CKOUT irid jiġi pprogrammat. Din il-modalità hija adattata meta l-arloġġ taċ-ċippa jintuża biex isuq ċirkwiti oħra fis-sistema. Innota li l-arloġġ mhux se joħroġ waqt ir-reset u li t-tħaddim normali tal-pin I/O se jinqabeż meta l-fjus jiġi pprogrammat. Oxxillatur RC Intern, Oxxillatur WDT, PLL, u arloġġ estern (CLKI) jistgħu jintgħażlu meta l-arloġġ joħroġ fuq CLKO. Oxxillaturi tal-kristall (XTAL1, XTAL2) ma jistgħux jintużaw għall-output tal-arloġġ fuq CLKO. Jekk jintuża l-Prescaler tal-Arloġġ tas-Sistema, huwa l-arloġġ tas-sistema diviż li joħroġ.
Deskrizzjoni tar-Reġistru
OSCCAL – Reġistru tal-Kalibrar tal-Oxxillatur
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x31 | CAL7 | CAL6 | CAL5 | CAL4 | CAL3 | CAL2 | CAL1 | CAL0 | OSKALI |
Aqra/Ikteb | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W |
Bits 7:0 – CAL[7:0]: Valur tal-Kalibrar tal-Oxxillatur
Ir-Reġistru tal-Kalibrazzjoni tal-Oxxillatur jintuża biex jitraqqa l-Oxxillatur RC Intern Ikkalibrat biex jitneħħew il-varjazzjonijiet tal-proċess mill-frekwenza tal-oxxillatur. Valur ta’ kalibrazzjoni ipprogrammat minn qabel jinkiteb awtomatikament f’dan ir-reġistru waqt ir-reset taċ-ċippa, li jagħti l-frekwenza kalibrata tal-Fabbrika kif speċifikat f’ Tabella 21-2 f’paġna 164. Is-softwer tal-applikazzjoni jista 'jikteb dan ir-reġistru biex jibdel il-frekwenza tal-oxxillatur. L-oxxillatur jista 'jiġi kalibrat għal frekwenzi kif speċifikat fi Tabella 21-2 f’paġna 164. Il-kalibrazzjoni barra dik il-medda mhix garantita.
Innota li dan l-oxxillatur jintuża biex iżżomm l-aċċessi tal-kitba tal-EEPROM u tal-Flash, u dawn il-ħinijiet tal-kitba jiġu affettwati kif xieraq. Jekk l-EEPROM jew il-Flash huma miktuba, tikkalibrax għal aktar minn 8.8 MHz. Inkella, l-EEPROM jew il-kitba Flash tista 'tfalli.
Il-bit CAL7 jiddetermina l-firxa ta 'operazzjoni għall-oxxillatur. L-issettjar ta 'dan il-bit għal 0 jagħti l-inqas medda ta' frekwenza, l-issettjar ta 'dan il-bit għal 1 jagħti l-ogħla medda ta' frekwenza. Iż-żewġ firxiet ta 'frekwenza huma jikkoinċidu, fi kliem ieħor issettjar ta' OSCCAL = 0x7F jagħti frekwenza ogħla minn OSCCAL = 0x80.
Il-bits CAL[6:0] huma użati biex tixgħel il-frekwenza fil-medda magħżula. Setting ta' 0x00 jagħti l-inqas frekwenza f'dik il-medda, u setting ta' 0x7F jagħti l-ogħla frekwenza fil-medda.
Biex jiġi żgurat tħaddim stabbli tal-MCU il-valur tal-kalibrazzjoni għandu jinbidel f'żgħir. Varjazzjoni fil-frekwenza ta 'aktar minn 2% minn ċiklu għall-ieħor tista' twassal għal imġieba imprevedibbli. Bidliet fl-OSCCAL m'għandhomx jaqbżu 0x20 għal kull kalibrazzjoni. Huwa meħtieġ li jiġi żgurat li l-MCU jinżamm f'Reset waqt tali bidliet fil-frekwenza tal-arloġġ
Tabella 6-14. Medda ta' Frekwenzi ta' Oxxillatur Intern RC
Valur OSKCAL | L-inqas Frekwenza Tipika fir-rigward tal-Frekwenza Nominali | L-Ogħla Frekwenza Tipika fir-rigward tal-Frekwenza Nominali |
0x00 | 50% | 100% |
0x3F | 75% | 150% |
0x7F | 100% | 200% |
CLKPR – Reġistru tal-Preskala tal-Arloġġ
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x26 | CLKPCE | – | – | – | CLKPS3 | CLKPS2 | CLKPS1 | CLKPS0 | CLKPR |
Aqra/Ikteb | R/W | R | R | R | R/W | R/W | R/W | R/W |
Valur Inizjali 0 0 0 0 Ara d-Deskrizzjoni tal-Bit
Bit 7 – CLKPCE: Bidla tal-Prescaler tal-Arloġġ Attiva
Il-bit CLKPCE għandu jinkiteb f'wieħed loġiku biex jippermetti l-bidla tal-bits CLKPS. Il-bit CLKPCE jiġi aġġornat biss meta l-bits l-oħra f'CLKPR jinkitbu simultanjament għal żero. CLKPCE jitneħħa mill-ħardwer erba 'ċikli wara li jinkiteb jew meta jinkitbu l-bits CLKPS. Il-kitba mill-ġdid tal-bit CLKPCE f'dan il-perjodu ta' time-out la testendi l-perjodu ta' time-out, u lanqas tikklerja l-bit CLKPCE.
Bits 6:4 - Riż: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bits 3:0 – CLKPS[3:0]: Clock Prescaler Select Bits 3 – 0
Dawn il-bits jiddefinixxu l-fattur tad-diviżjoni bejn is-sors tal-arloġġ magħżul u l-arloġġ tas-sistema interna. Dawn il-bits jistgħu jinkitbu run-time biex ivarjaw il-frekwenza tal-arloġġ biex jissodisfaw ir-rekwiżiti tal-applikazzjoni. Peress li d-diviżur jaqsam l-input ta 'l-arloġġ prinċipali għall-MCU, il-veloċità tal-periferali sinkroniċi kollha titnaqqas meta jintuża fattur ta' diviżjoni. Il-fatturi tad-diviżjoni huma mogħtija fi Tabella 6-15.
Biex jiġu evitati bidliet mhux intenzjonati tal-frekwenza tal-arloġġ, trid tiġi segwita proċedura ta’ kitba speċjali biex tbiddel il-bits CLKPS:
Ikteb il-bit Clock Prescaler Change Enable (CLKPCE) f'wieħed u l-bits l-oħra kollha f'CLKPR għal żero.
Fi żmien erba 'ċikli, ikteb il-valur mixtieq għal CLKPS waqt li tikteb żero għal CLKPCE.
L-interruzzjonijiet għandhom jiġu diżattivati meta tinbidel l-issettjar tal-prescaler biex jiġi żgurat li l-proċedura tal-kitba ma tiġix interrotta.
Il-Fjus CKDIV8 jiddetermina l-valur inizjali tal-bits CLKPS. Jekk CKDIV8 mhux ipprogrammat, il-bits CLKPS jiġu reset għal "0000". Jekk CKDIV8 huwa pprogrammat, il-bits CLKPS jiġu ssettjati mill-ġdid għal "0011", li jagħti fattur ta 'diviżjoni ta' tmienja mal-bidu. Din il-karatteristika għandha tintuża jekk is-sors tal-arloġġ magħżul ikollu frekwenza ogħla mill-frekwenza massima tal-apparat fil-kundizzjonijiet operattivi preżenti. Innota li kwalunkwe valur jista 'jinkiteb lill-bits CLKPS irrispettivament mill-issettjar tal-Fjus CKDIV8. Is-softwer tal-Applikazzjoni għandu jiżgura li jkun hemm fattur ta 'diviżjoni suffiċjenti
magħżula jekk is-sors tal-arloġġ magħżul ikollu frekwenza ogħla mill-frekwenza massima tal-apparat fil-kundizzjonijiet operattivi preżenti. L-apparat jintbagħat bil-Fjus CKDIV8 ipprogrammat.
Tabella 6-15. Clock Prescaler Agħżel
CLKPS3 | CLKPS2 | CLKPS1 | CLKPS0 | Fattur tad-Diviżjoni tal-Arloġġ |
0 | 0 | 0 | 0 | 1 |
0 | 0 | 0 | 1 | 2 |
0 | 0 | 1 | 0 | 4 |
0 | 0 | 1 | 1 | 8 |
0 | 1 | 0 | 0 | 16 |
0 | 1 | 0 | 1 | 32 |
0 | 1 | 1 | 0 | 64 |
0 | 1 | 1 | 1 | 128 |
1 | 0 | 0 | 0 | 256 |
1 | 0 | 0 | 1 | Riżervat |
1 | 0 | 1 | 0 | Riżervat |
1 | 0 | 1 | 1 | Riżervat |
1 | 1 | 0 | 0 | Riżervat |
1 | 1 | 0 | 1 | Riżervat |
1 | 1 | 1 | 0 | Riżervat |
1 | 1 | 1 | 1 | Riżervat |
Nota: Il-prescaler huwa diżattivat fil-mod ta 'kompatibilità ATtiny15 u la l-kitba lil CLKPR, u lanqas l-ipprogrammar tal-fjus CKDIV8 m'għandhom xi effett fuq l-arloġġ tas-sistema (li dejjem ikun 1.6 MHz).
Ġestjoni tal-Enerġija u Modalità Sleep
Il-prestazzjoni għolja u l-effiċjenza tal-kodiċi li jwasslu l-industrija jagħmlu l-mikrokontrolluri AVR għażla ideali għal applikazzjonijiet ta 'enerġija baxxa. Barra minn hekk, il-modi sleep jippermettu lill-applikazzjoni tagħlaq moduli mhux użati fl-MCU, u b'hekk tiffranka l-enerġija. L-AVR jipprovdi diversi modi ta 'rqad li jippermettu lill-utent ifassal il-konsum tal-enerġija skont ir-rekwiżiti tal-applikazzjoni.
Modi ta 'rqad
Figura 6-1 f’paġna 23 jippreżenta s-sistemi differenti tal-arloġġ u d-distribuzzjoni tagħhom f'ATtiny25/45/85. Iċ-ċifra hija ta 'għajnuna fl-għażla ta' mod ta 'rqad xieraq. Tabella 7-1 turi l-modi differenti ta' rqad u s-sorsi tal-wake up tagħhom.
Tabella 7-1. Dominji Attivi tal-Arloġġ u Sorsi ta' Qawmien fil-Modi ta' Sleep Differenti
Dominji Attivi tal-Arloġġ | Oxxillaturi | Sorsi tal-Qawmien | ||||||||||
Modalità Sleep | clkCPU | clkFLASH | clkIO | clkADC | clkPCK | Sors Prinċipali tal-Arloġġ Ippermettiet | INT0 u Pin Change | SPM/EEPROM
Lest |
Kundizzjoni tal-Bidu tal-USI |
ADC | I/O oħra | Għassa Tinterrompi |
Idle | X | X | X | X | X | X | X | X | X | X | ||
Tnaqqis tal-Ħsejjes ADC | X | X | X(1) | X | X | X | X | |||||
Qawwa 'l isfel | X(1) | X | X |
Nota: Għal INT0, interruzzjoni tal-livell biss.
Biex tidħol fi kwalunkwe mit-tliet modi ta 'rqad, il-bit SE f'MCUCR għandu jinkiteb f'wieħed loġiku u trid tiġi esegwita struzzjoni SLEEP. Il-bits SM[1:0] fir-Reġistru MCUCR jagħżlu liema modalità sleep (Idle, ADC Noise Reduction jew Power-down) se tiġi attivata mill-istruzzjoni SLEEP. Ara Tabella 7-2 għal sommarju.
Jekk sseħħ interruzzjoni attivata waqt li l-MCU ikun f'modalità sleep, l-MCU iqum. L-MCU imbagħad jitwaqqaf għal erba' ċikli minbarra l-ħin tal-bidu, jesegwixxi r-rutina tal-interruzzjoni, u jerġa 'jibda l-eżekuzzjoni mill-istruzzjoni wara SLEEP. Il-kontenut tar-Reġistru File u SRAM ma jinbidlux meta l-apparat iqum mill-irqad. Jekk isseħħ reset waqt il-modalità sleep, l-MCU iqum u jesegwixxi mill-Reset Vector.
Nota: li jekk tintuża interruzzjoni attivata minn livell għall-qawmien il-livell mibdul għandu jinżamm għal xi żmien biex tqum l-MCU (u biex l-MCU jidħol fir-rutina tas-servizz tal-interruzzjoni). Ara “Interruzzjonijiet Esterni” f’paġna 49 għad-dettalji.
Modalità Inattiva
Meta l-SM[1:0] bits jinkitbu fuq 00, l-istruzzjoni SLEEP tagħmel lill-MCU jidħol fil-modalità Idle, u twaqqaf is-CPU iżda tippermetti Analog Comparator, ADC, USI, Timer/Counter, Watchdog, u s-sistema ta’ interruzzjoni tkompli taħdem. tiekol. Din il-modalità sleep bażikament twaqqaf clkCPU u clkFLASH, filwaqt li tippermetti li l-arloġġi l-oħra jaħdmu.
Il-mod inattiv jippermetti lill-MCU jqum minn interruzzjonijiet attivati esterni kif ukoll minn dawk interni bħall-Timer Overflow. Jekk il-qawmien mill-interruzzjoni tal-Komparatur Analog ma jkunx meħtieġ, il-Komparatur Analoġiku jista' jintefa' billi tissettja l-bit ACD f' “ACSR – Kontroll tal-Komparatur Analog u Reġistru tal-Istatus” f’paġna 120. Dan inaqqas il-konsum tal-enerġija fil-mod Idle. Jekk l-ADC hija attivata, konverżjoni tibda awtomatikament meta tiddaħħal din il-modalità.
Modalità ta' Tnaqqis tal-Ħsejjes ADC
Meta l-SM[1:0] bits jinkitbu fuq 01, l-istruzzjoni SLEEP tagħmel l-MCU jidħol fil-mod ta 'tnaqqis tal-istorbju ADC, iwaqqaf is-CPU iżda jippermetti lill-ADC, l-interruzzjonijiet esterni, u l-Watchdog biex ikomplu joperaw (jekk ppermettiet). Din il-modalità sleep twaqqaf clkI/O, clkCPU, u clkFLASH, filwaqt li tippermetti li l-arloġġi l-oħra jaħdmu.
Dan itejjeb l-ambjent tal-istorbju għall-ADC, li jippermetti kejl ta 'riżoluzzjoni ogħla. Jekk l-ADC hija attivata, konverżjoni tibda awtomatikament meta tiddaħħal din il-modalità. Minbarra l-interruzzjoni Tlesti tal-Konverżjoni ADC, Reset Estern biss, Reset Watchdog, Reset Brown-out, interruzzjoni lesta SPM/EEPROM, interruzzjoni ta 'livell estern fuq INT0 jew interruzzjoni ta' bidla tal-pin jistgħu jqajmu l-MCU minn Tnaqqis tal-Ħsejjes ADC. mod.
Modalità Power-down
Meta l-SM[1:0] bits jinkitbu fuq 10, l-istruzzjoni SLEEP tagħmel l-MCU jidħol fil-modalità Power-down. F'dan il-mod, l-Oxxillatur jitwaqqaf, filwaqt li l-interruzzjonijiet esterni, l-iskoperta tal-kundizzjoni tal-bidu tal-USI u l-Watchdog ikompli jaħdem (jekk attivat). Reset Estern, Reset Watchdog, Reset Brown-out, interruzzjoni tal-kundizzjoni tal-bidu tal-USI, interruzzjoni tal-livell estern fuq INT0 jew interruzzjoni tal-bdil tal-pin biss jistgħu jqumu l-MCU. Din il-modalità sleep iwaqqaf l-arloġġi kollha ġenerati, u jippermetti l-operat ta’ moduli asinkroniċi biss.
Software BOD Itfi
Meta d-Detector ta’ Brown-out (BOD) ikun attivat minn fjusis BODLEVEL (ara Tabella 20-4 f’paġna 148), il-BOD qed jimmonitorja b'mod attiv il-provvista voltage matul perjodu ta 'rqad. F'xi apparati huwa possibbli li tiffranka l-enerġija billi l-BOD jiġi disattivat permezz ta' softwer fil-modalità ta' sleep Power-Down. Il-konsum tal-enerġija tal-modalità sleep imbagħad ikun fl-istess livell bħal meta l-BOD jiġi diżattivat globalment permezz tal-fjusijiet.
Jekk il-BOD jiġi diżattivat bis-softwer, il-funzjoni tal-BOD tintefa immedjatament wara li tidħol fil-modalità sleep. Malli tqum mill-irqad, BOD jerġa' jiġi awtomatikament attivat. Dan jiżgura tħaddim sikur f'każ li l-livell VCC niżel matul il-perjodu ta 'rqad.
Meta l-BOD ikun ġie diżattivat, il-ħin tal-qawmien mill-modalità sleep ikun l-istess bħal dak għall-qawmien minn RESET. L-utent għandu kkonfigura manwalment il-ħinijiet tal-qawmien b'tali mod li r-referenza tal-bandgap ikollha l-ħin biex tibda u l-BOD ikun qed jaħdem b'mod korrett qabel ma l-MCU jkompli jesegwixxi l-kodiċi. Ara SUT[1:0] u CKSEL[3:0] fuse bits fit-tabella “Fuse Low Byte” f’paġna 149
Id-diżattivazzjoni tal-BOD hija kkontrollata mill-bit BODS (BOD Sleep) tar-Reġistru tal-Kontroll tal-MCU, ara “MCUCR – Kontroll MCU Irreġistra” f’paġna 37. Il-kitba ta 'dan il-bit għal wieħed itfi BOD f'Power-Down, filwaqt li tikteb żero żżomm il-BOD attiv. Is-setting default huwa żero, jiġifieri BOD attiv.
Il-kitba fil-bit BODS hija kkontrollata minn sekwenza f'waqtha u bit enable, ara “MCUCR – MCU Control Regis- ter” f’paġna 37.
Limitazzjonijiet
Il-funzjonalità tad-diżattivazzjoni tal-BOD ġiet implimentata fl-apparati li ġejjin, biss:
ATtiny25, reviżjoni E, u aktar ġodda
ATtiny45, reviżjoni D, u aktar ġodda
ATtiny85, reviżjoni Ċ, u aktar ġodda
Ir-reviżjonijiet huma mmarkati fuq il-pakkett tal-apparat u jistgħu jinstabu kif ġej:
In-naħa t'isfel tal-pakketti 8P3 u 8S2
In-naħa ta 'fuq tal-pakkett 20M1
Reġistru għat-Tnaqqis tal-Enerġija
Ir-Reġistru għat-Tnaqqis tal-Enerġija (PRR), ara “PRR – Reġistru għat-Tnaqqis tal-Enerġija” f’paġna 38, jipprovdi metodu biex jitnaqqas il-konsum tal-enerġija billi twaqqaf l-arloġġ għal periferali individwali. L-istat attwali tal-periferali huwa ffriżat u r-reġistri I/O ma jistgħux jinqraw jew jinkitbu. Ir-riżorsi użati mill-periferali meta jwaqqaf l-arloġġ se jibqgħu okkupati, għalhekk il-periferali fil-biċċa l-kbira tal-każijiet għandu jiġi diżattivat qabel ma jwaqqaf l-arloġġ. Il-qawmien ta 'modulu, li jsir billi jitneħħa l-bit fil-PRR, ipoġġi l-modulu fl-istess stat bħal qabel l-għeluq.
L-għeluq tal-modulu jista 'jintuża fil-modalità Idle u fil-modalità Attiva biex jitnaqqas b'mod sinifikanti l-konsum ġenerali tal-enerġija. Fil-modi ta 'rqad l-oħra kollha, l-arloġġ huwa diġà mwaqqaf. Ara “Kurrent ta’ Provvista ta’ moduli I/O” f’paġna 177 per examples.
Minimizzazzjoni tal-Konsum tal-Enerġija
Hemm diversi kwistjonijiet li għandek tikkonsidra meta tipprova timminimizza l-konsum tal-enerġija f'sistema kkontrollata AVR. B'mod ġenerali, il-modi ta 'rqad għandhom jintużaw kemm jista' jkun, u l-mod ta 'rqad għandu jintgħażel sabiex l-inqas possibbli mill-funzjonijiet tal-apparat ikunu qed joperaw. Il-funzjonijiet kollha mhux meħtieġa għandhom ikunu diżattivati. B'mod partikolari, il-moduli li ġejjin jistgħu jeħtieġu konsiderazzjoni speċjali meta jippruvaw jiksbu l-inqas konsum ta 'enerġija possibbli.
Konvertitur Analoġiku għal Diġitali
Jekk ikun attivat, l-ADC se jkun attivat fil-modi kollha ta' sleep. Biex tiffranka l-enerġija, l-ADC għandu jiġi diżattivat qabel ma jidħol fi kwalunkwe modalità sleep. Meta l-ADC jintefa u jerġa 'jinxtegħel, il-konverżjoni li jmiss tkun konverżjoni estiża. Irreferi għal “Konvertitur minn Analog għal Diġitali” f’paġna 122 għal dettalji dwar l-operazzjoni ADC.
Komparatur Analoġiku
Meta tidħol fil-modalità Idle, il-Komparatur Analog għandu jiġi diżattivat jekk ma jintużax. Meta tidħol fil-modalità tat-Tnaqqis tal-Ħsejjes ADC, il-Komparatur Analog għandu jkun diżattivat. Fil-modi ta 'rqad l-oħra, il-Komparatur Analog huwa awtomatikament diżattivat. Madankollu, jekk il-Komparatur Analog huwa stabbilit biex juża l-Vol Interntage Referenza bħala input, il-Komparatur Analog għandu jiġi diżattivat fil-modi kollha ta' sleep. Inkella, il-Vol Interntage Referenza se tkun attivata, indipendentement mill-modalità sleep. Irreferi għal “Komparatur Analoġiku” f’paġna 119 għal dettalji dwar kif tikkonfigura l-Komparatur Analog.
Ditekter kannella
Jekk id-Detector Brown-out ma jkunx meħtieġ fl-applikazzjoni, dan il-modulu għandu jintefa. Jekk id-Detector Brown-out huwa attivat mill-Fjusijiet BODLEVEL, ikun attivat fil-modi ta 'rqad kollha, u għalhekk, dejjem jikkunsmaw l-enerġija. Fil-modi ta 'rqad aktar profond, dan se jikkontribwixxi b'mod sinifikanti għall-konsum totali tal-kurrent. Ara “Detezzjoni ta’ Brown-out zjoni” f’paġna 41 u “Software BOD Disable” f’paġna 35 għal dettalji dwar kif tikkonfigura d-Detector Brown-out.
Vol Interntage Referenza
Il-Vol Interntage Ir-referenza tkun attivata meta meħtieġa mill-Kroxx ta' Brown-out, il-Komparatur Analog jew l-ADC. Jekk dawn il-moduli huma diżattivati kif deskritt fit-taqsimiet hawn fuq, il-vol interntagIr-referenza se tkun diżattivata u mhux se tkun qed tikkonsma l-enerġija. Meta jinxtegħel mill-ġdid, l-utent għandu jippermetti li r-referenza tibda qabel ma tintuża l-output. Jekk ir-referenza tinżamm fil-modalità sleep, l-output jista 'jintuża immedjatament. Irreferi għal “Vol Interntage Referenza” f’paġna 42 għal dettalji dwar il-ħin tal-bidu.
Watchdog Timer
Jekk il-Watchdog Timer ma jkunx meħtieġ fl-applikazzjoni, dan il-modulu għandu jintefa. Jekk il-Watchdog Timer ikun attivat, ikun attivat fil-modi kollha ta' sleep, u għalhekk, dejjem jikkunsmaw l-enerġija. Fil-modi ta 'rqad aktar profond, dan se jikkontribwixxi b'mod sinifikanti għall-konsum totali tal-kurrent. Irreferi għal “Watchdog Timer” f’paġna 42 għal dettalji dwar kif tikkonfigura l-Watchdog Timer.
Pinnijiet tal-Port
Meta tidħol fil-modalità sleep, il-brilli tal-port kollha għandhom ikunu kkonfigurati biex jużaw qawwa minima. L-iktar ħaġa importanti hija mbagħad li jiġi żgurat li l-ebda pinn ma jsuqu tagħbijiet reżistenti. Fil-modi sleep fejn kemm l-arloġġ I/O (clkI/O) kif ukoll l-arloġġ ADC (clkADC) jitwaqqfu, il-buffers tal-input tal-apparat se jkunu diżattivati. Dan jiżgura li l-ebda enerġija ma tiġi kkunsmata
mill-loġika tal-input meta ma jkunx meħtieġ. F'xi każijiet, il-loġika tal-input hija meħtieġa għall-iskoperta ta 'kundizzjonijiet ta' tqum, u
imbagħad ikun attivat. Irreferi għat-taqsima “Modi ta’ Attivazzjoni u Rieqed tad-Input Diġitali” f’paġna 57 għal dettalji dwar liema pinnijiet huma attivati. Jekk il-buffer tad-dħul huwa attivat u s-sinjal tad-dħul jitħalla f'wiċċ l-ilma jew għandu livell ta 'sinjal analogu qrib VCC/2, il-buffer tad-dħul se juża qawwa eċċessiva.
Għall-pinnijiet tal-input analogu, il-buffer tad-dħul diġitali għandu jkun diżattivat il-ħin kollu. Livell ta 'sinjal analogu qrib VCC/2 fuq pin ta' input jista 'jikkawża kurrent sinifikanti anki fil-modalità attiva. Il-buffers tal-input diġitali jistgħu jiġu diżattivati billi tikteb fir-Reġistru ta' Disable Input Diġitali (DIDR0). Irreferi għal “DIDR0 – Input Diġitali Disable Reġistru 0” f’paġna 121 għad-dettalji.
Deskrizzjoni tar-Reġistru
MCUCR – Reġistru tal-Kontroll tal-MCU
Ir-Reġistru tal-Kontroll tal-MCU fih bits ta 'kontroll għall-ġestjoni tal-enerġija.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | BODS | PUD | SE | SM1 | SM0 | BODSE | ISC01 | ISC00 | MCUCR |
Aqra/Ikteb | R | R/W | R/W | R/W | R/W | R | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit 7 – BODS: BOD Sleep
Il-funzjonalità tad-diżattivazzjoni tal-BOD hija disponibbli biss f'xi apparati. Ara “Limitazzjonijiet” f’paġna 36.
Sabiex jiġi diżattivat BOD waqt l-irqad (ara Tabella 7-1 f’paġna 34) il-bit BODS għandu jinkiteb għal waħda loġika. Dan huwa kkontrollat minn sekwenza f'waqtha u l-enable bit, BODSE f'MCUCR. L-ewwel, kemm BODS kif ukoll BODSE għandhom ikunu ssettjati għal wieħed. It-tieni, fi żmien erba 'ċikli tal-arloġġ, BODS għandu jkun issettjat għal wieħed u BODSE għandu jiġi ssettjat għal żero. Il-bit BODS huwa attiv tliet ċikli tal-arloġġ wara li jiġi ssettjat. Istruzzjoni ta 'rqad trid tiġi eżegwita waqt li BODS ikun attiv sabiex il-BOD jitfi għall-modalità ta' rqad attwali. Il-bit BODS jitneħħa awtomatikament wara tliet ċikli tal-arloġġ.
F'apparati fejn Sleeping BOD ma ġiex implimentat dan il-bit mhuwiex użat u dejjem se jaqra żero.
Bit 5 – SE: Ippermetti l-Irqad
Il-bit SE għandu jinkiteb f'wieħed loġiku biex l-MCU jidħol fil-modalità sleep meta tiġi eżegwita l-istruzzjoni SLEEP. Biex tevita li l-MCU jidħol fil-modalità sleep sakemm ma jkunx l-iskop tal-programmatur, huwa rakkomandat li tikteb il-bit Sleep Enable (SE) għal wieħed eżatt qabel l-eżekuzzjoni tal-istruzzjoni SLEEP u biex tneħħiha immedjatament wara li tqum.
Bits 4:3 – SM[1:0]: Modalità Sleep Agħżel Bits 1 u 0
Dawn il-bits jagħżlu bejn it-tliet modi ta 'rqad disponibbli kif muri fi Tabella 7-2.
Tabella 7-2. Agħżel il-Modalità Sleep
SM1 | SM0 | Modalità Sleep |
0 | 0 | Idle |
0 | 1 | Tnaqqis tal-Ħsejjes ADC |
1 | 0 | Qawwa 'l isfel |
1 | 1 | Riżervat |
Bit 2 – BODSE: BOD Sleep Enable
Il-funzjonalità tad-diżattivazzjoni tal-BOD hija disponibbli biss f'xi apparati. Ara “Limitazzjonijiet” f’paġna 36.
Il-bit BODSE jippermetti l-issettjar tal-bit tal-kontroll BODS, kif spjegat fid-deskrizzjoni tal-bit BODS. Id-diżattivazzjoni tal-BOD hija kkontrollata minn sekwenza bil-ħin.
Dan il-bit mhuwiex użat f'apparati fejn is-software BOD disable ma ġiex implimentat u se jinqara bħala żero f'dawk l-apparati.
PRR – Reġistru għat-Tnaqqis tal-Enerġija
Ir-Reġistru tat-Tnaqqis tal-Enerġija jipprovdi metodu biex jitnaqqas il-konsum tal-enerġija billi jippermetti li s-sinjali tal-arloġġ periferali jiġu diżattivati.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x20 | – | – | – | – | PRTIM1 | PRTIM0 | PRUSI | PRADC | PRR |
Aqra/Ikteb | R | R | R | R | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bits 7:4 - Riż: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bit 3 – PRTIM1: Timer/Counter1 għat-Tnaqqis tal-Enerġija
Il-kitba ta' waħda loġika għal dan il-bit tagħlaq il-modulu Timer/Counter1. Meta l-Timer/Counter1 ikun attivat, l-operat se jkompli bħal qabel l-għeluq.
Bit 2 – PRTIM0: Timer/Counter0 għat-Tnaqqis tal-Enerġija
Il-kitba ta' waħda loġika għal dan il-bit tagħlaq il-modulu Timer/Counter0. Meta l-Timer/Counter0 ikun attivat, l-operat se jkompli bħal qabel l-għeluq.
Bit 1 – PRUSI: Tnaqqis tal-Enerġija USI
Il-kitba ta 'waħda loġika għal dan il-bit tagħlaq l-USI billi twaqqaf l-arloġġ għall-modulu. Meta terġa 'tqum l-USI, l-USI għandu jerġa' jiġi inizjalizzat biex jiġi żgurat tħaddim tajjeb.
Bit 0 – PRADC: Tnaqqis tal-Enerġija ADC
Il-kitba ta' waħda loġika għal dan il-bit tagħlaq l-ADC. L-ADC għandu jiġi diżattivat qabel ma jintefa. Innota li l-arloġġ ADC jintuża wkoll minn xi partijiet tal-komparatur analogu, li jfisser li l-komparatur analogu ma jistax jintuża meta dan il-bit ikun għoli.
Kontroll tas-Sistema u Reset
Irrisettjar l-AVR
Matul ir-reset, ir-Reġistri I/O kollha huma ssettjati għall-valuri inizjali tagħhom, u l-programm jibda l-eżekuzzjoni mill-Vettur Irrisettja. L-istruzzjoni mqiegħda fir-Reset Vector għandha tkun RJMP – Relative Jump – istruzzjoni għar-rutina tal-immaniġġjar tar-reset. Jekk il-programm qatt ma jippermetti sors ta' interruzzjoni, il-Vetturi ta' Interruzzjoni ma jintużawx, u l-kodiċi tal-programm regolari jista' jitqiegħed f'dawn il-postijiet. Id-dijagramma taċ-ċirkwit fil Figura 8-1 juri l-loġika ta' reset. Parametri elettriċi taċ-ċirkwiti reset huma mogħtija fi “Karatteristiċi tas-Sistema u Reset” f’paġna 165.
Figura 8-1 Irrisettja l-Loġika
Il-portijiet tal-I/O tal-AVR jiġu ssettjati mill-ġdid immedjatament għall-istat inizjali tagħhom meta sors ta' reset isir attiv. Dan ma jeħtieġ l-ebda sors ta 'arloġġ li jkun qed jaħdem.
Wara li s-sorsi kollha ta 'reset ikunu inattivi, jiġi invokat kontur ta' dewmien, li jiġġebbed ir-reset intern. Dan jippermetti li l-qawwa tilħaq livell stabbli qabel ma tibda l-operat normali. Il-perjodu ta' time-out tal-counter tad-dewmien huwa definit mill-utent permezz tal-Fjusijiet SUT u CKSEL. L-għażliet differenti għall-perjodu ta' dewmien huma ppreżentati fi “Arloġġ Sorsi” f’paġna 25.
Irrisettja Sorsi
L-ATtiny25/45/85 għandu erba' sorsi ta' reset:
Irrisettja Power-on. L-MCU huwa reset meta l-provvista voltage huwa taħt il-limitu tal-Power-on Reset (VPOT).
Irrisettja Esterni. L-MCU jiġi reset meta jkun preżenti livell baxx fuq il-pin RESET għal itwal mit-tul minimu tal-polz.
Irrisettja l-Għassa. L-MCU jiġi reset meta jiskadi l-perjodu tal-Watchdog Timer u l-Watchdog ikun attivat.
Irrisettja l-kannella. L-MCU huwa reset meta l-provvista voltagIl-VCC huwa taħt il-limitu ta' Reset ta' Brown-out (VBOT) u d-Detector ta' Brown-out huwa attivat.
Irrisettja Power-on
A polz ta 'Power-on Reset (POR) huwa ġġenerat minn ċirkwit ta' skoperta On-chip. Il-livell ta' skoperta huwa definit fi “Sistema- tem u Reset Karatteristiċi” f’paġna 165. Il-POR jiġi attivat kull meta VCC ikun taħt il-livell ta' skoperta. Iċ-ċirkwit POR jista 'jintuża biex jiskatta r-Reset tal-Istartjar, kif ukoll biex jiskopri nuqqas fil-provvista voltage.
Ċirkwit Power-On Reset (POR) jiżgura li l-apparat jiġi reset minn Power-On. Jintlaħaq il-limitu ta' Irrisettjar tal-Power-On voltage jinvoka l-counter tad-dewmien, li jiddetermina kemm l-apparat jinżamm f'RESET wara li jiżdied il-VCC. Is-sinjal RESET jerġa' jiġi attivat, mingħajr dewmien, meta VCC jonqos taħt il-livell ta' skoperta.
Figura 8-2. Start-up tal-MCU, RESET Marbut ma' VCC
RESET INTERN
Figura 8-3. MCU Start-up, RESET Estiża Esternament
Irrisettja Esterni
Irrisettjar Estern huwa ġġenerat minn livell baxx fuq il-pin RESET jekk ikun attivat. Irrisettja l-impulsi itwal mill-wisa' minimu tal-polz (ara “Karatteristiċi tas-Sistema u Reset” f’paġna 165) se jiġġenera reset, anki jekk l-arloġġ ma jkunx qed jaħdem. Impuls iqsar mhumiex garantiti li jiġġeneraw reset. Meta s-sinjal applikat jilħaq il-Valur Reset Threshold Voltage – VRST – fuq ix-xifer pożittiv tiegħu, il-counter tad-dewmien jibda l-MCU wara li jkun skada l-perjodu ta’ Time-out.
Figura 8-4. Irrisettja Esterna Waqt l-Operazzjoni
Sejbien ta' kannella
ATtiny25/45/85 għandu ċirkwit On-chip Brown-out Detection (BOD) għall-monitoraġġ tal-livell VCC waqt it-tħaddim billi jitqabbel ma 'livell ta' trigger fiss. Il-livell ta' grillu għall-BOD jista' jintgħażel mill-Fjusijiet BODLEVEL. Il-livell tal-grillu għandu isteresi biex jiżgura skoperta ta' Brown-out bla spike. L-isteresi fuq il-livell ta' skoperta għandha tiġi interpretata bħala VBOT+ = VBOT + VHYST/2 u VBOT- = VBOT – VHYST/2.
Meta l-BOD ikun attivat, u VCC jonqos għal valur taħt il-livell ta’ trigger (VBOT-in Figura 8-5), ir-Reset Brown-out jiġi attivat immedjatament. Meta VCC jiżdied 'il fuq mil-livell ta' grillu (VBOT+ in Figura 8-5), il-counter tad-dewmien jibda l-MCU wara li l-perjodu ta' Time-out tTOUT ikun skada.
Iċ-ċirkwit BOD jiskopri biss tnaqqis fil-VCC jekk il-voltage jibqa' taħt il-livell ta' grillu għal aktar minn tBOD mogħti fi “Karatteristiċi tas-Sistema u Reset” f’paġna 165.
Irrisettja l-Għassa
Meta l-Watchdog jispiċċa, se jiġġenera polz ta' reset qasir ta' tul ta' ċiklu CK wieħed. Fuq ix-xifer ta' dan il-polz, it-tajmer tad-dewmien jibda jgħodd il-perjodu ta' Time-out tTOUT. Irreferi għal “Watchdog Timer” f’paġna 42 għal dettalji dwar it-tħaddim tal-Watchdog Timer.
Voltage Reference Enable Signals and Start-up Time
Il-voltagIr-referenza għandha ħin tal-bidu li jista' jinfluwenza l-mod kif għandha tintuża. Il-ħin tal-bidu jingħata fi “Karatteristiċi tas-Sistema u Reset” f’paġna 165. Biex tiffranka l-enerġija, ir-referenza mhux dejjem tinxtegħel. Ir-referenza hija mixgħula matul is-sitwazzjonijiet li ġejjin:
Meta l-BOD ikun attivat (bil-programmazzjoni tal-BODLEVEL[2:0] Fuse Bits).
Meta r-referenza tal-bandgap tkun imqabbda mal-Komparatur Analog (billi tissettja l-bit ACBG f'ACSR).
Meta l-ADC ikun attivat.
Għalhekk, meta l-BOD ma jkunx attivat, wara li ssettja l-bit ACBG jew li jippermetti l-ADC, l-utent għandu dejjem jippermetti li r-referenza tibda qabel ma tintuża l-output mill-Komparatur Analog jew ADC. Biex jitnaqqas il-konsum tal-enerġija fil-modalità Power-down, l-utent jista 'jevita t-tliet kundizzjonijiet ta' hawn fuq biex jiżgura li r-referenza tintefa qabel ma tidħol fil-modalità Power-down.
Watchdog Timer
Il-Watchdog Timer huwa mqabbad minn Oxxillatur On-chip li jaħdem f'128 kHz. Billi tikkontrolla l-Prescaler tal-Watchdog Timer, l-intervall tal-Watchdog Reset jista’ jiġi aġġustat kif muri fi Tabella 8-3 f’paġna 46. L-istruzzjoni WDR – Watchdog Reset – tirrisettja l-Watchdog Timer. Il-Watchdog Timer jiġi reset ukoll meta jkun diżattivat u meta jseħħ Chip Reset. Jistgħu jintgħażlu għaxar perjodi ta 'ċiklu ta' arloġġ differenti biex jiddeterminaw il-perjodu ta 'reset. Jekk il-perjodu ta' reset jiskadi mingħajr Watchdog Reset ieħor, l-ATtiny25/45/85 jerġa 'jissettja u jesegwixxi mill-Reset Vector. Għal dettalji dwar il-ħin dwar il-Watchdog Reset, irreferi għal Tabella 8-3 f’paġna 46.
Il-Watchdog Timer jista 'jiġi kkonfigurat ukoll biex jiġġenera interruzzjoni minflok reset. Dan jista’ jkun ta’ għajnuna kbira meta tuża l-Watchdog biex tqum minn Power-down.
Biex tiġi evitata d-diżattivazzjoni mhux intenzjonata tal-Watchdog jew bidla mhux intenzjonata tal-perjodu ta’ time-out, jintgħażlu żewġ livelli ta’ sikurezza differenti mill-fjus WDTON kif muri f’ Tabella 8-1 Irreferi għal “Sekwenzi bil-ħin għall-Bidla tal-Kon- figurazzjoni tal- Watchdog Timer” f’paġna 43 għad-dettalji.
Tabella 8-1. Konfigurazzjoni WDT bħala Funzjoni tas-Settings tal-Fjus tal-WDTON
WDTON | Livell ta' Sigurtà | WDT Stat Inizjali | Kif tiddiżattiva l-WDT | Kif tibdel Time-out |
Mhux programmat | 1 | B'diżabilità | Sekwenza bil-ħin | Ebda limitazzjonijiet |
Ipprogrammat | 2 | Ippermettiet | Dejjem attivat | Sekwenza bil-ħin |
Figura 8-7. Watchdog Timer
Sekwenzi Timed għall-Bidla tal-Konfigurazzjoni tal-Watchdog Timer
Is-sekwenza għall-bdil tal-konfigurazzjoni tvarja kemmxejn bejn iż-żewġ livelli ta' sikurezza. Proċeduri separati huma deskritti għal kull livell.
Livell ta 'Sigurtà 1: F'dan il-mod, il-Watchdog Timer huwa inizjalment diżattivat, iżda jista' jiġi attivat billi tikteb il-bit WDE għal wieħed mingħajr ebda restrizzjoni. Sekwenza bil-ħin hija meħtieġa meta jiġi diżattivat Watchdog Timer attivat. Biex tiddiżattiva Watchdog Timer attivat, trid tiġi segwita l-proċedura li ġejja:
Fl-istess operazzjoni, ikteb waħda loġika għal WDCE u WDE. Wieħed loġiku għandu jinkiteb lil WDE irrispettivament mill-valur preċedenti tal-bit WDE.
Fi ħdan l-erba 'ċikli ta' l-arloġġ li jmiss, fl-istess operazzjoni, ikteb il-bits WDE u WDP kif mixtieq, iżda bil-bit WDCE mneħħi.
Livell ta' Sigurtà 2: F'dan il-mod, il-Watchdog Timer huwa dejjem attivat, u l-bit WDE dejjem jinqara bħala wieħed. Sekwenza bil-ħin hija meħtieġa meta jinbidel il-perjodu ta' Time-out tal-Watchdog. Biex tbiddel il-Watchdog Time-out, trid tiġi segwita l-proċedura li ġejja:
Fl-istess operazzjoni, ikteb waħda loġika għal WDCE u WDE. Anke jekk il-WDE dejjem ikun issettjat, il-WDE għandu jinkiteb lil wieħed biex tibda s-sekwenza bil-ħin.
Fi ħdan l-erba 'ċikli ta' l-arloġġ li jmiss, fl-istess operazzjoni, ikteb il-bits WDP kif mixtieq, iżda bil-bit WDCE mneħħi. Il-valur miktub fil-bit WDE huwa irrilevanti.
Kodiċi Eżample
Il-kodiċi li ġej example turi assemblaġġ wieħed u funzjoni C waħda għat-tifi tal-WDT. L-example tassumi li l-interruzzjonijiet huma kkontrollati (eż. billi l-interruzzjonijiet jiġu diżattivati globalment) sabiex ma jseħħu l-ebda interruzzjoni waqt l-eżekuzzjoni ta' dawn il-funzjonijiet.
Kodiċi tal-Assemblea Eżample(1) |
WDT_off:
wdr ; Ċara WDRF fl-MCUSR ldi r16, (0< barra MCUSR, r16 ; Ikteb wieħed loġiku għal WDCE u WDE ; Żomm issettjar antik tal-prescaler biex tevita Reset tal-Watchdog mhux intenzjonat f'r16, WDTCR ori r16, (1< barra WDTCR, r16 ; Itfi WDT ldi r16, (0< barra WDTCR, r16 ret |
C Kodiċi Eżample(1) |
null WDT_off(void)
{ _WDR(); /* Ċara WDRF f'MCUSR */ MCUSR = 0x00 /* Ikteb wieħed loġiku għal WDCE u WDE */ WDTCR |= (1< /* Itfi WDT */ WDTCR = 0x00; } |
Nota: 1. Ara “Kodiċi Eżamples ”f’paġna 6.
Deskrizzjoni tar-Reġistru
MCUSR – Reġistru tal-Istatus tal-MCU
Ir-Reġistru tal-Istatus tal-MCU jipprovdi informazzjoni dwar liema sors ta’ reset ikkawża Reset tal-MCU.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x34 | – | – | – | – | WDRF | BORF | EXTRF | PORF | MCUSR |
Aqra/Ikteb | R | R | R | R | R/W | R/W | R/W | R/W |
Valur Inizjali 0 0 0 0 Ara d-Deskrizzjoni tal-Bit
Bits 7:4 - Riż: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bit 3 – WDRF: Watchdog Irrisettja Bandiera
Dan il-bit jiġi ssettjat jekk iseħħ Reset tal-Watchdog. Il-bit huwa reset permezz ta 'Power-on Reset, jew billi tikteb żero loġiku fuq il-bandiera.
Bit 2 – BORF: Bandiera Irrisettja Kannella
Dan il-bit jiġi ssettjat jekk isseħħ Reset Brown-out. Il-bit huwa reset permezz ta 'Power-on Reset, jew billi tikteb żero loġiku fuq il-bandiera.
Bit 1 – EXTRF: Bandiera Reset Esterna
Dan il-bit huwa ssettjat jekk isseħħ Reset Estern. Il-bit huwa reset permezz ta 'Power-on Reset, jew billi tikteb żero loġiku fuq il-bandiera.
Bit 0 – PORF: Irrisettja l-Bandiera ta' Power-On
Dan il-bit huwa ssettjat jekk iseħħ Reset tal-Power-on. Il-bit jiġi reset biss billi tikteb żero loġiku fuq il-bandiera.
Biex tagħmel użu mill-Bnadar Irrisettja biex tidentifika kundizzjoni ta 'reset, l-utent għandu jaqra u mbagħad reset l-MCUSR kemm jista' jkun kmieni fil-programm. Jekk ir-reġistru jitneħħa qabel ma jseħħ reset ieħor, is-sors tar-reset jista 'jinstab billi jiġu eżaminati l-Bnadar Reset.
WDTCR – Reġistru tal-Kontroll tal-Watchdog Timer
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x21 | WDIF | WDIE | WDP3 | WDCE | WDE | WDP2 | WDP1 | WDP0 | WDTCR |
Aqra/Ikteb | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | X | 0 | 0 | 0 |
Bit 7 – WDIF: Bandiera ta' Interruzzjoni tal-Watchdog Timeout
Dan il-bit jiġi ssettjat meta jseħħ time-out fil-Watchdog Timer u l-Watchdog Timer jiġi kkonfigurat għal interruzzjoni. WDIF jitneħħa mill-ħardwer meta tesegwixxi l-vettur tal-immaniġġjar tal-interruzzjoni korrispondenti. Inkella, WDIF jitneħħa billi tikteb waħda loġika fuq il-bandiera. Meta l-I-bit f'SREG u WDIE jiġu ssettjati, tiġi esegwita l-Interruzzjoni tal-Watchdog Time-out.
Bit 6 – WDIE: Watchdog Timeout Interrupt Enable
Meta dan il-bit jinkiteb f'wieħed, WDE jitneħħa, u l-I-bit fir-Reġistru tal-Istatus jiġi ssettjat, il-Watchdog Time-out Interrupt hija attivata. F'din il-modalità l-interruzzjoni korrispondenti tiġi eżegwita minflok reset jekk iseħħ timeout fil-Watchdog Timer.
Jekk WDE huwa ssettjat, WDIE jitneħħa awtomatikament mill-ħardwer meta jseħħ time-out. Dan huwa utli biex tinżamm is-sigurtà tal-Watchdog Reset waqt li tuża l-interruzzjoni. Wara li l-bit WDIE jitneħħa, il-time-out li jmiss se jiġġenera reset. Biex tevita l-Watchdog Reset, WDIE għandu jiġi ssettjat wara kull interruzzjoni.
Tabella 8-2. Konfigurazzjoni tal-Watchdog Timer
WDE | WDIE | L-Istat tal-Watchdog Timer | Azzjoni dwar Time-out |
0 | 0 | Waqqaf | Xejn |
0 | 1 | Running | Tinterrompi |
1 | 0 | Running | Irrisettja |
1 | 1 | Running | Tinterrompi |
Bit 4 – WDCE: Watchdog Bidla Attiva
Dan il-bit għandu jiġi ssettjat meta l-bit WDE jinkiteb għal żero loġiku. Inkella, il-Watchdog mhux se jkun diżattivat. Ladarba jinkiteb lil wieħed, il-ħardwer jitneħħa dan il-bit wara erba' ċikli tal-arloġġ. Irreferi għad-deskrizzjoni tal-bit WDE għal proċedura ta' diżattivazzjoni tal-Watchdog. Dan il-bit għandu jkun issettjat ukoll meta jinbidlu l-bits tal-prescaler. Ara “Sekwenzi Timed għall-Bidla tal-Konfigurazzjoni tal-Watchdog Timer” f’paġna 43.
Bit 3 – WDE: Watchdog Enable
Meta l-WDE jinkiteb f'wieħed loġiku, il-Watchdog Timer huwa attivat, u jekk il-WDE jinkiteb fuq iż-żero loġiku, il-funzjoni Watchdog Timer hija diżattivata. WDE jista 'jiġi kklerjat biss jekk il-bit WDCE għandu livell loġiku wieħed. Biex tiddiżattiva Watchdog Timer attivat, trid tiġi segwita l-proċedura li ġejja:
Fl-istess operazzjoni, ikteb waħda loġika għal WDCE u WDE. Wieħed loġiku għandu jinkiteb lil WDE minkejja li huwa ssettjat għal wieħed qabel ma tibda l-operazzjoni tad-diżattivazzjoni.
Fi ħdan l-erba 'ċikli ta' l-arloġġ li jmiss, ikteb 0 loġiku għal WDE. Dan iwaqqaf il-Watchdog.
Fil-livell ta' sikurezza 2, mhuwiex possibbli li l-Watchdog Timer jiġi diżattivat, anki bl-algoritmu deskritt hawn fuq. Ara “Sekwenzi Timed għall-Bidla tal-Konfigurazzjoni tal-Watchdog Timer” f’paġna 43.
Fil-livell ta' sikurezza 1, WDE jinqabeż minn WDRF f'MCUSR. Ara “MCUSR – Reġistru tal-Istatus tal-MCU” f’paġna 44 għad-deskrizzjoni tal-WDRF. Dan ifisser li WDE huwa dejjem issettjat meta WDRF ikun issettjat. Biex jitneħħa WDE, WDRF għandu jiġi kklerjat qabel ma l-Watchdog jiġi diżattivat bil-proċedura deskritta hawn fuq. Din il-karatteristika tiżgura resets multipli waqt kundizzjonijiet li jikkawżaw falliment, u bidu sikur wara l-falliment.
Nota: Jekk il-watchdog timer mhux se jintuża fl-applikazzjoni, huwa importanti li tgħaddi minn proċedura watchdog disable fl-inizjalizzazzjoni tal-apparat. Jekk il-Watchdog huwa attivat aċċidentalment, per eżempjuample minn punter runaway jew kundizzjoni ta 'kannella, l-apparat se jiġi reset, li mbagħad iwassal għal reset watchdog ġdid. Biex tiġi evitata din is-sitwazzjoni, is-softwer tal-applikazzjoni għandu dejjem ineħħi l-bandiera WDRF u l-bit tal-kontroll WDE fir-rutina tal-inizjalizzazzjoni.
Bits 5, 2:0 – WDP[3:0]: Watchdog Timer Prescaler 3, 2, 1, u 0
Il-bits WDP[3:0] jiddeterminaw il-Prescaling tal-Watchdog Timer meta l-Watchdog Timer ikun attivat. Il-valuri differenti tal-prescaling u l-Perjodi ta' Timeout korrispondenti tagħhom huma murija fi Tabella 8-3.
Tabella 8-3. Watchdog Timer Prescale Select
WDP3 | WDP2 | WDP1 | WDP0 | Numru ta' Ċikli ta' Oxxillatur WDT | Time-out tipiku f'VCC = 5.0V |
0 | 0 | 0 | 0 | 2K (2048) ċikli | 16 ms |
0 | 0 | 0 | 1 | 4K (4096) ċikli | 32 ms |
0 | 0 | 1 | 0 | 8K (8192) ċikli | 64 ms |
0 | 0 | 1 | 1 | 16K (16384) ċikli | 0.125 s |
0 | 1 | 0 | 0 | 32K (32764) ċikli | 0.25 s |
0 | 1 | 0 | 1 | 64K (65536) ċikli | 0.5 s |
0 | 1 | 1 | 0 | 128K (131072) ċikli | 1.0 s |
0 | 1 | 1 | 1 | 256K (262144) ċikli | 2.0 s |
1 | 0 | 0 | 0 | 512K (524288) ċikli | 4.0 s |
1 | 0 | 0 | 1 | 1024K (1048576) ċikli | 8.0 s |
Tabella 8-3. Watchdog Timer Agħżel tal-Preskala (Ikompli)
WDP3 | WDP2 | WDP1 | WDP0 | Numru ta' Ċikli ta' Oxxillatur WDT | Time-out tipiku f'VCC = 5.0V |
1 | 0 | 1 | 0 | Riżervat(1) | |
1 | 0 | 1 | 1 | ||
1 | 1 | 0 | 0 | ||
1 | 1 | 0 | 1 | ||
1 | 1 | 1 | 0 | ||
1 | 1 | 1 | 1 |
Nota: 1. Jekk jintgħażel, se tintuża waħda mis-settings validi taħt 0b1010.
Tinterrompi
Din it-taqsima tiddeskrivi l-ispeċifiċitajiet tal-immaniġġjar tal-interruzzjoni kif imwettaq f'ATtiny25/45/85. Għal spjegazzjoni ġenerali tal-immaniġġjar tal-interruzzjoni tal-AVR, irreferi għal “Reset u Interrupt Handling” f’paġna 12.
Interrompi Vectors f'ATtiny25/45/85
Il-vettori tal-interruzzjoni ta 'ATtiny25/45/85 huma deskritti fi Tabella 9-1hawn taħt.
Tabella 9-1. Irrisettja u Interrupt Vectors
Vector Nru. | Indirizz tal-Programm | Sors | Definizzjoni ta' Interruzzjoni |
1 | 0x0000 | RESET | Pin Esterni, Irrisettjar li jinxtegħel, Irrisettja l-kannella, Irrisettja l-Għassa |
2 | 0x0001 | INT0 | Talba ta' Interruzzjoni Esterna 0 |
3 | 0x0002 | PCINT0 | Talba ta' Interruzzjoni tal-Bidla tal-Pin 0 |
4 | 0x0003 | TIMER1_COMPA | Timer/Counter1 Qabbel Match A |
5 | 0x0004 | TIMER1_OVF | Timer/Counter1 Overflow |
6 | 0x0005 | TIMER0_OVF | Timer/Counter0 Overflow |
7 | 0x0006 | EE_RDY | EEPROM Lest |
8 | 0x0007 | ANA_COMP | Komparatur Analoġiku |
9 | 0x0008 | ADC | Konverżjoni ADC Tlesti |
10 | 0x0009 | TIMER1_COMPB | Timer/Counter1 Qabbel Match B |
11 | 0x000A | TIMER0_COMPA | Timer/Counter0 Qabbel Match A |
12 | 0x000B | TIMER0_COMPB | Timer/Counter0 Qabbel Match B |
13 | 0x000C | WDT | Time-out tal-Għassa |
14 | 0x000D | USI_START | BIDU USI |
15 | 0x000E | USI_OVF | USI Overflow |
Jekk il-programm qatt ma jippermetti sors ta' interruzzjoni, il-Vetturi ta' Interruzzjoni ma jintużawx, u l-kodiċi tal-programm regolari jista' jitqiegħed f'dawn il-postijiet.
Setup tipiku u ġenerali għall-indirizzi tal-vettur tal-interruzzjoni f'ATtiny25/45/85 tidher fil-programm example hawn taħt.
Kodiċi tal-Assemblea Eżample | ||
.org 0x0000 | ;Issettja l-indirizz ta 'li jmiss | dikjarazzjoni |
rjmp RESET | ; Indirizz 0x0000 | |
rjmp INT0_ISR | ; Indirizz 0x0001 | |
rjmp PCINT0_ISR | ; Indirizz 0x0002 | |
rjmp TIM1_COMPA_ISR | ; Indirizz 0x0003 | |
rjmp TIM1_OVF_ISR | ; Indirizz 0x0004 | |
rjmp TIM0_OVF_ISR | ; Indirizz 0x0005 | |
rjmp EE_RDY_ISR | ; Indirizz 0x0006 | |
rjmp ANA_COMP_ISR | ; Indirizz 0x0007 | |
rjmp ADC_ISR | ; Indirizz 0x0008 | |
rjmp TIM1_COMPB_ISR | ; Indirizz 0x0009 | |
rjmp TIM0_COMPA_ISR | ; Indirizz 0x000A | |
rjmp TIM0_COMPB_ISR | ; Indirizz 0x000B | |
rjmp WDT_ISR | ; Indirizz 0x000C | |
rjmp USI_START_ISR | ; Indirizz 0x000D | |
rjmp USI_OVF_ISR | ; Indirizz 0x000E | |
RESET: | ; Bidu tal-programm prinċipali | |
; Indirizz 0x000F | ||
… |
Nota: Ara “Kodiċi Eżamples ”f’paġna 6.
Interruzzjonijiet Esterni
L-Interruzzjonijiet Esterni huma attivati mill-pin INT0 jew kwalunkwe pinnijiet PCINT[5:0]. Osserva li, jekk ikun attivat, l-interruzzjonijiet jibdew anki jekk il-pinnijiet INT0 jew PCINT[5:0] huma kkonfigurati bħala outputs. Din il-karatteristika tipprovdi mod kif tiġġenera interruzzjoni tas-softwer. Il-bidla tal-pin tinterrompi l-PCI se tiskatta jekk xi pin PCINT[5:0] attivat jinbidel. Ir-Reġistru PCMSK jikkontrolla liema pinnijiet jikkontribwixxu għall-interruzzjonijiet tal-bidla tal-brilli. L-interruzzjonijiet tal-bidla tal-pin fuq PCINT[5:0] jiġu skoperti b'mod asinkroniku. Dan jimplika li dawn l-interruzzjonijiet jistgħu jintużaw biex il-parti tqum ukoll minn modi sleep minbarra l-mod Idle.
L-interruzzjonijiet INT0 jistgħu jiġu attivati minn xifer li jinżel jew li jogħla jew livell baxx. Dan huwa stabbilit kif indikat fl-ispeċifikazzjoni għar-Reġistru tal-Kontroll tal-MCU – MCUCR. Meta l-interruzzjoni INT0 tkun attivata u kkonfigurata bħala livell triggered, l-interruzzjoni se tibda sakemm il-pin jinżamm baxx. Innota li r-rikonoxximent ta’ interruzzjonijiet tax-xifer li nieżla jew li qed jogħlew fuq INT0 jeħtieġ il-preżenza ta’ arloġġ I/O, deskritt f’ “Sistemi tal-Arloġġ u d-Distribuzzjoni tagħhom” fuq paġna 23.
Interruzzjoni ta' Livell Baxx
Interruzzjoni ta' livell baxx fuq INT0 tiġi skoperta b'mod asinkroniku. Dan jimplika li din l-interruzzjoni tista' tintuża biex il-parti tqum ukoll minn modi sleep minbarra l-mod Idle. L-arloġġ tal-I/O jitwaqqaf fil-modi kollha ta' sleep ħlief fil-modalità Idle.
Innota li jekk tintuża interruzzjoni attivata minn livell għall-qawmien mill-Qawwa 'l isfel, il-livell meħtieġ għandu jinżamm għal żmien twil biżżejjed biex l-MCU itemm il-qawmien biex jibda l-interruzzjoni tal-livell. Jekk il-livell jisparixxi qabel it-tmiem tal-Ħin tal-Bidu, l-MCU xorta se jqum, iżda l-ebda interruzzjoni ma tiġi ġġenerata. Il-ħin tal-bidu huwa definit mill-Fjusijiet SUT u CKSEL kif deskritt fi “Għażliet tal-Arloġġ tas-Sistema u tal-Arloġġ” f’paġna 23.
Jekk il-livell baxx fuq il-pin tal-interruzzjoni jitneħħa qabel ma l-apparat ikun qam allura l-eżekuzzjoni tal-programm ma tiġix devjata għar-rutina tas-servizz tal-interruzzjoni iżda tkompli mill-istruzzjoni wara l-kmand SLEEP.
Pin Change Interrupt Timing
Eżampil-ħin ta’ interruzzjoni tal-bdil tal-brilli jidher fi Figura 9-1.
Deskrizzjoni tar-Reġistru
MCUCR – Reġistru tal-Kontroll tal-MCU
Ir-Reġistru ta' Kontroll ta' Interruzzjoni Esterna A fih bits ta' kontroll għall-kontroll tas-sens ta' interruzzjoni.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | BODS | PUD | SE | SM1 | SM0 | BODSE | ISC01 | ISC00 | MCUCR |
Aqra/Ikteb | R | R/W | R/W | R/W | R/W | R | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bits 1:0 – ISC0[1:0]: Interrupt Sense Control 0 Bit 1 u Bit 0
L-Interruzzjoni Esterna 0 hija attivata mill-pin estern INT0 jekk il-bandiera SREG I u l-maskra ta 'interruzzjoni korrispondenti huma ssettjati. Il-livell u t-truf fuq il-pin estern INT0 li jattivaw l-interruzzjoni huma definiti fi Tabella 9-2. Il-valur fuq il-pin INT0 huwa sampwassal qabel is-sejba tat-truf. Jekk jintgħażel interruzzjoni tat-tarf jew toggle, impulsi li jdumu aktar minn perjodu wieħed tal-arloġġ jiġġeneraw interruzzjoni. Impuls iqsar mhumiex garantiti li jiġġeneraw interruzzjoni. Jekk tintgħażel interruzzjoni ta 'livell baxx, il-livell baxx għandu jinżamm sakemm titlesta l-istruzzjoni li qed teżegwixxi bħalissa biex tiġġenera interruzzjoni.
Tabella 9-2. Interrompi 0 Kontroll tas-Sens
ISC01 | ISC00 | Deskrizzjoni |
0 | 0 | Il-livell baxx ta' INT0 jiġġenera talba ta' interruzzjoni. |
0 | 1 | Kwalunkwe bidla loġika fuq INT0 tiġġenera talba ta' interruzzjoni. |
1 | 0 | Ix-xifer li jaqa' ta' INT0 jiġġenera talba ta' interruzzjoni. |
1 | 1 | Ix-xifer li jogħlew ta' INT0 jiġġenera talba ta' interruzzjoni. |
GIMSK – Reġistru Ġenerali tal-Maskri tal-Interruzzjoni
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x3B | – | INT0 | PCIe | – | – | – | – | – | GIMSK |
Aqra/Ikteb | R | R/W | R/W | R | R | R | R | R | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bits 7, 4:0 – Res: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bit 6 – INT0: Talba ta' Interruzzjoni Esterna 0 Attiva
Meta l-bit INT0 jiġi ssettjat (wieħed) u l-bit I fir-Reġistru tal-Istatus (SREG) jiġi ssettjat (wieħed), l-interruzzjoni tal-pin esterna tkun attivata. L-Interrupt Sense Control0 bits 1/0 (ISC01 u ISC00) fir-Reġistru tal-Kontroll tal-MCU (MCUCR) jiddefinixxu jekk l-interruzzjoni esterna hijiex attivata mat-tarf li qed jogħlew u/jew nieżel tal-pin INT0 jew il-livell sensat. L-attività fuq il-pin tikkawża talba ta' interruzzjoni anki jekk INT0 ikun ikkonfigurat bħala output. L-interruzzjoni korrispondenti tat-Talba ta' Interruzzjoni Esterna 0 tiġi esegwita mill-Vettur ta' Interruzzjoni INT0.
Bit 5 – PCIE: Pin Change Interrupt Enable
Meta l-bit PCIE jiġi ssettjat (wieħed) u l-I-bit fir-Reġistru tal-Istatus (SREG) ikun issettjat (wieħed), l-interruzzjoni tal-bidla tal-pin hija attivata. Kwalunkwe bidla fuq kwalunkwe pin PCINT[5:0] attivata tikkawża interruzzjoni. L-interruzzjoni korrispondenti tat-Talba tal-Interruzzjoni tal-Bidla tal-Pin hija esegwita mill-Vector tal-Interruzzjoni tal-PCI. Il-pinnijiet PCINT[5:0] huma attivati individwalment mir-Reġistru PCMSK0.
GIFR – Reġistru Ġenerali tal-Bandiera tal-Interruzzjoni
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x3A | – | INTF0 | PCIF | – | – | – | – | – | GIFR |
Aqra/Ikteb | R | R/W | R/W | R | R | R | R | R | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bits 7, 4:0 – Res: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bit 6 – INTF0: Bandiera ta' Interruzzjoni Esterna 0
Meta xifer jew bidla loġika fuq il-pin INT0 iqanqal talba ta' interruzzjoni, INTF0 isir issettjat (wieħed). Jekk l-I-bit f'SREG u l-bit INT0 f'GIMSK huma ssettjati (wieħed), l-MCU se jaqbeż għall-Vettur Interrupt korrispondenti. Il-bandiera titneħħa meta tiġi eżegwita r-rutina tal-interruzzjoni. Inkella, il-bandiera tista' titneħħa billi tikteb waħda loġika magħha. Din il-bandiera dejjem titneħħa meta INT0 jiġi kkonfigurat bħala interruzzjoni ta' livell.
Bit 5 – PCIF: Pin Change Interrupt Flag
Meta bidla loġika fuq kwalunkwe pin PCINT[5:0] iqanqal talba ta' interruzzjoni, PCIF isir issettjat (wieħed). Jekk l-I-bit f'SREG u l-bit PCIE f'GIMSK huma ssettjati (wieħed), l-MCU se jaqbeż għall-Interrupt Vector korrispondenti. Il-bandiera titneħħa meta tiġi eżegwita r-rutina tal-interruzzjoni. Inkella, il-bandiera tista' titneħħa billi tikteb waħda loġika magħha.
PCMSK – Reġistru tal-Maskri tal-Bidla tal-Pin
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x15 | – | – | PCINT5 | PCINT4 | PCINT3 | PCINT2 | PCINT1 | PCINT0 | PCMSK |
Aqra/Ikteb | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bits 7:6 - Riż: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bits 5:0 – PCINT[5:0]: Pin Change Enable Mask 5:0
Kull PCINT[5:0] bit jagħżel jekk l-interruzzjoni tal-bidla tal-pin hijiex attivata fuq il-pin I/O korrispondenti. Jekk PCINT[5:0] huwa ssettjat u l-bit PCIE f'GIMSK huwa ssettjat, l-interruzzjoni tal-bidla tal-pin hija attivata fuq il-pin I/O korrispondenti. Jekk PCINT[5:0] jitneħħa, l-interruzzjoni tal-bidla tal-pin fuq il-pin I/O korrispondenti hija diżattivata.
Portijiet I/O
Introduzzjoni
Il-portijiet AVR kollha għandhom funzjonalità vera Aqra-Immodifika-Kitba meta jintużaw bħala portijiet I/O diġitali ġenerali. Dan ifisser li d-direzzjoni ta 'pin tal-port wieħed tista' tinbidel mingħajr ma tinbidel b'mod mhux intenzjonat id-direzzjoni ta 'xi pin ieħor bl-istruzzjonijiet SBI u CBI. L-istess japplika meta jinbidel il-valur tas-sewqan (jekk ikkonfigurat bħala output) jew l-attivazzjoni/diżattivazzjoni tar-resistors pull-up (jekk ikkonfigurat bħala input). Kull buffer tal-ħruġ għandu karatteristiċi ta 'sewqan simetriku kemm b'kapaċità għolja ta' sink kif ukoll ta 'sors. Is-sewwieq tal-pin huwa b'saħħtu biżżejjed biex isuq displays LED direttament. Il-pinnijiet tal-port kollha għandhom resistors pull-up li jistgħu jintgħażlu individwalment bi provvista-voltage reżistenza invarjanti. Il-pinnijiet I/O kollha għandhom dajowds ta’ protezzjoni kemm għall-VCC kif ukoll għall-Ground kif indikat fi Figura 10-1. Irreferi għal “Karatteristiċi elettriċi” f’paġna 161 għal lista kompleta ta' parametri.
Figura 10-1. Skematika Ekwivalenti tal-Pin I/O
Ir-reġistri kollha u r-referenzi tal-bit f'din it-taqsima huma miktuba f'forma ġenerali. "x" minusura tirrappreżenta l-ittra tan-numerazzjoni għall-port, u minusura "n" tirrappreżenta n-numru tal-bit. Madankollu, meta tuża r-reġistru jew id-definizzjoni tal-bit fi programm, trid tintuża l-forma preċiża. Per example, PORTB3 għal bit no. 3 fil-Port B, hawnhekk iddokumentat b'mod ġenerali bħala PORTxn. Ir-Reġistri fiżiċi tal-I/O u l-postijiet tal-bit huma elenkati fi “Reġistru Deskrizzjoni” fuq paġna 64.
Tliet postijiet tal-indirizz tal-memorja tal-I/O huma allokati għal kull port, wieħed kull wieħed għar-Reġistru tad-Dejta – PORTx, Reġistru tad-Direzzjoni tad-Data – DDRx, u l-Pinjiet tal-Input tal-Port – PINx. Il-post tal-I/O tal-Port Input Pins jinqara biss, filwaqt li r-Reġistru tad-Data u r-Reġistru tad-Direzzjoni tad-Data jinqraw/kitbu. Madankollu, il-kitba ta' waħda loġika għal bit fir-Reġistru PINx, tirriżulta f'toggle fil-bit korrispondenti fir-Reġistru tad-Dejta. Barra minn hekk, il-pull-up Disable - PUD bit f'MCUCR tiddiżattiva l-funzjoni pull-up għall-brilli kollha fil-portijiet kollha meta ssettjata.
L-użu tal-port I/O bħala I/O Diġitali Ġenerali huwa deskritt fi “Portijiet bħala I/O Diġitali Ġenerali” f’paġna 53. Il-biċċa l-kbira tal-pinnijiet tal-port huma multiplexati b'funzjonijiet alternattivi għall-karatteristiċi periferali fuq l-apparat. Kif kull funzjoni alternattiva tinterferixxi mal-pin tal-port huwa deskritt fi “Funzjonijiet tal-Port Alternattivi” f’paġna 57. Irreferi għat-taqsimiet tal-moduli individwali għal deskrizzjoni sħiħa tal-funzjonijiet alternattivi.
Innota li l-attivazzjoni tal-funzjoni alternattiva ta 'wħud mill-labar tal-port ma taffettwax l-użu tal-brilli l-oħra fil-port bħala I/O diġitali ġenerali.
Portijiet bħala I/O Diġitali Ġenerali
Il-portijiet huma portijiet I/O bi-direzzjonali b'pull-ups interni fakultattivi. Figura 10-2 turi deskrizzjoni funzjonali ta' pin wieħed tal-port I/O, hawnhekk imsejjaħ ġenerikament Pxn.
Figura 10-2. I/O Diġitali Ġenerali(1)
Konfigurazzjoni tal-Pin
Kull pin tal-port jikkonsisti fi tliet bits tar-reġistru: DDxn, PORTxn, u PINxn. Kif muri fi “Reġistru Deskrizzjoni” fuq paġna 64, il-bits DDxn huma aċċessati fl-indirizz I/O DDRx, il-bits PORTxn fl-indirizz I/O PORTx, u l-bits PINxn fl-indirizz I/O PINx.
Il-bit DDxn fir-Reġistru DDRx jagħżel id-direzzjoni ta 'dan il-pin. Jekk DDxn huwa miktub wieħed loġiku, Pxn huwa kkonfigurat bħala pin tal-ħruġ. Jekk DDxn huwa miktub żero loġiku, Pxn huwa kkonfigurat bħala pin tad-dħul.
Jekk PORTxn huwa miktub wieħed loġiku meta l-pin huwa kkonfigurat bħala pin ta 'input, ir-reżistenza tal-ġibda hija attivata. Biex titfi r-reżistenza tal-ġibda, PORTxn irid jinkiteb żero loġiku jew il-pin irid jiġi kkonfigurat bħala pin tal-ħruġ. Il-pinnijiet tal-port huma tri-ddikjarati meta l-kundizzjoni ta 'reset issir attiva, anki jekk l-ebda arloġġ ma jkun qed jaħdem.
Jekk PORTxn jinkiteb loġika waħda meta l-pin huwa kkonfigurat bħala pin tal-ħruġ, il-pin tal-port huwa mmexxi għoli (wieħed). Jekk PORTxn huwa miktub żero loġiku meta l-pin huwa kkonfigurat bħala pin tal-ħruġ, il-pin tal-port huwa misjuq baxx (żero).
Taqleb il-Pin
Il-kitba ta' waħda loġika għal PINxn tbiddel il-valur ta' PORTxn, indipendenti mill-valur ta' DDRxn. Innota li l-istruzzjoni SBI tista 'tintuża biex taqleb bit wieħed f'port.
Qlib bejn Input u Output
Meta taqleb bejn tri-state ({DDxn, PORTxn} = 0b00) u output għoli ({DDxn, PORTxn} = 0b11), stat intermedju bi jew pull-up attivat {DDxn, PORTxn} = 0b01) jew output baxx ({DDxn, PORTxn} = 0b10) irid iseħħ. Normalment, l-istat attivat tal-ġibda huwa kompletament aċċettabbli, peress li ambjent ta 'impedant għoli mhux se jinnota d-differenza bejn sewwieq għoli qawwi u pull-up. Jekk dan ma jkunx il-każ, il-bit PUD fir-Reġistru MCUCR jista 'jiġi ssettjat biex jiskonnettja l-pull-ups kollha fil-portijiet kollha.
Taqleb bejn input b'pull-up u output baxx jiġġenera l-istess problema. L-utent għandu juża jew it-tri-state ({DDxn, PORTxn} = 0b00) jew l-output stat għoli ({DDxn, PORTxn} = 0b10) bħala pass intermedju.
Tabella 10-1 jiġbor fil-qosor is-sinjali tal-kontroll għall-valur tal-pin.
Tabella 10-1. Konfigurazzjonijiet tal-Pin tal-Port
DDxn | PORTxn | PUD
(f'MCUCR) |
I/O | Pull-up | Ikkummenta |
0 | 0 | X | Input | Nru | Tri-stati (Hi-Z) |
0 | 1 | 0 | Input | Iva | Pxn se sors kurrenti jekk ext. miġbud baxx. |
0 | 1 | 1 | Input | Nru | Tri-stati (Hi-Z) |
1 | 0 | X | Output | Nru | Output Baxxa (sink) |
1 | 1 | X | Output | Nru | Output Għoli (Sors) |
Qari tal-Valur tal-Pin
Indipendenti mill-issettjar tal-bit tad-Direzzjoni tad-Data DDxn, il-pin tal-port jista 'jinqara permezz tal-bit tar-Reġistru PINxn. Kif muri fi Figura 10-2, il-bit tar-Reġistru PINxn u l-lukkett preċedenti jikkostitwixxu sinkronizzatur. Dan huwa meħtieġ biex tiġi evitata metastabbiltà jekk il-pin fiżiku jibdel il-valur ħdejn it-tarf tal-arloġġ intern, iżda jintroduċi wkoll dewmien. Figura 10-3 turi dijagramma taż-żmien tas-sinkronizzazzjoni meta taqra valur tal-pin applikat esternament. Id-dewmien massimu u minimu ta' propagazzjoni huma indikati tpd,max u tpd,min rispettivament.
Ikkunsidra l-perjodu tal-arloġġ li jibda ftit wara l-ewwel tarf li jinżel tal-arloġġ tas-sistema. Il-lukkett jingħalaq meta l-arloġġ ikun baxx, u jmur trasparenti meta l-arloġġ ikun għoli, kif indikat mir-reġjun sfumat tas-sinjal "SYNC LATCH". Il-valur tas-sinjal huwa maqful meta l-arloġġ tas-sistema jinżel baxx. Huwa mqabbad fir-Reġistru PINxn fit-tarf ta' l-arloġġ pożittiv ta' wara. Kif indikat miż-żewġ vleġeġ tpd,max u tpd,min, transizzjoni ta' sinjal wieħed fuq il-pin se tittardja bejn ½ u 1½ perjodu tal-arloġġ tas-sistema skont il-ħin tal-affermazzjoni.
Meta taqra lura valur tal-pin tas-softwer assenjat, għandha tiddaħħal struzzjoni nop kif indikat fi Figura 10-4. L-istruzzjoni 'l barra tissettja s-sinjal "SYNC LATCH" fit-tarf pożittiv tal-arloġġ. F'dan il-każ, id-dewmien tpd permezz tas-sinkronizzatur huwa perjodu wieħed ta 'arloġġ tas-sistema.
Il-kodiċi li ġej example juri kif issettja l-pinnijiet tal-port B 0 u 1 għolja, 2 u 3 baxxi, u tiddefinixxi l-brilli tal-port minn 4 sa 5 bħala input b'pull-up assenjat lill-pin tal-port 4. Il-valuri tal-pinn li jirriżultaw jerġgħu jinqraw lura, iżda kif diskuss qabel, struzzjoni nop hija inkluża biex tkun tista 'taqra lura l-valur assenjat reċentement lil xi wħud mill-brilli.
Kodiċi tal-Assemblea Eżample(1) |
…
; Iddefinixxi pull-ups u sett outputs għolja ; Iddefinixxi direzzjonijiet għall-labar tal-port ldi r16,(1<<PB4)|(1<<PB1)|(1<<PB0) ldi r17,(1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0) barra PORTB,r16 barra DDRB,r17 ; Daħħal nop għas-sinkronizzazzjoni nop ; Aqra l-brilli tal-port f'r16, PINB … |
Nota: Għall-programm tal-assemblaġġ, jintużaw żewġ reġistri temporanji biex jimminimizzaw il-ħin minn pull-ups huma ssettjati fuq il-brilli 0, 1 u 4, sakemm il-bits tad-direzzjoni jiġu ssettjati b'mod korrett, jiddefinixxu bit 2 u 3 bħala baxxi u jiddefinixxu mill-ġdid bits 0 u 1 bħala sewwieqa għolja qawwija.
C Kodiċi Eżample |
char i mhux iffirmat;
… /* Iddefinixxi pull-ups u ssettja outputs għoljin */ /* Iddefinixxi direzzjonijiet għal pins tal-port */ PORTB = (1< DDRB = (1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0); /* Daħħal nop għas-sinkronizzazzjoni*/ _NOP(); /* Aqra labar tal-port */ i = PINB; … |
Input Diġitali Enable u Modalità Sleep
Kif muri fi Figura 10-2, is-sinjal tad-dħul diġitali jista 'jkun clamped għall-art fid-dħul tal-schmitt-trigger. Is-sinjal indikat SLEEP fil-figura, huwa stabbilit mill-MCU Sleep Controller fil-modalità Power-down biex jiġi evitat konsum għoli ta 'enerġija jekk xi sinjali ta' input jitħallew f'wiċċ l-ilma, jew ikollhom livell ta 'sinjal analogu qrib VCC/2.
SLEEP huwa overridut għal pins tal-port attivati bħala pinnijiet ta' interruzzjoni esterni. Jekk it-talba ta' interruzzjoni esterna ma tkunx attivata, SLEEP huwa attiv ukoll għal dawn il-brilli. SLEEP huwa wkoll sostitwit minn diversi funzjonijiet alternattivi oħra kif deskritt fi “Funzjonijiet tal-Port Alternattivi” f’paġna 57.
Jekk livell għoli ta’ loġika (“wieħed”) ikun preżenti fuq pin ta’ interruzzjoni esterna asinkronika kkonfigurat bħala “Interruzzjoni fuq Xifer li Jogħla, Xifer li Jaqa’, jew Kwalunkwe Bidla Loġika fuq Pin” waqt li l-interruzzjoni esterna ma tkunx attivata, il-Bandiera ta’ Interruzzjoni Esterna korrispondenti se jiġi ssettjat meta jerġa' jibda mill-modalità Sleep imsemmija hawn fuq, kif il-clamping f'dawn il-modalità sleep jipproduċi l-bidla loġika mitluba.
Pinnijiet mhux konnessi
Jekk xi labar ma jintużawx, huwa rakkomandat li jiġi żgurat li dawn il-brilli jkollhom livell definit. Anke jekk ħafna mill-inputs diġitali huma diżattivati fil-modi ta 'rqad fil-fond kif deskritt hawn fuq, l-inputs f'wiċċ l-ilma għandhom jiġu evitati biex jitnaqqas il-konsum tal-kurrent fil-modi l-oħra kollha fejn l-inputs diġitali huma attivati (Reset, Modalità Attiva u Modalità Idle).
L-aktar metodu sempliċi biex jiġi żgurat livell definit ta 'pin mhux użat, huwa li jippermetti l-ġbid intern. F'dan il-każ, il-pull-up se jkun diżattivat waqt ir-reset. Jekk konsum baxx ta 'enerġija waqt ir-reset huwa importanti, huwa rakkomandat li tuża pull-up jew pulldown estern. Il-konnessjoni ta' pins mhux użati direttament ma' VCC jew GND mhix rakkomandata, peress li dan jista' jikkawża kurrenti eċċessivi jekk il-pin jiġi kkonfigurat aċċidentalment bħala output.
Funzjonijiet Alternattivi tal-Port
Il-biċċa l-kbira tal-pinnijiet tal-port għandhom funzjonijiet alternattivi minbarra li huma I/Os diġitali ġenerali. Figura 10-5 turi kif is-sinjali tal-kontroll tal-pin tal-port mis-simplifikata Figura 10-2 jistgħu jiġu sostitwiti minn funzjonijiet alternattivi. Is-sinjali prevalenti jistgħu ma jkunux preżenti fil-labar tal-port kollha, iżda l-figura sservi bħala deskrizzjoni ġenerika applikabbli għall-brilli tal-port kollha fil-familja tal-mikrokontrolluri AVR.
Tabella 10-2. Deskrizzjoni Ġenerika ta' Sinjali Prevalenti għal Funzjonijiet Alternattivi
Isem tas-Sinjal | Isem Sħiħ | Deskrizzjoni |
PUOE | Jippermetti l-Ibbilanċjar | Jekk dan is-sinjal jiġi ssettjat, il-pull-up enable hija kkontrollata mis-sinjal PUOV. Jekk dan is-sinjal jitneħħa, il-pull-up huwa attivat meta
{DDxn, PORTxn, PUD} = 0b010. |
PUOV | Valur ta' Override ta' Pull-up | Jekk PUOE huwa ssettjat, il-pull-up huwa attivat/diżattivat meta PUOV jiġi ssettjat/ikklerjat, irrispettivament mill-issettjar tal-bits tar-Reġistru DDxn, PORTxn, u PUD. |
DDOE | Id-Direzzjoni tad-Data Override Enable | Jekk dan is-sinjal jiġi ssettjat, l-Output Driver Enable hija kkontrollata mis-sinjal DDOV. Jekk dan is-sinjal jitneħħa, is-sewwieq tal-Output jiġi attivat mill-bit tar-Reġistru DDxn. |
DDOV | Valur ta' Prevalenza tad-Direzzjoni tad-Data | Jekk DDOE huwa ssettjat, is-Sewwieq tal-Output huwa attivat/diżattivat meta DDOV jiġi ssettjat/ikklerjat, irrispettivament mill-issettjar tal-bit tar-Reġistru DDxn. |
PVOE | Valur tal-Port Ippermettiet | Jekk dan is-sinjal jiġi ssettjat u l-Output Driver ikun attivat, il-valur tal-port huwa kkontrollat mis-sinjal PVOV. Jekk PVOE jitneħħa, u d-Driver tal-Output ikun attivat, il-Valur tal-port huwa kkontrollat mill-bit tar-Reġistru PORTxn. |
PVOV | Valur tal-Valur tal-Port Ikkalkola | Jekk PVOE huwa ssettjat, il-valur tal-port huwa ssettjat għal PVOV, irrispettivament mill-issettjar tal-bit tar-Reġistru PORTxn. |
PTOE | Port Toggle Override Enable | Jekk PTOE huwa ssettjat, il-bit tar-Reġistru PORTxn jiġi maqlub. |
DIEOE | L-Input Diġitali Jippermetti l-Ewwel Ippermettiet | Jekk dan il-bit jiġi ssettjat, l-Enable Input Diġitali hija kkontrollata mis-sinjal DIEOV. Jekk dan is-sinjal jitneħħa, id-Digital Input Enable hija determinata mill-istat MCU (modalità normali, modalità sleep). |
DIEOV | L-Input Diġitali Jippermetti l-Valur ta' Override | Jekk DIEOE huwa ssettjat, l-Input Diġitali huwa attivat/diżattivat meta DIEOV jiġi ssettjat/ikklerjat, irrispettivament mill-istat MCU (modalità normali, modalità sleep). |
DI | Input Diġitali | Dan huwa l-Input Diġitali għall-funzjonijiet alternanti. Fil-figura, is-sinjal huwa konness mal-output tal-schmitt-trigger iżda qabel is-sinkronizzatur. Sakemm l-Input Diġitali ma jintużax bħala sors ta 'arloġġ, il-modulu bil-funzjoni alternattiva se juża sinkronizzatur tiegħu stess. |
AIO | Input / Output Analogu | Dan huwa l-Input/Output Analog għal/minn funzjonijiet alternattivi. Is-sinjal huwa konness direttament mal-kuxxinett, u jista 'jintuża bi-direzzjonali. |
Is-subsezzjonijiet li ġejjin jiddeskrivu fil-qosor il-funzjonijiet alternattivi għal kull port, u jirrelataw is-sinjali prevalenti mal-funzjoni alternattiva. Irreferi għad-deskrizzjoni tal-funzjoni alternattiva għal aktar dettalji.
Funzjonijiet Alternattivi tal-Port B
Il-labar tal-Port B b'funzjoni alternattiva huma murija fi Tabella 10-3.
Tabella 10-3. Port B Pins Funzjonijiet Alternattivi
Pin tal-Port | Funzjoni Sostituta |
PB5 | ![]() RESET: Irrisettja Pin dW: debugWIRE I/O ADC0: ADC Input Channel 0 PCINT5: Interruzzjoni tal-Bidla tal-Pin, Sors 5 |
PB4 | XTAL2: Ħruġ tal-Oxxillatur tal-Kristall CLKO: Ħruġ tal-Arloġġ tas-Sistema ADC2: Kanal tal-Input ADC 2
OC1B: Timer/Counter1 Qabbel Match B Output PCINT4: Pin Change Interrupt 0, Sors 4 |
PB3 | XTAL1: Input tal-Oxxillatur tal-Kristall CLKI: Input Estern tal-Arloġġ ADC3: Kanal ta' Input ADC 3
OC1B: Timer/Counter1 Kumplimentari Qabbel Match B Output PCINT3: Interruzzjoni tal-Bidla tal-Pin 0, Sors 3 |
PB2 | SCK: Serial Clock Input ADC1: ADC Input Channel 1
T0: Timer/Counter0 Sors tal-Arloġġ USCK: Arloġġ USI (Modalità Tliet Wajers) SCL : Arloġġ USI (Modalità Żewġ Wajers) INT0: Interruzzjoni Esterna 0 Input PCINT2: Interruzzjoni tal-Bidla tal-Pin 0, Sors 2 |
PB1 | MISO: SPI Master Data Input / Slave Data Output AIN1: Komparatur Analog, Input Negattiv OC0B: Timer/Counter0 Qabbel Match B Output OC1A: Timer/Counter1 Qabbel Match A Output DO: USI Data Output (Three Wire Mode) PCINT1:Pin Change Interrupt 0, Sors 1 |
PB0 | MOSI:: SPI Master Data Output / Slave Data Input AIN0: Komparatur Analoġiku, Input Pożittiv
OC0A: Timer/Counter0 Qabbel l-output tal-Match A OC1A: Timer/Counter1 Kumplimentari Qabbel Match A Output DI: Input tad-Data USI (Modalità Tliet Wajers) SDA: Input tad-Data USI (Modalità Żewġ Wajers) AREF: Referenza Analoġika Esterna PCINT0: Interruzzjoni tal-Bidla tal-Pin 0, Sors 0 |
Port B, Bit 5 – RESET/dW/ADC0/PCINT5
RESET: L-input Estern Irrisettja huwa attiv baxx u attivat billi jitneħħa l-ipprogrammar (“1”) tal-Fjus RSTDISBL. Il-pullup jiġi attivat u s-sewwieq tal-output u l-input diġitali huma diżattivati meta l-pin jintuża bħala l-pin RESET.
dW: Meta d-debugWIRE Enable (DWEN) Fjus ikun ipprogrammat u l-Lock bits ma jkunux ipprogrammati, is-sistema debugWIRE fi ħdan l-apparat fil-mira tiġi attivata. Il-pin tal-port RESET huwa kkonfigurat bħala pin I/O bidirezzjonali tal-wajer-U (open-drain) b'pull-up attivat u jsir il-portal tal-komunikazzjoni bejn il-mira u l-emulatur.
ADC0: Konvertitur Analoġiku għal Diġitali, Kanal 0.
PCINT5: Pin Change Interrupt sors 5.
Port B, Bit 4 – XTAL2/CLKO/ADC2/OC1B/PCINT4
XTAL2: Pin 2 tal-Oxxillatur tal-Arloġġ taċ-Ċippa. Użat bħala pin tal-arloġġ għas-sorsi kollha tal-arloġġ taċ-ċippa ħlief Oxxillatur RC kalibrat intern u arloġġ estern. Meta jintuża bħala pin tal-arloġġ, il-pin ma jistax jintuża bħala pin I/O. Meta tuża Oxxillatur RC kalibrabbli intern jew arloġġ Estern bħala sorsi ta 'arloġġ taċ-Ċippa, PB4 iservi bħala pin I/O ordinarju.
CLKO: L-arloġġ tas-sistema diviż jista 'jiġi output fuq il-pin PB4. L-arloġġ tas-sistema diviż se joħroġ jekk il-Fjus CKOUT ikun ipprogrammat, irrispettivament mis-settings PORTB4 u DDB4. Se jkun ukoll output waqt ir-reset.
ADC2: Konvertitur Analoġiku għal Diġitali, Kanal 2.
OC1B: Output Qabbel Match output: Il-pin PB4 jista 'jservi bħala output estern għat-Timer/Counter1 Qabbel Match B meta kkonfigurat bħala output (sett DDB4). Il-pin OC1B huwa wkoll il-pin tal-ħruġ għall-funzjoni tat-tajmer tal-modalità PWM.
PCINT4: Pin Change Interrupt sors 4.
Port B, Bit 3 – XTAL1/CLKI/ADC3/OC1B/PCINT3
XTAL1: Pin 1 tal-Oxxillatur tal-Arloġġ taċ-Ċippa. Użat għas-sorsi kollha tal-arloġġ taċ-ċippa ħlief għall-oxxillatur RC kalibrat intern. Meta jintuża bħala pin ta 'l-arloġġ, il-pin ma jistax jintuża bħala pin I/O.
CLKI: Input tal-Arloġġ minn sors estern tal-arloġġ, ara “Arloġġ Estern” f’paġna 26.
ADC3: Konvertitur Analoġiku għal Diġitali, Kanal 3.
OC1B: Output Maqlub Qabbel Output: Il-pin PB3 jista 'jservi bħala output estern għat-Timer/Counter1 Qabbel Match B meta kkonfigurat bħala output (sett DDB3). Il-pin OC1B huwa wkoll il-pin tal-ħruġ maqlub għall-funzjoni tat-tajmer tal-modalità PWM.
PCINT3: Pin Change Interrupt sors 3.
Port B, Bit 2 – SCK/ADC1/T0/USCK/SCL/INT0/PCINT2
SCK: Output tal-Arloġġ Master, pin tad-dħul tal-Arloġġ Slave għall-kanal SPI. Meta l-SPI huwa attivat bħala Slav, dan il-pin huwa kkonfigurat bħala input irrispettivament mill-issettjar ta 'DDB2. Meta l-SPI jiġi attivat bħala Master, id-direzzjoni tad-dejta ta 'dan il-pin hija kkontrollata minn DDPB2. Meta l-pin huwa sfurzat mill-SPI biex ikun input, il-pull-up xorta jista 'jiġi kkontrollat mill-bit PORTB2.
ADC1: Konvertitur Analoġiku għal Diġitali, Kanal 1.
T0: Sors tal-kontro Timer/Counter0.
USCK: Arloġġ tal-Interfaċċa Serjali Universali tal-modalità bi tliet wajers.
SCL: Arloġġ tas-serje tal-modalità b'żewġ wajers għall-modalità b'żewġ wajers tal-USI.
INT0: Sors ta' Interruzzjoni Esterna 0.
PCINT2: Pin Change Interrupt sors 2.
Port B, Bit 1 – MISO/AIN1/OC0B/OC1A/DO/PCINT1
MISO: Master Data input, Slave Data output pin għall-kanal SPI. Meta l-SPI huwa attivat bħala Master, dan il-pin huwa kkonfigurat bħala input irrispettivament mill-issettjar ta 'DDB1. Meta l-SPI jiġi attivat bħala Slav, id-direzzjoni tad-dejta ta 'dan il-pin hija kkontrollata minn DDB1. Meta l-pin jiġi sfurzat mill-SPI biex ikun input, il-pull-up xorta jista 'jiġi kkontrollat mill-bit PORTB1.
AIN1: Input Negattiv tal-Komparatur Analoġiku. Ikkonfigura l-pin tal-port bħala input bil-pull-up intern mitfi biex tevita li l-funzjoni tal-port diġitali tinterferixxi mal-funzjoni tal-Komparatur Analog.
OC0B: Output Qabbel Match output. Il-pin PB1 jista 'jservi bħala output estern għat-Timer/Counter0 Qabbel Match B. Il-pin PB1 għandu jiġi kkonfigurat bħala output (sett DDB1 (wieħed)) biex iservi din il-funzjoni. Il-pin OC0B huwa wkoll il-pin tal-ħruġ għall-funzjoni tat-tajmer tal-modalità PWM.
OC1A: Output Qabbel Match output: Il-pin PB1 jista' jservi bħala output estern għat-Timer/Counter1 Compare Match B meta kkonfigurat bħala output (sett DDB1). Il-pin OC1A huwa wkoll il-pin tal-ħruġ għall-funzjoni tat-tajmer tal-modalità PWM.
DO: Ħruġ tad-Data tal-Interface Serial Universali bi tliet wajers. Modalità ta 'tliet wajers L-output tad-dejta jegħleb il-valur PORTB1 u huwa misjuq lejn il-port meta l-bit tad-direzzjoni tad-dejta DDB1 huwa ssettjat (wieħed). PORTB1 xorta jippermetti l-ġibda, jekk id-direzzjoni hija input u PORTB1 huwa ssettjat (wieħed).
PCINT1: Pin Change Interrupt sors 1.
Port B, Bit 0 – MOSI/AIN0/OC0A/OC1A/DI/SDA/AREF/PCINT0
MOSI: SPI Master Data output, Slave Data input għall-kanal SPI. Meta l-SPI huwa attivat bħala Slav, dan il-pin huwa kkonfigurat bħala input irrispettivament mill-issettjar ta 'DDB0. Meta l-SPI jiġi attivat bħala Master, id-direzzjoni tad-dejta ta 'dan il-pin hija kkontrollata minn DDB0. Meta l-pin jiġi sfurzat mill-SPI biex ikun input, il-pull-up xorta jista 'jiġi kkontrollat mill-bit PORTB0.
AIN0: Input Pożittiv tal-Komparatur Analoġiku. Ikkonfigura l-pin tal-port bħala input bil-pull-up intern mitfi biex tevita li l-funzjoni tal-port diġitali tinterferixxi mal-funzjoni tal-Komparatur Analog.
OC0A: Output Qabbel Match output. Il-pin PB0 jista 'jservi bħala output estern għat-Timer/Counter0 Qabbel Match A meta kkonfigurat bħala output (sett DDB0 (wieħed)). Il-pin OC0A huwa wkoll il-pin tal-ħruġ għall-funzjoni tat-tajmer tal-modalità PWM.
OC1A: Output Invertit Qabbel Output tal-Qabbel: Il-pin PB0 jista 'jservi bħala output estern għat-Timer/Counter1 Qabbel Match B meta kkonfigurat bħala output (sett DDB0). Il-pin OC1A huwa wkoll il-pin tal-ħruġ maqlub għall-funzjoni tat-tajmer tal-modalità PWM.
SDA: Dejta tal-Interfaċċa Serjali b'modalità b'żewġ wajers.
AREF: Referenza Analoġika Esterna għal ADC. Il-pullup u s-sewwieq tal-output huma diżattivati fuq PB0 meta l-pin jintuża bħala referenza esterna jew Vol Interntage Referenza b'kapaċitatur estern fil-pin AREF.
DI: Input tad-Data fil-modalità USI Three-wire. Il-modalità tal-USI Tliet wajers ma tegħlebx il-funzjonijiet normali tal-port, għalhekk il-pin għandu jiġi kkonfigurat bħala input għall-funzjoni DI.
PCINT0: Pin Change Interrupt sors 0.
Tabella 10-4 u Tabella 10-5 jirrelataw il-funzjonijiet alternattivi tal-Port B mas-sinjali prevalenti murija fi Figura 10-5 fuq paġna 58.
Tabella 10-4. Sinjali Prevalenti għal Funzjonijiet Alternattivi fil-PB[5:3]
Isem tas-Sinjal | PB5/RESET/ ADC0/PCINT5 | PB4/ADC2/XTAL2/ OC1B/PCINT4 | PB3/ADC3/XTAL1/ OC1B/PCINT3 |
PUOE | ![]() |
0 | 0 |
PUOV | 1 | 0 | 0 |
DDOE | RSTDISBL(1) • DWEN(1) | 0 | 0 |
DDOV | debugWire Trasmetti | 0 | 0 |
PVOE | 0 | OC1B Attiva | ![]() OC1B Attiva |
PVOV | 0 | OC1B | OC1B |
PTOE | 0 | 0 | 0 |
DIEOE | ![]() RSTDISBL(1) + (PCINT5 • PCIE + ADC0D) |
PCINT4 • PCIE + ADC2D | PCINT3 • PCIE + ADC3D |
DIEOV | ADC0D | ADC2D | ADC3D |
DI | Input PCINT5 | Input PCINT4 | Input PCINT3 |
AIO | Reset Input, ADC0 Input | Input ADC2 | Input ADC3 |
Nota: meta l-Fjus ikun “0” (Ipprogrammat).
Tabella 10-5. Sinjali Prevalenti għal Funzjonijiet Alternattivi fil-PB[2:0]
Isem tas-Sinjal | PB2/SCK/ADC1/T0/ USCK/SCL/INT0/PCINT2 | PB1/MISO/DO/AIN1/ OC1A/OC0B/PCINT1 | PB0/MOSI/DI/SDA/AIN0/AR EF/OC1A/OC0A/
PCINT0 |
PUOE | USI_TWO_WIRE | 0 | USI_TWO_WIRE |
PUOV | 0 | 0 | 0 |
DDOE | USI_TWO_WIRE | 0 | USI_TWO_WIRE |
DDOV | (USI_SCL_HOLD + PORTB2) • DDB2 | 0 | ![]() ![]() (SDA + PORTB0) • DDB0 |
PVOE | USI_TWO_WIRE • DDB2 | OC0B Enable + OC1A Enable + USI_THREE_WIRE | ![]() OC0A Enable + OC1A Enable + (USI_TWO_WIRE DDB0) |
PVOV | 0 | OC0B + OC1A + DO | ![]() OC0A + OC1A |
PTOE | USITC | 0 | 0 |
DIEOE | PCINT2 • PCIE + ADC1D + USISIE | PCINT1 • PCIE + AIN1D | PCINT0 • PCIE + AIN0D + USISIE |
DIEOV | ADC1D | AIN1D | AIN0D |
DI | T0/USCK/SCL/INT0/
Input PCINT2 |
Input PCINT1 | DI/SDA/PCINT0 Input |
AIO | Input ADC1 | Input Negattiv tal-Komparatur Analoġiku | Input Pożittiv tal-Komparatur Analoġiku |
Deskrizzjoni tar-Reġistru
MCUCR – Reġistru tal-Kontroll tal-MCU
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | BODS | PUD | SE | SM1 | SM0 | BODSE | ISC01 | ISC00 | MCUCR |
Aqra/Ikteb | R | R/W | R/W | R/W | R/W | R | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit 6 – PUD: Jiddgħajjef
Meta dan il-bit jinkiteb f'wieħed, il-pull-ups fil-portijiet I/O huma diżattivati anke jekk ir-Reġistri DDxn u PORTxn huma kkonfigurati biex jippermettu l-pull-ups ({DDxn, PORTxn} = 0b01). Ara “Konfigurazzjoni tal-Pin” f’paġna 54 għal aktar dettalji dwar din il-karatteristika.
PORTB – Reġistru tad-Dejta tal-Port B
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x18 | – | – | PORTB5 | PORTB4 | PORTB3 | PORTB2 | PORTB1 | PORTB0 | PORTB |
Aqra/Ikteb | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
DDRB – Reġistru tad-Direzzjoni tad-Dejta tal-Port B
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x17 | – | – | DDB5 | DDB4 | DDB3 | DDB2 | DDB1 | DDB0 | DDRB |
Aqra/Ikteb | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
PINB – Port B Input Pins Indirizz
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x16 | – | – | PINB5 | PINB4 | PINB3 | PINB2 | PINB1 | PINB0 | PINB |
Aqra/Ikteb | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
Valur Inizjali | 0 | 0 | N/A | N/A | N/A | N/A | N/A | N/A |
8-bit Timer/Counter0 b'PWM
Karatteristiċi
Żewġ Unitajiet ta' Qabbel ta' Output Indipendenti
Doppju Buffered Output Qabbel Reġistri
Ċara Timer fuq Qabbel Match (Auto Reload)
Modulatur Wisa' tal-Impuls (PWM) Ħieles minn Glitch, Fażi Korretta
Perjodu PWM Varjabbli
Ġeneratur tal-Frekwenza
Tliet Sorsi ta' Interruzzjoni Indipendenti (TOV0, OCF0A, u OCF0B)
Fuqview
Timer/Counter0 huwa modulu Timer/Counter ta 'għan ġenerali ta' 8-bit, b'żewġ Unitajiet ta 'Qabbel ta' Output indipendenti, u b'appoġġ PWM. Jippermetti ħin preċiż tal-eżekuzzjoni tal-programm (ġestjoni tal-avvenimenti) u ġenerazzjoni tal-mewġ.
Dijagramma ta' blokk simplifikata tat-Timer/Counter ta' 8 bits tidher fi Figura 11-1. Għat-tqegħid attwali tal-brilli I/O, irreferi għal “Pinout ATtiny25/45/85” f’paġna 2. Ir-Reġistri I/O aċċessibbli għas-CPU, inklużi l-bits tal-I/O u l-brilli tal-I/O, huma murija b'tipa grassa. Ir-Reġistru tal-I/O speċifiku għall-apparat u l-postijiet tal-bit huma elenkati fil- “Deskrizzjoni tar-Reġistru” f’paġna 77.
Il-Timer/Counter (TCNT0) u r-Reġistri ta' Qabbel tal-Output (OCR0A u OCR0B) huma reġistri ta' 8 bits. Is-sinjali tat-talba ta' interruzzjoni (imqassra għal Int.Req. fil-figura) huma kollha viżibbli fir-Reġistru tal-Bandiera ta' Interruzzjoni ta' Timer (TIFR). L-interruzzjonijiet kollha huma mgħottija individwalment bir-Reġistru tal-Maskra tal-Interruzzjoni tat-Timer (TIMSK). TIFR u TIMSK mhumiex murija fil-figura.
It-Timer/Counter jista 'jiġi mqabbad internament, permezz tal-prescaler, jew minn sors ta' arloġġ estern fuq il-pin T0. Il-blokk loġiku Agħżel l-Arloġġ jikkontrolla liema sors u tarf tal-arloġġ juża t-Timer/Kontro biex iżid (jew inaqqas) il-valur tiegħu. It-Tajmer/Kontro huwa inattiv meta ma jintgħażel l-ebda sors tal-arloġġ. L-output mil-loġika tal-Għażla tal-Arloġġ jissejjaħ l-arloġġ tat-tajmer (clkT0).
Ir-Reġistri tal-Qabbel tal-Output doppju buffered (OCR0A u OCR0B) jitqabblu mal-valur Timer/Counter f'kull ħin. Ir-riżultat tat-tqabbil jista' jintuża mill-Waveform Generator biex jiġġenera output ta' PWM jew frekwenza varjabbli fuq il-pinnijiet Qabbel Output (OC0A u OC0B). Ara “Unità ta’ Qabbel tal-Output” f’paġna 69. għad-dettalji. L-avveniment Qabbel Match se jistabbilixxi wkoll il-Bandiera Qabbel (OCF0A jew OCF0B) li tista 'tintuża biex tiġġenera talba ta' interruzzjoni ta' Qabbel ta' Output.
Definizzjonijiet
Ħafna referenzi tar-reġistru u tal-bit f'din it-taqsima huma miktuba f'forma ġenerali. "n" minusura tissostitwixxi n-numru tat-Tajmer/Kontro, f'dan il-każ 0. "x" żgħira tissostitwixxi l-Unità Qabbel Output, f'dan il-każ Qabbel Unità A jew Qabbel Unità B. Madankollu, meta tuża r-reġistru jew il-bit jiddefinixxi fi programm, il-forma preċiża għandha tintuża, jiġifieri, TCNT0 għall-aċċess għall-valur tal-counter Timer/Counter0 u l-bqija.
Id-definizzjonijiet fi Tabella 11-1 jintużaw ukoll b'mod estensiv fid-dokument kollu.
Tabella 11-1. Definizzjonijiet
Kostanti | Deskrizzjoni |
QIEGĦ | Il-counter jilħaq BOTTOM meta jsir 0x00 |
MAX | Il-counter jilħaq il-MAXimum tiegħu meta jsir 0xFF (deċimali 255) |
TOP | Il-counter jilħaq il-TOP meta jsir ugwali għall-ogħla valur fis-sekwenza tal-għadd. Il-valur TOP jista 'jiġi assenjat biex ikun il-valur fiss 0xFF (MAX) jew il-valur maħżun fir-Reġistru OCR0A. L-assenjazzjoni tiddependi fuq il-mod ta 'operazzjoni |
Timer/Counter Prescaler u Sorsi tal-Arloġġ
Il-Timer/Counter jista 'jiġi mqabbad minn sors ta' arloġġ intern jew estern. Is-sors tal-arloġġ jintgħażel mil-loġika tal-Għażla tal-Arloġġ li hija kkontrollata mill-bits tal-Għażla tal-Arloġġ (c) li jinsabu fir-Reġistru tal-Kontroll tal-Timer/Counter0 (TCCR0B).
Sors Intern tal-Arloġġ bi Prescaler
Timer/Counter0 jista 'jiġi ċċekkjat direttament mill-arloġġ tas-sistema (billi tissettja l-CS0[2:0] = 1). Dan jipprovdi l-iktar operazzjoni mgħaġġla, b'frekwenza massima ta' timer/counter clock ugwali għall-frekwenza tal-arloġġ tas-sistema (fCLK_I/O). Alternattivament, wieħed minn erba 'viti mill-prescaler jista' jintuża bħala sors ta 'arloġġ. L-arloġġ prescaled għandu frekwenza ta 'waħda minnhom
Irrisettja l-Prescaler
Il-prescaler jaħdem b'xejn, jiġifieri jopera indipendentement mil-loġika ta' Clock Select ta' Timer/Counter0. Peress li l-prescaler mhuwiex affettwat mill-għażla tal-arloġġ tal-arloġġ/tal-counter, l-istat tal-prescaler ikollu implikazzjonijiet għal sitwazzjonijiet fejn jintuża arloġġ prescaled. Wieħed example ta 'artifact ta' prescaling huwa meta t-tajmer/counter ikun attivat u ċċekkjat mill-prescaler (6> CS0[2:0]> 1). In-numru ta 'ċikli ta' arloġġ tas-sistema minn meta t-tajmer ikun attivat sa l-ewwel għadd iseħħ jista 'jkun minn 1 sa N+1 ċikli ta' arloġġ tas-sistema, fejn N huwa ugwali għad-diviżur tal-prescaler (8, 64, 256, jew 1024).
Huwa possibbli li tuża l-Prescaler Reset għas-sinkronizzazzjoni tat-Timer/Counter għall-eżekuzzjoni tal-programm.
Sors tal-Arloġġ Estern
Sors ta 'arloġġ estern applikat għall-pin T0 jista' jintuża bħala arloġġ tal-arloġġ/kontro (clkT0). Il-pin T0 huwa sampmmexxija darba kull ċiklu ta 'arloġġ tas-sistema mill-loġika ta' sinkronizzazzjoni tal-pin. Is-sinkronizzat (sampmmexxija) sinjal imbagħad jiġi mgħoddi
permezz tad-ditekter tat-tarf. Figura 11-2 turi dijagramma blokk ekwivalenti funzjonali tas-sinkronizzazzjoni T0 u l-loġika tad-ditekter tat-tarf. Ir-reġistri huma ċċekkjati fit-tarf pożittiv tal-arloġġ tas-sistema interna (clkI/O). Il-lukkett huwa trasparenti fil-perjodu għoli tal-arloġġ tas-sistema interna.
Id-ditekter tat-tarf jiġġenera polz clkT0 wieħed għal kull tarf pożittiv (CS0[2:0] = 7) jew negattiv (CS0[2:0] = 6) li jiskopri.
Ir-Reġistri OCR0x huma buffered doppju meta tuża kwalunkwe modalità ta 'Modulazzjoni Wisa' tal-Impuls (PWM). Għall-modi ta 'tħaddim normali u Clear Timer on Compare (CTC), il-buffering doppju huwa diżattivat. Il-buffering doppju jissinkronizza l-aġġornament tal-OCR0x Qabbel Reġistri jew fuq nett jew t'isfel tas-sekwenza tal-għadd. Is-sinkronizzazzjoni tipprevjeni l-okkorrenza ta 'pulsijiet PWM ta' tul fard, mhux simetriċi, u b'hekk tagħmel l-output mingħajr glitch.
L-aċċess tar-Reġistru OCR0x jista 'jidher kumpless, iżda dan mhux il-każ. Meta l-buffering doppju jiġi attivat, is-CPU għandu aċċess għar-Reġistru tal-Buffer OCR0x, u jekk il-buffering doppju jiġi diżattivat is-CPU se jaċċessa l-OCR0x direttament.
Forza Output Qabbel
F'modi ta 'ġenerazzjoni tal-forma tal-mewġ mhux PWM, l-output ta' tqabbil tal-komparatur jista 'jiġi sfurzat billi tikteb waħda għall-Forza Output Compare (FOC0x) bit. Forcing Compare Match mhux se jissettja l-Bandiera OCF0x jew reload/clear the timer, iżda l-pin OC0x se jiġi aġġornat daqs li kieku seħħet Qabbel reali (is-settings tal-bits COM0x[1:0] jiddefinixxu jekk il-pin OC0x huwiex issettjat, ikklerjat). jew toggled).
Qabbel Match Blocking minn TCNT0 Write
L-operazzjonijiet kollha tal-kitba tas-CPU lir-Reġistru TCNT0 jimblokkaw kwalunkwe Qabbel li jseħħ fiċ-ċiklu li jmiss tal-arloġġ tat-tajmer, anki meta t-tajmer jitwaqqaf. Din il-karatteristika tippermetti li OCR0x jiġi inizjalizzat għall-istess valur bħal TCNT0 mingħajr ma tiskatta interruzzjoni meta l-arloġġ Timer/Counter ikun attivat.
Uża l-Unità Qabbel Output
Peress li l-kitba ta 'TCNT0 fi kwalunkwe mod ta' operazzjoni se timblokka l-Qabbel kollha għal ċiklu wieħed tal-arloġġ tal-arloġġ, hemm riskji involuti meta tinbidel TCNT0 meta tuża l-Unità tal-Qabbel tal-Output, indipendentement minn jekk it-Timer/Counter huwiex qed jaħdem jew le. Jekk il-valur miktub f'TCNT0 huwa ugwali għall-valur OCR0x, it-Taqbila Qabbel tintilef, li tirriżulta f'ġenerazzjoni ta 'forma ta' mewġa mhux korretta. Bl-istess mod, tiktebx il-valur TCNT0 ugwali għal BOTTOM meta l-counter ikun qed jgħodd.
Is-setup tal-OC0x għandu jsir qabel ma jiġi stabbilit ir-Reġistru tad-Direzzjoni tad-Data għall-pin tal-port għall-ħruġ. L-eħfef mod kif jiġi stabbilit il-valur OC0x huwa li tuża l-Forza Output Compare (FOC0x) strobe bits fil-modalità Normali. Ir-Reġistri OC0x iżommu l-valuri tagħhom anke meta jinbidlu bejn il-modi tal-Ġenerazzjoni tal-Forma tal-Mewġa.
Kun konxju li l-bits COM0x[1:0] mhumiex double buffered flimkien mal-valur tal-paragun. Il-bidla tal-bits COM0x[1:0] tidħol fis-seħħ immedjatament.
Qabbel Match Output Unit
Il-bits tal-modalità Qabbel Output (COM0x[1:0]) għandhom żewġ funzjonijiet. Il-Waveform Generator juża l-bits COM0x[1:0] biex jiddefinixxi l-istat tal-Qabbel tal-Output (OC0x) fil-Qabbel li jmiss. Ukoll, il-bits COM0x[1:0] jikkontrollaw is-sors tal-ħruġ tal-pin OC0x. Figura 11-6 turi skematika simplifikata tal-loġika affettwata mill-issettjar tal-bit COM0x[1:0]. Ir-Reġistri I/O, il-bits tal-I/O, u l-brilli tal-I/O fil-figura huma murija b'tipa grassa. Huma murija biss il-partijiet tar-Reġistri ġenerali tal-Kontroll tal-Port I/O (DDR u PORT) li huma affettwati mill-bits COM0x[1:0]. Meta tirreferi għall-istat OC0x, ir-referenza hija għar-Reġistru intern OC0x, mhux il-pin OC0x. Jekk isseħħ reset tas-sistema, ir-Reġistru OC0x jiġi reset għal "0".
Meta OC0A/OC0B ikun imqabbad mal-pin I/O, il-funzjoni tal-bits COM0A[1:0]/COM0B[1:0] tiddependi fuq l-issettjar tal-bit WGM0[2:0]. Tabella 11-2 juri l-funzjonalità tal-bit COM0x[1:0] meta l-bits WGM0[2:0] huma ssettjati għal mod normali jew CTC (mhux PWM).
Tabella 11-2. Qabbel Modalità Output, Modalità mhux PWM
COM0A1 COM0B1 | COM0A0 COM0B0 | Deskrizzjoni |
0 | 0 | Operazzjoni normali tal-port, OC0A/OC0B skonnettjat. |
0 | 1 | Toggle OC0A/OC0B fuq Qabbel Match |
1 | 0 | Ċara OC0A/OC0B fuq Qabbel Match |
1 | 1 | Issettja OC0A/OC0B fuq Qabbel Match |
Tabella 11-3 juri l-funzjonalità tal-bit COM0x[1:0] meta l-bits WGM0[2:0] huma ssettjati għall-modalità PWM veloċi.
Tabella 11-3. Qabbel Modalità Output, Modalità PWM Fast(1)
COM0A1 COM0B1 | COM0A0 COM0B0 | Deskrizzjoni |
0 | 0 | Operazzjoni normali tal-port, OC0A/OC0B skonnettjat. |
0 | 1 | Riżervat |
1 | 0 | Ċara OC0A/OC0B fuq Qabbel Match, issettja OC0A/OC0B fil-QIEGĦ (mod li ma taqlebx) |
1 | 1 | Issettja OC0A/OC0B fuq Qabbel Match, ikklerja OC0A/OC0B fil-QIEGĦ (mod ta' taqlib) |
Nota: Każ speċjali jseħħ meta OCR0A jew OCR0B huwa ugwali għal TOP u COM0A1/COM0B1 huwa ssettjat. F'dan il-każ, it-tqabbil tal-paragun jiġi injorat, iżda s-sett jew l-ikklerjar isir fil-QIEGĦ. Ara “Modalità PWM veloċi” f’paġna 73 għal aktar dettalji.
Tabella 11-4 juri l-funzjonalità tal-bit COM0x[1:0] meta l-bits WGM0[2:0] huma ssettjati għall-modalità PWM korretta tal-fażi.
Tabella 11-4. Qabbel il-Modalità tal-Output, il-Modalità PWM Korretta tal-Fażi(1)
COM0A1 COM0B1 | COM0A0 COM0B0 | Deskrizzjoni |
0 | 0 | Operazzjoni normali tal-port, OC0A/OC0B skonnettjat. |
0 | 1 | Riżervat |
1 | 0 | Ċara OC0A/OC0B fuq Qabbel Match meta tgħaddi. Issettja OC0A/OC0B fuq Qabbel Match meta tgħaddi. |
1 | 1 | Issettja OC0A/OC0B fuq Qabbel Match meta tgħaddi. Ċara OC0A/OC0B fuq Qabbel Match meta jingħaddu. |
Nota: 1. Każ speċjali jseħħ meta OCR0A jew OCR0B ugwali TOP u COM0A1/COM0B1 huwa ssettjat. F'dan il-każ, it-Taqbila Qabbel tiġi injorata, iżda s-sett jew l-ikklerjar isir fuq TOP. Ara “Modalità PWM Korretta tal-Fażi” f’paġna 74 għal aktar dettalji.
Bits 3:2 - Riż: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bits 1:0 – WGM0[1:0]: Mod ta 'Ġenerazzjoni tal-Forma tal-Mewġa
Flimkien mal-bit WGM02 misjub fir-Reġistru TCCR0B, dawn il-bits jikkontrollaw is-sekwenza tal-għadd tal-counter, is-sors għall-valur tal-counter massimu (TOP), u x'tip ta 'ġenerazzjoni ta' mewġa li għandha tintuża, ara Tabella 11-5. Modi ta' tħaddim appoġġjati mill-unità Timer/Counter huma: Modalità normali (counter), modalità Clear Timer on Compare Match (CTC), u żewġ tipi ta' modi Pulse Width Modulation (PWM) (ara "Modi ta' Operazzjoni" f’paġna 71).
Tabella 11-5. Deskrizzjoni tal-Bit tal-Modalità tal-Ġenerazzjoni tal-Waveform
Modalità | WGM 02 | WGM 01 | WGM 00 | Modalità ta' Operazzjoni ta' Timer/Kontro | TOP | Aġġornament tal-OCRx fuq | Bandiera TOV Imqabbda |
0 | 0 | 0 | 0 | Normali | 0xFF | Immedjata | MAX(1) |
1 | 0 | 0 | 1 | PWM, Fażi Korretta | 0xFF | TOP | QIEGĦ(2) |
2 | 0 | 1 | 0 | CTC | OCRA | Immedjata | MAX(1) |
3 | 0 | 1 | 1 | PWM veloċi | 0xFF | QIEGĦ(2) | MAX(1) |
4 | 1 | 0 | 0 | Riżervat | – | – | – |
5 | 1 | 0 | 1 | PWM, Fażi Korretta | OCRA | TOP | QIEGĦ(2) |
6 | 1 | 1 | 0 | Riżervat | – | – | – |
7 | 1 | 1 | 1 | PWM veloċi | OCRA | QIEGĦ(2) | TOP |
Bit 7 – FOC0A: Qabbel Forza Output A
Il-bit FOC0A huwa attiv biss meta l-bits WGM jispeċifikaw mod mhux PWM.
Madankollu, biex tiġi żgurata l-kompatibilità ma 'apparati futuri, dan il-bit għandu jiġi ssettjat għal żero meta TCCR0B jinkiteb meta jaħdem fil-modalità PWM. Meta tikteb waħda loġika għall-bit FOC0A, Qabbel immedjat huwa sfurzat fuq l-unità Waveform Generation. L-output OC0A jinbidel skont l-issettjar tal-bits COM0A[1:0] tiegħu. Innota li l-bit FOC0A huwa implimentat bħala strobe. Għalhekk huwa l-valur preżenti fil-bits COM0A[1:0] li jiddetermina l-effett tat-tqabbil sfurzat.
Strobe FOC0A mhux se jiġġenera l-ebda interruzzjoni, u lanqas se jneħħi t-tajmer fil-mod CTC billi juża OCR0A bħala TOP. Il-bit FOC0A dejjem jinqara bħala żero.
Bit 6 – FOC0B: Qabbel Forza Output B
Il-bit FOC0B huwa attiv biss meta l-bits WGM jispeċifikaw mod mhux PWM.
Madankollu, biex tiġi żgurata l-kompatibilità ma 'apparati futuri, dan il-bit għandu jkun issettjat għal żero meta TCCR0B jinkiteb meta jaħdem fil-mod PWM. Meta tikteb waħda loġika għall-bit FOC0B, Qabbel immedjat huwa sfurzat fuq l-unità Waveform Generation. L-output OC0B jinbidel skont l-issettjar tal-bits COM0B[1:0] tiegħu. Innota li l-bit FOC0B huwa implimentat bħala strobe. Għalhekk huwa l-valur preżenti fil-bits COM0B[1:0] li jiddetermina l-effett tat-tqabbil sfurzat.
Strobe FOC0B mhux se jiġġenera l-ebda interruzzjoni, u lanqas se jneħħi t-tajmer fil-modalità CTC billi juża OCR0B bħala TOP.
Il-bit FOC0B dejjem jinqara bħala żero.
Bits 5:4 - Riż: Bits Riżervati
Dawn il-bits huma bits riservati fl-ATtiny25/45/85 u dejjem jinqraw bħala żero.
Bit 3 – WGM02: Mod ta' Ġenerazzjoni tal-Forma tal-Mewġa
Ara d-deskrizzjoni fil- “TCCR0A – Reġistru A tal-Kontroll ta’ Timer/Kontro” f’paġna 77.
Bits 2:0 – CS0[2:0]: Arloġġ Agħżel
It-tliet bits tal-Agħżel tal-Arloġġ jagħżlu s-sors tal-arloġġ li għandu jintuża mit-Timer/Counter.
Tabella 11-6. Deskrizzjoni tal-Bit Agħżel Arloġġ
CS02 | CS01 | CS00 | Deskrizzjoni |
0 | 0 | 0 | L-ebda sors ta' arloġġ (Timer/Counter waqaf) |
0 | 0 | 1 | clkI/O/(L-ebda preskala) |
0 | 1 | 0 | clkI/O/8 (Minn prescaler) |
0 | 1 | 1 | clkI/O/64 (Minn prescaler) |
1 | 0 | 0 | clkI/O/256 (Minn prescaler) |
1 | 0 | 1 | clkI/O/1024 (Minn prescaler) |
1 | 1 | 0 | Sors estern tal-arloġġ fuq il-pin T0. Arloġġ fuq xifer li jaqa'. |
1 | 1 | 1 | Sors estern tal-arloġġ fuq il-pin T0. Arloġġ fuq xifer li jogħlew. |
Jekk jintużaw il-modi tal-pin esterni għat-Timer/Counter0, it-tranżizzjonijiet fuq il-pin T0 se jillokkjaw il-counter anki jekk il-pin ikun ikkonfigurat bħala output. Din il-karatteristika tippermetti l-kontroll tas-softwer tal-għadd.
Ikkontro u Qabbel Unitajiet
L-operazzjoni ġenerali ta' Timer/Counter1 hija deskritta fil-modalità asinkronika u l-operazzjoni fil-modalità sinkronika tissemma biss jekk ikun hemm differenzi bejn dawn iż-żewġ modi. Figura 12-2 turi dijagramma blokk tar-reġistru tas-sinkronizzazzjoni tal-Timer/Counter 1 u d-dewmien tas-sinkronizzazzjoni bejn ir-reġistri. Innota li d-dettalji kollha tal-gting tal-arloġġ mhumiex murija fil-figura. Il-valuri tar-reġistru Timer/Counter1 jgħaddu mir-reġistri interni tas-sinkronizzazzjoni, li jikkawżaw id-dewmien tas-sinkronizzazzjoni tal-input, qabel ma jaffettwaw l-operazzjoni tal-counter. Ir-reġistri TCCR1, GTCCR, OCR1A, OCR1B, u OCR1C jistgħu jinqraw lura eżatt wara li tikteb ir-reġistru. Il-valuri moqrija lura huma ttardjati għar-reġistru u l-bnadar Timer/Counter1 (TCNT1) (OCF1A, OCF1B, u TOV1), minħabba s-sinkronizzazzjoni tad-dħul u l-ħruġ.
It-Timer/Counter1 għandu riżoluzzjoni għolja u użu ta 'preċiżjoni għolja bl-opportunitajiet ta' prescaling aktar baxxi. Jista 'jappoġġja wkoll żewġ Modulaturi tal- Wisa' tal-Impuls ta' 8-bit preċiżi li jużaw veloċitajiet tal-arloġġ sa 64 MHz (jew 32 MHz fil-Modalità ta' Veloċità Baxxa). F'dan il-mod, Timer/Counter1 u r-reġistri ta' tqabbil tal-output iservu bħala PWMs doppji waħedhom b'outputs mhux maqluba u maqluba li ma jikkoinċidux. Irreferi għal paġna 86 għal deskrizzjoni dettaljata dwar din il-funzjoni. Bl-istess mod, l-opportunitajiet ta 'prescaling għolja jagħmlu din l-unità utli għal funzjonijiet ta' veloċità aktar baxxa jew funzjonijiet ta 'ħin eżatt b'azzjonijiet mhux frekwenti.
Figura 12-2. Dijagramma tal-Blokk tar-Reġistru tas-Sinkronizzazzjoni tal-Timer/Counter 1.
Timer/Counter1 u l-prescaler jippermettu t-tħaddim tas-CPU minn kwalunkwe sors ta 'arloġġ waqt li l-prescaler ikun qed jaħdem fuq l-arloġġ PCK veloċi ta' 64 MHz (jew 32 MHz fil-Modalità ta 'Veloċità Baxxa) fil-modalità asinkronika.
Innota li l-frekwenza tal-arloġġ tas-sistema għandha tkun inqas minn terz tal-frekwenza PCK. Il-mekkaniżmu ta 'sinkronizzazzjoni tat-Timer/Counter1 mhux sinkroniku jeħtieġ mill-inqas żewġ truf tal-PCK meta l-arloġġ tas-sistema jkun għoli. Jekk il-frekwenza ta 'l-arloġġ tas-sistema hija għolja wisq, huwa riskju li d-dejta jew il-valuri ta' kontroll jintilfu.
Dan li ġej Figura 12-3 turi d-dijagramma blokk għal Timer/Counter1.
Tabella 12-1. Qabbel il-Modalità Agħżel fil-Modalità PWM
COM1x1 | COM1x0 | Effett fuq Output Qabbel Pins |
0 | 0 | OC1x mhux konness. OC1x mhux konness. |
0 | 1 | OC1x ikklerjat fuq il-partita ta' paragun. Issettja metaTCNT1 = $00. OC1x stabbilit fuq il-logħba ta' paragun. Ikklerjat meta TCNT1 = $00. |
1 | 0 | OC1x ikklerjat fuq il-partita ta' paragun. Issettja meta TCNT1 = $00. OC1x mhux konness. |
1 | 1 | OC1x Issettja fuq il-partita ta' paragun. Ikklerjat meta TCNT1= $00. OC1x mhux konness. |
Karatteristiċi ADC
Tabella 21-8. Karatteristiċi ADC, Kanali Uniċi Ended. TA = -40°C sa +85°C
Simbolu | Parametru | Kundizzjoni | Min | Tip | Max | Unitajiet |
Riżoluzzjoni | 10 | Bits | ||||
Preċiżjoni assoluta (Inklużi żbalji INL, DNL, u Kwantizzazzjoni, Gwadan u Offset) | VREF = 4V, VCC = 4V,
Arloġġ ADC = 200 kHz |
2 | LSB | |||
VREF = 4V, VCC = 4V,
Arloġġ ADC = 1 MHz |
3 | LSB | ||||
VREF = 4V, VCC = 4V,
Arloġġ ADC = 200 kHz Modalità ta' Tnaqqis tal-Ħsejjes |
1.5 | LSB | ||||
VREF = 4V, VCC = 4V,
Arloġġ ADC = 1 MHz Modalità ta' Tnaqqis tal-Ħsejjes |
2.5 | LSB | ||||
Non-linearità Integrali (INL) (Eżattezza wara l-ikkalibrar tal-offset u tal-gwadann) | VREF = 4V, VCC = 4V,
Arloġġ ADC = 200 kHz |
1 | LSB | |||
Non-linearità Differenzjali (DNL) | VREF = 4V, VCC = 4V,
Arloġġ ADC = 200 kHz |
0.5 | LSB | |||
Gwadan Żball | VREF = 4V, VCC = 4V,
Arloġġ ADC = 200 kHz |
2.5 | LSB | |||
Żball Offset | VREF = 4V, VCC = 4V,
Arloġġ ADC = 200 kHz |
1.5 | LSB | |||
Ħin ta 'Konverżjoni | Free Running Konverżjoni | 14 | 280 | µs | ||
Frekwenza tal-Arloġġ | 50 | 1000 | kHz | |||
VIN | Input Voltage | GND | VREF | V | ||
Faxxa tal-Input | 38.4 | kHz | ||||
AREF | Referenza Esterna Voltage | 2.0 | VCC | V | ||
VINT | Vol Interntage Referenza | 1.0 | 1.1 | 1.2 | V | |
Referenza interna 2.56V (1) | VCC > 3.0V | 2.3 | 2.56 | 2.8 | V | |
RREF | 32 | kΩ | ||||
XITA | Reżistenza ta 'Input Analog | 100 | MΩ | |||
Output ADC | 0 | 1023 | LSB |
Nota: 1. Il-valuri huma linji gwida biss.
Tabella 21-9. Karatteristiċi ADC, Kanali Differenzjali (Modalità Unipolari). TA = -40°C sa +85°C
Simbolu | Parametru | Kundizzjoni | Min | Tip | Max | Unitajiet |
Riżoluzzjoni | Qligħ = 1x | 10 | Bits | |||
Qligħ = 20x | 10 | Bits | ||||
Preċiżjoni assoluta (Inklużi INL, DNL, u
Żbalji ta' Kwantizzazzjoni, Qligħ u Offset) |
Qligħ = 1x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
10.0 | LSB | |||
Qligħ = 20x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
20.0 | LSB | ||||
Non-Linearità Integrali (INL) (Eżattezza wara l-Offset u l-Kalibrazzjoni tal-Qasam) | Qligħ = 1x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
4.0 | LSB | |||
Qligħ = 20x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
10.0 | LSB | ||||
Gwadan Żball | Qligħ = 1x | 10.0 | LSB | |||
Qligħ = 20x | 15.0 | LSB | ||||
Żball Offset | Qligħ = 1x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
3.0 | LSB | |||
Qligħ = 20x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
4.0 | LSB | ||||
Ħin ta 'Konverżjoni | Free Running Konverżjoni | 70 | 280 | µs | ||
Frekwenza tal-Arloġġ | 50 | 200 | kHz | |||
VIN | Input Voltage | GND | VCC | V | ||
VDIFF | Input Differenzjali Voltage | VREF/Gain | V | |||
Faxxa tal-Input | 4 | kHz | ||||
AREF | Referenza Esterna Voltage | 2.0 | VCC – 1.0 | V | ||
VINT | Vol Interntage Referenza | 1.0 | 1.1 | 1.2 | V | |
Referenza interna 2.56V (1) | VCC > 3.0V | 2.3 | 2.56 | 2.8 | V | |
RREF | Reżistenza għall-Input ta' Referenza | 32 | kΩ | |||
XITA | Reżistenza ta 'Input Analog | 100 | MΩ | |||
Output tal-Konverżjoni ADC | 0 | 1023 | LSB |
Nota: Il-valuri huma linji gwida biss.
Tabella 21-10. Karatteristiċi ADC, Kanali Differenzjali (Modalità Bipolari). TA = -40°C sa +85°C
Simbolu | Parametru | Kundizzjoni | Min | Tip | Max | Unitajiet |
Riżoluzzjoni | Qligħ = 1x | 10 | Bits | |||
Qligħ = 20x | 10 | Bits | ||||
Preċiżjoni assoluta (Inklużi INL, DNL, u
Żbalji ta' Kwantizzazzjoni, Qligħ u Offset) |
Qligħ = 1x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
8.0 | LSB | |||
Qligħ = 20x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
8.0 | LSB | ||||
Non-Linearità Integrali (INL) (Eżattezza wara l-Offset u l-Kalibrazzjoni tal-Qasam) | Qligħ = 1x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
4.0 | LSB | |||
Qligħ = 20x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
5.0 | LSB | ||||
Gwadan Żball | Qligħ = 1x | 4.0 | LSB | |||
Qligħ = 20x | 5.0 | LSB | ||||
Żball Offset | Qligħ = 1x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
3.0 | LSB | |||
Qligħ = 20x
VREF = 4V, VCC = 5V Arloġġ ADC = 50 – 200 kHz |
4.0 | LSB | ||||
Ħin ta 'Konverżjoni | Free Running Konverżjoni | 70 | 280 | µs | ||
Frekwenza tal-Arloġġ | 50 | 200 | kHz | |||
VIN | Input Voltage | GND | VCC | V | ||
VDIFF | Input Differenzjali Voltage | VREF/Gain | V | |||
Faxxa tal-Input | 4 | kHz | ||||
AREF | Referenza Esterna Voltage | 2.0 | VCC – 1.0 | V | ||
VINT | Vol Interntage Referenza | 1.0 | 1.1 | 1.2 | V | |
Referenza interna 2.56V (1) | VCC > 3.0V | 2.3 | 2.56 | 2.8 | V | |
RREF | Reżistenza għall-Input ta' Referenza | 32 | kΩ | |||
XITA | Reżistenza ta 'Input Analog | 100 | MΩ | |||
Output tal-Konverżjoni ADC | -512 | 511 | LSB |
Sommarju tas-Sett ta' Istruzzjonijiet
Mnemoniċi | Operandi | Deskrizzjoni | Operazzjoni | Bnadar | #Arloġġi |
ISTRUZZJONIJIET ARITMETIĊI U LOĠIĊI | |||||
ŻID | Rd, Rr | Żid żewġ Reġistri | Rd ← Rd + Rr | Z,C,N,V,H | 1 |
ADC | Rd, Rr | Żid ma 'Carry żewġ Reġistri | Rd ← Rd + Rr + C | Z,C,N,V,H | 1 |
ADIW | Rdl,K | Żid Immedjat mal-Kelma | Rdh:Rdl ← Rdh:Rdl + K | Z,C,N,V,S | 2 |
SUB | Rd, Rr | Naqqas żewġ Reġistri | Rd ← Rd – Rr | Z,C,N,V,H | 1 |
SUBI | Rd, K | Naqqas il-Kostanti mir-Reġistru | Rd ← Rd – K | Z,C,N,V,H | 1 |
SBC | Rd, Rr | Naqqas b'Carry żewġ Reġistri | Rd ← Rd – Rr – C | Z,C,N,V,H | 1 |
SBCI | Rd, K | Naqqas bil-Kostanti ta' Ġarr mir-Reg. | Rd ← Rd – K – C | Z,C,N,V,H | 1 |
SBIW | Rdl,K | Naqqas Immedjat mill-Kelma | Rdh:Rdl ← Rdh:Rdl – K | Z,C,N,V,S | 2 |
U | Rd, Rr | Reġistri U Loġiċi | Rd ← Rd ∙ Rr | Z,N,V | 1 |
ANDI | Rd, K | Loġiku U Reġistru u Kostanti | Rd ← Rd ∙ K | Z,N,V | 1 |
OR | Rd, Rr | Reġistri JEW Loġiċi | Rd ← Rd v Rr | Z,N,V | 1 |
ORI | Rd, K | Reġistru JEW Loġiku u Kostanti | Rd ← Rd v K | Z,N,V | 1 |
EOR | Rd, Rr | Reġistri OR esklussivi | Rd ← Rd ⊕ Rr | Z,N,V | 1 |
COM | Rd | Il-Komplement ta' Wieħed | Rd ← 0xFF − Rd | Z,C,N,V | 1 |
NEG | Rd | Komplement tat-tnejn | Rd ← 0x00 − Rd | Z,C,N,V,H | 1 |
SBR | Rd,K | Issettja Bit(s) fir-Reġistru | Rd ← Rd v K | Z,N,V | 1 |
CBR | Rd,K | Ċara Bit(s) fir-Reġistru | Rd ← Rd ∙ (0xFF – K) | Z,N,V | 1 |
INC | Rd | Żieda | Rd ← Rd + 1 | Z,N,V | 1 |
DIĊ | Rd | Tnaqqis | Rd ← Rd − 1 | Z,N,V | 1 |
TST | Rd | Test għal Zero jew Minus | Rd ← Rd ∙ Rd | Z,N,V | 1 |
CLR | Rd | Ċara Reġistru | Rd ← Rd ⊕ Rd | Z,N,V | 1 |
SER | Rd | Issettja Reġistru | Rd ← 0xFF | Xejn | 1 |
ISTRUZZJONIJIET TAL-FERGĦA | |||||
RJMP | k | Aqbeż Relattiv | PC ← PC + k + 1 | Xejn | 2 |
IJMP | Aqbeż indirett għal (Z) | PC ← Z | Xejn | 2 | |
RCALL | k | Sejħa ta' Subrutina Relattiva | PC ← PC + k + 1 | Xejn | 3 |
ICALL | Sejħa indiretta lil (Z) | PC ← Z | Xejn | 3 | |
RET | Ritorn tas-subrutina | PC ← STACK | Xejn | 4 | |
RETI | Interrompi Ritorn | PC ← STACK | I | 4 | |
CPSE | Rd, Rr | Qabbel, Aqbeż jekk Indaqs | jekk (Rd = Rr) PC ← PC + 2 jew 3 | Xejn | 1/2/3 |
CP | Rd, Rr | Qabbel | Rd − Rr | Z, N, V, C, H | 1 |
CPC | Rd, Rr | Qabbel ma 'Carry | Rd − Rr − C | Z, N, V, C, H | 1 |
CPI | Rd,K | Qabbel Reġistru ma Immedjat | Rd − K | Z, N, V, C, H | 1 |
SBRC | Rr, b | Aqbeż jekk Bit fir-Reġistru Kklerjat | jekk (Rr(b)=0) PC ← PC + 2 jew 3 | Xejn | 1/2/3 |
SBRS | Rr, b | Aqbeż jekk Bit fir-Reġistru huwa Issettjat | jekk (Rr(b)=1) PC ← PC + 2 jew 3 | Xejn | 1/2/3 |
SBIC | P, b | Aqbeż jekk il-Bit fir-Reġistru tal-I/O Ikklerjat | jekk (P(b)=0) PC ← PC + 2 jew 3 | Xejn | 1/2/3 |
SBIS | P, b | Aqbeż jekk Bit fir-Reġistru I/O huwa Issettjat | jekk (P(b)=1) PC ← PC + 2 jew 3 | Xejn | 1/2/3 |
BRBS | s, k | Fergħa jekk Issettja l-Bandiera tal-Istatus | jekk (SREG(s) = 1) allura PC←PC+k + 1 | Xejn | 1/2 |
BRBC | s, k | Fergħa jekk il-Bandiera tal-Istatus Tneħħiet | jekk (SREG(s) = 0) allura PC←PC+k + 1 | Xejn | 1/2 |
BREQ | k | Fergħa jekk Indaqs | jekk (Z = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRNE | k | Fergħa jekk Mhux Ugwali | jekk (Z = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRCS | k | Fergħa jekk Carry Set | jekk (C = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRCC | k | Fergħa jekk Carry Cleared | jekk (C = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRSH | k | Fergħa jekk l-Istess jew Ogħla | jekk (C = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRLO | k | Fergħa jekk Lower | jekk (C = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRMI | k | Fergħa jekk Minus | jekk (N = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRPL | k | Fergħa jekk Plus | jekk (N = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRGE | k | Fergħa jekk Akbar jew Indaqs, Iffirmata | jekk (N ⊕ V= 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRLT | k | Fergħa jekk Inqas Minn Żero, Iffirmat | jekk (N ⊕ V= 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRHS | k | Fergħa jekk Half Carry Flag Set | jekk (H = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRHC | k | Fergħa jekk Half Carry Flag ikklerjat | jekk (H = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRTS | k | Fergħa jekk T Sett Bandiera | jekk (T = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRTC | k | Fergħa jekk T Cleared Bandiera | jekk (T = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRVS | k | Fergħa jekk il-Bandiera ta' Overflow hija Ssettjata | jekk (V = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRVC | k | Fergħa jekk il-Bandiera ta' Overflow tkun Imneħħija | jekk (V = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRIE | k | Fergħa jekk Interruzzjoni Ippermettiet | jekk ( I = 1) allura PC ← PC + k + 1 | Xejn | 1/2 |
BRID | k | Fergħa jekk Interruzzjoni Diżattivata | jekk ( I = 0) allura PC ← PC + k + 1 | Xejn | 1/2 |
ISTRUZZJONIJIET TAT-TEST BIT U BIT | |||||
SBI | P,b | Issettja Bit fir-Reġistru I/O | I/O(P,b) ← 1 | Xejn | 2 |
CBI | P,b | Ċara Bit fir-Reġistru I/O | I/O(P,b) ← 0 | Xejn | 2 |
LSL | Rd | Ċaqliq Loġiku Xellug | Rd(n+1) ← Rd(n), Rd(0) ← 0 | Z,C,N,V | 1 |
LSR | Rd | Ċaqliq Loġiku Dritt | Rd(n) ← Rd(n+1), Rd(7) ← 0 | Z,C,N,V | 1 |
RWOL | Rd | Dawwar Left Through Carry | Rd(0)←C,Rd(n+1)← Rd(n),C←Rd(7) | Z,C,N,V | 1 |
ROR | Rd | Dawwar Right Through Carry | Rd(7)←C,Rd(n)← Rd(n+1),C←Rd(0) | Z,C,N,V | 1 |
ASR | Rd | Shift Aritmetiku Lemin | Rd(n) ← Rd(n+1), n=0..6 | Z,C,N,V | 1 |
Mnemoniċi | Operandi | Deskrizzjoni | Operazzjoni | Bnadar | #Arloġġi |
SWAP | Rd | Skambju Nibbles | Rd(3..0)←Rd(7..4),Rd(7..4)←Rd(3..0) | Xejn | 1 |
BSET | s | Sett Bandiera | SREG(s) ← 1 | SREG(s) | 1 |
BCLR | s | Bandiera ċara | SREG(s) ← 0 | SREG(s) | 1 |
BST | Rr, b | Aħżen Bit mir-Reġistru għal T | T ← Rr(b) | T | 1 |
BLD | Rd, b | Tagħbija bit minn T għal Reġistru | Rd(b) ← T | Xejn | 1 |
SEC | Issettja Ġorru | C ← 1 | C | 1 | |
CLC | Ċar Ġorr | C ← 0 | C | 1 | |
SEN | Issettja Bandiera Negattiva | N ← 1 | N | 1 | |
CLN | Bandiera Negattiva ċara | N ← 0 | N | 1 | |
SEZ | Issettja Bandiera Żero | Z ← 1 | Z | 1 | |
CLZ | Bandiera Żero ċara | Z ← 0 | Z | 1 | |
SEI | Ippermettiet Interruzzjoni Globali | I ← 1 | I | 1 | |
CLI | Interruzzjoni Globali Iddiżattiva | I ← 0 | I | 1 | |
SES | Issettja Bandiera tat-Test Iffirmata | S ← 1 | S | 1 | |
CLS | Bandiera tat-test iffirmata ċara | S ← 0 | S | 1 | |
SEV | Set Twos Komplement Overflow. | V ← 1 | V | 1 | |
CLV | Ċar Twos Jikkumplimenta Overflow | V ← 0 | V | 1 | |
SET | Issettja T f'SREG | T ← 1 | T | 1 | |
CLT | Ċara T fl-SREG | T ← 0 | T | 1 | |
SEH | Issettja Half Carry Flag fl-SREG | H ← 1 | H | 1 | |
CLH | Ċara Half Carry Flag fl-SREG | H ← 0 | H | 1 | |
ISTRUZZJONIJIET TA' TRASFERIMENT TA' DEJTA | |||||
MOV | Rd, Rr | Nimxu Bejn Reġistri | Rd ← Rr | Xejn | 1 |
MOVW | Rd, Rr | Ikkopja l-Kelma tar-Reġistru | Rd+1:Rd ← Rr+1:Rr | Xejn | 1 |
LDI | Rd, K | Tagħbija Immedjata | Rd ← K | Xejn | 1 |
LD | Rd, X | Tagħbija Indiretta | Rd ← (X) | Xejn | 2 |
LD | Rd, X+ | Tagħbija Indiretta u Post-Inc. | Rd ← (X), X ← X + 1 | Xejn | 2 |
LD | Rd, – X | Tagħbija Indiretta u Pre-Diċ. | X ← X – 1, Rd ← (X) | Xejn | 2 |
LD | Rd, Y | Tagħbija Indiretta | Rd ← (Y) | Xejn | 2 |
LD | Rd, Y+ | Tagħbija Indiretta u Post-Inc. | Rd ← (Y), Y ← Y + 1 | Xejn | 2 |
LD | Rd, – Y | Tagħbija Indiretta u Pre-Diċ. | Y ← Y – 1, Rd ← (Y) | Xejn | 2 |
LDD | Rd,Y+q | Tagħbija Indiretta bi Spostament | Rd ← (Y + q) | Xejn | 2 |
LD | Rd, Z | Tagħbija Indiretta | Rd ← (Z) | Xejn | 2 |
LD | Rd, Z+ | Tagħbija Indiretta u Post-Inc. | Rd ← (Z), Z ← Z+1 | Xejn | 2 |
LD | Rd, -Z | Tagħbija Indiretta u Pre-Diċ. | Z ← Z – 1, Rd ← (Z) | Xejn | 2 |
LDD | Rd, Z+q | Tagħbija Indiretta bi Spostament | Rd ← (Z + q) | Xejn | 2 |
LDS | Rd, k | Tagħbija Diretta minn SRAM | Rd ← (k) | Xejn | 2 |
ST | X, Rr | Aħżen indirett | (X) ← Rr | Xejn | 2 |
ST | X+, Rr | Aħżen indirett u Post-Inc. | (X) ← Rr, X ← X + 1 | Xejn | 2 |
ST | – X, Rr | Aħżen Indiret u Pre-Diċ. | X ← X – 1, (X) ← Rr | Xejn | 2 |
ST | Y, Rr | Aħżen indirett | (Y) ← Rr | Xejn | 2 |
ST | Y+, Rr | Aħżen indirett u Post-Inc. | (Y) ← Rr, Y ← Y + 1 | Xejn | 2 |
ST | – Y, Rr | Aħżen Indiret u Pre-Diċ. | Y ← Y – 1, (Y) ← Rr | Xejn | 2 |
STD | Y+q,Rr | Aħżen indirett bi Spostament | (Y + q) ← Rr | Xejn | 2 |
ST | Z, Rr | Aħżen indirett | (Z) ← Rr | Xejn | 2 |
ST | Z+, Rr | Aħżen indirett u Post-Inc. | (Z) ← Rr, Z ← Z + 1 | Xejn | 2 |
ST | -Z, Rr | Aħżen Indiret u Pre-Diċ. | Z ← Z – 1, (Z) ← Rr | Xejn | 2 |
STD | Z+q,Rr | Aħżen indirett bi Spostament | (Z + q) ← Rr | Xejn | 2 |
STS | k, Rr | Aħżen Direttament għal SRAM | (k) ← Rr | Xejn | 2 |
LPM | Tagħbija Memorja tal-Programm | R0 ← (Z) | Xejn | 3 | |
LPM | Rd, Z | Tagħbija Memorja tal-Programm | Rd ← (Z) | Xejn | 3 |
LPM | Rd, Z+ | Tagħbija Memorja tal-Programm u Post-Inc | Rd ← (Z), Z ← Z+1 | Xejn | 3 |
SPM | Aħżen Memorja tal-Programm | (z) ← R1:R0 | Xejn | ||
IN | Rd, P | Fil-Port | Rd ← P | Xejn | 1 |
BARRA | P, Rr | Out Port | P ← Rr | Xejn | 1 |
IMBOTTA | Rr | Imbotta Reġistru fuq Munzell | STACK ← Rr | Xejn | 2 |
POP | Rd | Pop Reġistru minn Munzell | Rd ← STACK | Xejn | 2 |
ISTRUZZJONIJIET TAL-KONTROLL MCU | |||||
NOP | Ebda Operazzjoni | Xejn | 1 | ||
L-IRQAD | Irqad | (ara d-deskrizzjoni speċifika għall-funzjoni Sleep) | Xejn | 1 | |
WDR | Irrisettja l-Għassa | (ara d-deskrizzjoni speċifika għal WDR/Timer) | Xejn | 1 | |
BREAK | Break |
Veloċità (MHz) (1) | Provvista Voltage (V) | Firxa tat-Temperatura | Pakkett (2) | Kodiċi tal-Ordni (3) |
10 | 1.8 – 5.5 | Industrijali
(-40 ° C sa + 85 ° C) (4) |
8P3 | ATtiny45V-10PU |
8S2 | ATtiny45V-10SU ATtiny45V-10SUR ATtiny45V-10SH ATtiny45V-10SHR | |||
8X | ATtiny45V-10XU ATtiny45V-10XUR | |||
20M1 | ATtiny45V-10MU ATtiny45V-10MUR | |||
20 | 2.7 – 5.5 | Industrijali
(-40 ° C sa + 85 ° C) (4) |
8P3 | ATtiny45-20PU |
8S2 | ATtiny45-20SU ATtiny45-20SUR
ATtiny45-20SH ATtiny45-20SHR |
|||
8X | ATtiny45-20XU ATtiny45-20XUR | |||
20M1 | ATtiny45-20MU ATtiny45-20MUR |
Noti: 1. Għall-veloċità vs provvista voltage, ara t-taqsima 21.3 “Veloċità” f’paġna 163.
Il-pakketti kollha huma ħielsa minn Pb, ħielsa mill-alid u kompletament ħodor u huma konformi mad-direttiva Ewropea għar-Restrizzjoni ta' Sustanzi Perikolużi (RoHS).
Indikaturi tal-kodiċi
H: finitura taċ-ċomb NiPdAu
U: landa matta
R: tejp u rukkell
Dawn l-apparati jistgħu wkoll jiġu fornuti f'forma ta 'wejfer. Jekk jogħġbok ikkuntattja l-uffiċċju lokali tal-bejgħ Atmel tiegħek għal informazzjoni dettaljata dwar l-ordnijiet u kwantitajiet minimi.
Marka ħażina
Errata ATtiny25
L-ittra ta 'reviżjoni f'din it-taqsima tirreferi għar-reviżjoni tal-apparat ATtiny25.
Rev D – F
Ebda errata magħrufa.
Rev B – Ċ
Il-qari tal-EEPROM jista' jfalli f'volum baxx ta' provvistatage / frekwenza baxxa tal-arloġġ
Il-qari tal-EEPROM jista' jfalli f'volum baxx ta' provvistatage / frekwenza baxxa tal-arloġġ
Jipprova jaqra l-EEPROM bi frekwenzi baxxi ta 'arloġġ u/jew provvista baxxa voltage jista' jirriżulta f'dejta invalida.
Problem Waħħal/Workaround
Tużax l-EEPROM meta l-frekwenza tal-arloġġ tkun taħt 1MHz u provvista voltage huwa taħt 2V. Jekk il-frekwenza operattiva ma tistax titla' 'l fuq minn 1MHz allura provvista voltage għandu jkun aktar minn 2V. Bl-istess mod, jekk provvista voltage ma tistax titla' 'l fuq minn 2V allura l-frekwenza operattiva għandha tkun aktar minn 1MHz.
Din il-karatteristika hija magħrufa li hija dipendenti fuq it-temperatura iżda ma ġietx ikkaratterizzata. Linji gwida huma mogħtija għat-temperatura tal-kamra, biss.
Rev A
Mhux sampLED.
Errata ATtiny45
L-ittra ta 'reviżjoni f'din it-taqsima tirreferi għar-reviżjoni tal-apparat ATtiny45.
Rev F – G
Ebda errata magħrufa
Rev D – E
Il-qari tal-EEPROM jista' jfalli f'volum baxx ta' provvistatage / frekwenza baxxa tal-arloġġ
Il-qari tal-EEPROM jista' jfalli f'volum baxx ta' provvistatage / frekwenza baxxa tal-arloġġ
Jipprova jaqra l-EEPROM bi frekwenzi baxxi ta 'arloġġ u/jew provvista baxxa voltage jista' jirriżulta f'dejta invalida.
Problem Waħħal/Workaround
Tużax l-EEPROM meta l-frekwenza tal-arloġġ tkun taħt 1MHz u provvista voltage huwa taħt 2V. Jekk il-frekwenza operattiva ma tistax titla' 'l fuq minn 1MHz allura provvista voltage għandu jkun aktar minn 2V. Bl-istess mod, jekk provvista voltage ma tistax titla' 'l fuq minn 2V allura l-frekwenza operattiva għandha tkun aktar minn 1MHz.
Din il-karatteristika hija magħrufa li hija dipendenti fuq it-temperatura iżda ma ġietx ikkaratterizzata. Linji gwida huma mogħtija għat-temperatura tal-kamra, biss.
Rev B – Ċ
PLL mhux qfil
EEPROM moqri mill-kodiċi tal-applikazzjoni ma taħdimx fil-Lock Bit Mode 3
Il-qari tal-EEPROM jista' jfalli f'volum baxx ta' provvistatage / frekwenza baxxa tal-arloġġ
Timer Counter 1 ġenerazzjoni tal-output PWM fuq OC1B- XOC1B ma taħdimx b'mod korrett
PLL mhux qfil
Meta fi frekwenzi taħt is-6.0 MHz, il-PLL mhux se jissakkar
Soluzzjoni/soluzzjoni tal-problema
Meta tuża l-PLL, ħaddem f'6.0 MHz jew ogħla.
EEPROM moqri mill-kodiċi tal-applikazzjoni ma taħdimx fil-Lock Bit Mode 3
Meta l-Bits tal-Lock tal-Memorja LB2 u LB1 huma pprogrammati għall-modalità 3, il-qari tal-EEPROM ma jaħdimx mill-kodiċi tal-applikazzjoni.
Problem Waħħal/Xogħol madwar
Issettjax Lock Bit Protection Mode 3 meta l-kodiċi tal-applikazzjoni jeħtieġ li jinqara mill-EEPROM.
Il-qari tal-EEPROM jista' jfalli f'volum baxx ta' provvistatage / frekwenza baxxa tal-arloġġ
Jipprova jaqra l-EEPROM bi frekwenzi baxxi ta 'arloġġ u/jew provvista baxxa voltage jista' jirriżulta f'dejta invalida.
Problem Waħħal/Workaround
Tużax l-EEPROM meta l-frekwenza tal-arloġġ tkun taħt 1MHz u provvista voltage huwa taħt 2V. Jekk il-frekwenza operattiva ma tistax titla' 'l fuq minn 1MHz allura provvista voltage għandu jkun aktar minn 2V. Bl-istess mod, jekk provvista voltage ma tistax titla' 'l fuq minn 2V allura l-frekwenza operattiva għandha tkun aktar minn 1MHz.
Din il-karatteristika hija magħrufa li hija dipendenti fuq it-temperatura iżda ma ġietx ikkaratterizzata. Linji gwida huma mogħtija għat-temperatura tal-kamra, biss.
Timer Counter 1 Ġenerazzjoni tal-output PWM fuq OC1B - XOC1B ma taħdimx b'mod korrett
Timer Counter1 PWM output OC1B-XOC1B ma taħdimx b'mod korrett. Biss fil-każ meta l-bits ta 'kontroll, COM1B1 u COM1B0 huma fl-istess mod bħal COM1A1 u COM1A0, rispettivament, l-output OC1B-XOC1B jaħdem b'mod korrett.
Problem Waħħal/Xogħol madwar
L-unika soluzzjoni hija li tuża l-istess setting ta 'kontroll fuq COM1A[1:0] u COM1B[1:0] bits ta' kontroll, ara t-tabella 14- 4 fil-folja tad-dejta. Il-problema ġiet irranġata għal Tiny45 rev D.
Rev A
Qawwa għolja wisq isfel konsum tal-enerġija
DebugWIRE jitlef il-komunikazzjoni meta wieħed jidħol f'interruzzjonijiet
PLL mhux qfil
EEPROM moqri mill-kodiċi tal-applikazzjoni ma taħdimx fil-Lock Bit Mode 3
Il-qari tal-EEPROM jista' jfalli f'volum baxx ta' provvistatage / frekwenza baxxa tal-arloġġ
Qawwa għolja wisq isfel konsum tal-enerġija
Tliet sitwazzjonijiet se jwasslu għal qawwa għolja wisq isfel konsum tal-enerġija. Dawn huma:
Arloġġ estern jintgħażel minn fjusis, iżda l-PORT I/O għadu attivat bħala output.
L-EEPROM tinqara qabel ma tidħol fl-enerġija.
VCC huwa 4.5 volts jew ogħla.
Ċaħda ta' responsabbiltà: L-informazzjoni f'dan id-dokument hija pprovduta b'rabta mal-prodotti Atmel. L-ebda liċenzja, espressa jew impliċita, b'estoppel jew mod ieħor, għal xi dritt ta 'proprjetà intellettwali ma tingħata minn dan id-dokument jew b'konnessjoni mal-bejgħ ta' prodotti Atmel. Ħlief KIF STABBILT FIT-TERMINI U KUNDIZZJONIJIET TAL-BEJGĦ TAL-ATMEL LI JINSABU FUQ L-ATMEL WEBSITE, ATMEL TASSU L-EBDA RESPONSABBILTÀ KULL KULL U TIĊĦAD KULL GARANZIJA ESPRESSA, IMPLIKATA JEW STATUTA RELATATA MAL-PRODOTTI TAGĦHA INKLUŻI, IMMA MHUX LIMITATA GĦAL, IL-GARANZIJA IMPLICITA TA’ KUMMERĊJALITÀ, ADATTAZZJONI GĦAL GĦAN MHUX PARTIKOLARI. Fl-ebda każ ATMEL MA GĦANDHA TKUN RESPONSABBLI GĦAL KWALUNKWE DANNI DIRETTI, INDIRETTI, KONSEKWENZJALI, PUNITTIVI, SPEĊJALI JEW INĊIDENTALI (INKLUŻI, MINGĦAJR LIMITATION, DANNI GĦAL TELF U PROFITTI, INTERRUZZJONI NEGOZJU, JEW TELF TA’ INFORMAZZJONI) LI JIRRIŻAW MILL-UŻU GĦALL-UŻU. DAN ID-DOKUMENT, ANKE JEKK ATMEL ĠIE AVVISAT BIL-POSSIBILTÀ TA' DAWN DANNI.
Atmel ma tagħmel l-ebda rappreżentazzjoni jew garanziji fir-rigward tal-eżattezza jew il-kompletezza tal-kontenut ta 'dan id-dokument u tirriserva d-dritt li tagħmel bidliet fl-ispeċifikazzjonijiet u d-deskrizzjonijiet tal-prodotti fi kwalunkwe ħin mingħajr avviż. Atmel ma tagħmel l-ebda impenn li taġġorna l-informazzjoni li tinsab hawnhekk. Sakemm ma jkunx ipprovdut speċifikament mod ieħor, il-prodotti Atmel mhumiex adattati għal, u m'għandhomx jintużaw f'applikazzjonijiet tal-karozzi. Il-prodotti Atmel mhumiex maħsuba, awtorizzati jew iġġustifikati għall-użu bħala komponenti f'applikazzjonijiet maħsuba biex isostnu jew isostnu l-ħajja.