Atmel 8-bit AVR Microcontroller සමඟ 2/4/8K Bytes In-System Programmable Flash
විශේෂාංග
- ඉහළ කාර්ය සාධනයක්, අඩු බලැති AVR® 8-බිට් ක්ෂුද්ර පාලකය
- උසස් RISC ගෘහ නිර්මාණ ශිල්පය
- 120 ප්රබල උපදෙස් - බොහෝ තනි ඔරලෝසු චක්රීය ක්රියාත්මක කිරීම
- 32 x 8 පොදු කාර්ය කාරක ලේඛණ
- පූර්ණ ස්ථිතික මෙහෙයුම
- අස්ථාවර නොවන වැඩසටහන සහ දත්ත මතකයන්
- 2/4 / 8K පද්ධතියේ වැඩසටහන්ගත කළ හැකි වැඩසටහන් මතක ෆ්ලෑෂ් බයිට්
- විඳදරාගැනීම: 10,000 සයිකල් ලියන්න/මකන්න
- 128/256/512 බයිට් ඉන්-සිස්ටම් ක්රමලේඛගත කළ හැකි ඊප්රෝම්
- විඳදරාගැනීම: 100,000 සයිකල් ලියන්න/මකන්න
- 128/256/512 බයිට් අභ්යන්තර SRAM
- ස්වයං-ක්රමලේඛන ෆ්ලෑෂ් වැඩසටහන සහ ඊප්රොම් දත්ත ආරක්ෂාව සඳහා ක්රමලේඛ අගුල
පර්යන්ත ලක්ෂණ
- ප්රෙස්කලර් සහ පීඩබ්ලිව්එම් නාලිකා දෙකක් සහිත බිට් 8 ටයිමර් / කවුන්ටරය
- 8-බිට් අධිවේගී ටයිමරය / වෙනම ප්රෙස්කලර් සමඟ කවුන්ටරය
- වෙනම නිමැවුම් සමඟ ඉහළ සංඛ්යාත පීඩබ්ලිව්එම් නිමැවුම් රෙජිස්ටර් සංසන්දනය කරන්න
- වැඩසටහන්ගත කළ හැකි කාල උත්පාදක යන්ත්රය
- යූඑස්අයි - ආරම්භක තත්ව අනාවරකය සමඟ විශ්ව අනුක්රමික අතුරුමුහුණත
- 10-bit ADC
තනි අවසන් නාලිකා
වැඩසටහන්ගත කළ හැකි වාසි සහිත ආන්තර ADC නාලිකා යුගල (2x, 1x)
උෂ්ණත්වය මැනීම
වෙනම ඔන්-චිප් ඔස්කිලේටර් සමඟ වැඩසටහන්ගත කළ හැකි වොච්ඩෝග් ටයිමර්
ඔන්-චිප් ඇනලොග් සංසන්දකය
විශේෂ ක්ෂුද්ර පාලක විශේෂාංග
debugWIRE On-chip නිදොස් කිරීමේ පද්ධතිය
SPI වරාය හරහා පද්ධති වැඩසටහන්ගත කළ හැකිය
බාහිර හා අභ්යන්තර බාධා ප්රභවයන්
අඩු බල අක්රිය, ADC ශබ්දය අඩු කිරීම සහ බලය අඩු කිරීමේ ක්රම
වැඩි දියුණු කළ බලය නැවත සැකසීමේ පරිපථය
වැඩසටහන්ගත කළ හැකි දුඹුරු-හඳුනාගැනීමේ පරිපථය
අභ්යන්තර ක්රමාංකනය කළ ඔස්කිලේටරය
I / O සහ පැකේජ
වැඩසටහන්ගත කළ හැකි I / O රේඛා හයක්
8-පින් PDIP, 8-පින් SOIC, 20-පෑඩ් QFN / MLF, සහ 8-pin TSSOP (ATtiny45 / V පමණි)
මෙහෙයුම් වෙළුමtage
- 1.8 - 5.5V සඳහා ATtiny25V / 45V / 85V
- ATtiny2.7 / 5.5/25 සඳහා 45 - 85V
වේග ශ්රේණිය
- 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
කාර්මික උෂ්ණත්ව පරාසය
අඩු බලශක්ති පරිභෝජනය
සක්රීය ප්රකාරය:
1 MHz, 1.8V: 300 µA
බල-පහළ ප්රකාරය:
පින් වින්යාසය
Pinout ATtiny25 / 45/85
විස්තර පින් කරන්න
VCC: සැපයුම් පරිමාවtage.
GND: බිම.
Port B (PB5:PB0): Port B යනු අභ්යන්තර පුල්-අප් ප්රතිරෝධක සහිත (එක් එක් බිට් සඳහා තෝරන ලද) 6-bit ද්වි-දිශානුගත I/O වරායකි. Port B නිමැවුම් බෆරවල ඉහළ සින්ක් සහ ප්රභව හැකියාව යන දෙකම සහිත සමමිතික ධාවක ලක්ෂණ ඇත. ආදාන ලෙස, බාහිරව පහළට ඇද ගන්නා ලද Port B පින්, අදින්න-අප් ප්රතිරෝධක සක්රිය කළහොත් ධාරාව ප්රභව කරයි. ඔරලෝසුව ක්රියාත්මක නොවූවත්, යළි පිහිටුවීමේ කොන්දේසියක් සක්රිය වූ විට Port B පින් තුන ප්රකාශ වේ.
වරාය බී ද ලැයිස්තුගත කර ඇති පරිදි ATtiny25 / 45/85 හි විවිධ විශේෂ ලක්ෂණ වල කාර්යයන් ඉටු කරයි
ATtiny25 හි, ක්රමලේඛගත කළ හැකි I / O වරායන් PB3 සහ PB4 (අල්ෙපෙනති 2 සහ 3) ATtiny15 සමඟ පසුගාමී අනුකූලතාවයට සහාය වීම සඳහා ATtiny15 අනුකූලතා ප්රකාරයේදී හුවමාරු වේ.
යළි පිහිටුවන්න: ආදානය යළි පිහිටුවන්න. අවම ස්පන්දන දිගට වඩා වැඩි කාලයක් මෙම පින් එකෙහි අඩු මට්ටමක්, ඔරලෝසුව ක්රියාත්මක නොවන විට සහ යළි පිහිටුවීමේ පින් එක අක්රිය කර නොමැති නම්, යළි පිහිටුවීමක් ජනනය කරයි. අවම ස්පන්දන දිග ලබා දී ඇත වගුව 21-4 165 පිටුවේ. කෙටි ස්පන්දන යළි පිහිටුවීම සහතික නොවේ.
යළි පිහිටුවීමේ පින් (දුර්වල) I / O පින් ලෙසද භාවිතා කළ හැකිය.
ඉවරයිview
ATtiny25 / 45/85 යනු AVR වැඩි දියුණු කළ RISC ගෘහ නිර්මාණ ශිල්පය මත පදනම් වූ අඩු බලැති CMOS 8-bit මයික්රොකොන්ට්රොලර් ය. තනි ඔරලෝසු චක්රයක් තුළ ප්රබල උපදෙස් ක්රියාත්මක කිරීමෙන්, ATtiny25 / 45/85 MHz ට 1 MIPS වෙත ළඟා වන ප්රති put ල අත්කර ගනී, පද්ධති සැලසුම්කරුට බලශක්ති පරිභෝජනයට එදිරිව සැකසුම් වේගය ප්රශස්ත කිරීමට ඉඩ සලසයි.
වාරණ සටහන
AVR හරය පොදු කාර්ය ලේඛණ 32 ක් සමඟ පොහොසත් උපදෙස් මාලාවක් ඒකාබද්ධ කරයි. සියලුම රෙජිස්ටර් 32 ගණිතමය තාර්කික ඒකකයට (ALU) කෙලින්ම සම්බන්ධ වී ඇති අතර, එක් ඔරලෝසු චක්රයක් තුළ ක්රියාත්මක වන එක් උපදෙස් වලින් ස්වාධීන ලේඛණ දෙකක් ලබා ගත හැකිය. සාම්ප්රදායික සීඅයිඑස්සී ක්ෂුද්ර පාලකයන්ට වඩා දස ගුණයකින් වේගවත් ප්රති put ල ලබා ගන්නා අතර එහි ප්රති architect ලයක් ලෙස ගෘහ නිර්මාණ ශිල්පය කේත කාර්යක්ෂම වේ.
ATtiny25 / 45/85 පහත සඳහන් අංග සපයයි: පද්ධති වැඩසටහන්ගත කළ හැකි ෆ්ලෑෂ් 2/4/8K බයිට්, 128/256/512 බයිට් EEPROM, 128/256/256 බයිට් SRAM, පොදු අරමුණු I / O රේඛා 6, සාමාන්ය 32 අරමුණු වැඩ කරන රෙජිස්ටර්, සංසන්දනාත්මක මාතයන් සහිත බිට් 8 ටයිමර් / කවුන්ටරය, බිට් 8 අධිවේගී ටයිමර් / කවුන්ටරය, විශ්ව අනුක්රමික අතුරුමුහුණත, අභ්යන්තර හා බාහිර බාධා කිරීම්, 4-නාලිකා, බිට් 10 ඒඩීසී, අභ්යන්තර වැඩසටහන්ගත කළ හැකි වොච්ඩෝග් ටයිමරයක් ඔස්කිලේටර් සහ මෘදුකාංග තෝරා ගත හැකි බලශක්ති ඉතිරිකිරීමේ ක්රම තුනක්. SRAM, ටයිමර් / කවුන්ටරය, ඒඩීසී, ඇනලොග් සංසන්දකය සහ බාධාකාරී පද්ධතිය අඛණ්ඩව ක්රියාත්මක වීමට ඉඩ දෙන අතර අක්රිය ප්රකාරය CPU නතර කරයි. පවර්-ඩවුන් ප්රකාරය මඟින් රෙජිස්ටර් සං con ටක සුරකින අතර ඊළඟ බාධා හෝ දෘඩාංග යළි පිහිටුවීම තෙක් සියලු චිප ක්රියාකාරකම් අක්රීය කරයි. ADC ශබ්දය අඩු කිරීමේ මාදිලිය CPC සහ ADC හැර අනෙකුත් සියලුම I / O මොඩියුල නවත්වයි, ADC පරිවර්තන අතරතුර මාරුවීමේ ශබ්දය අවම කිරීම.
මෙම උපකරණය නිෂ්පාදනය කරනු ලබන්නේ Atmel හි ඉහළ dens නත්ව අස්ථාවර නොවන මතක තාක්ෂණය භාවිතා කරමිනි. සාම්ප්රදායික-වාෂ්පශීලී නොවන මතක ක්රමලේඛකයෙකු හෝ AVR හරය මත ක්රියාත්මක වන ඔන්-චිප් ඇරඹුම් කේතයක් මඟින් SPI අනුක්රමික අතුරුමුහුණතක් හරහා ක්රමලේඛ මතකය නැවත පද්ධතිය තුළ ක්රියාත්මක කිරීමට ඔන්-චිප් අයිඑස්පී ෆ්ලෑෂ් ඉඩ දෙයි.
ATtiny25 / 45/85 AVR සඳහා පූර්ණ වැඩසටහන් සහ පද්ධති සංවර්ධන මෙවලම් ඇතුළත් වේ: සී කොම්පයිලර්ස්, මැක්රෝ එකලස් කරන්නන්, වැඩසටහන් නිදොස්කරණය / සිමියුලේටර් සහ ඇගයීම් කට්ටල.
සම්පත් ගැන
සංවර්ධන මෙවලම්, යෙදුම් සටහන් සහ දත්ත පත්රිකා බාගත කිරීම සඳහා පුළුල් කට්ටලයක් ලබා ගත හැකිය http://www.atmel.com/avr.
කේතය Examples
මෙම ලේඛනයේ සරල සරල කේත ඇතුළත් වේampඋපාංගයේ විවිධ කොටස් භාවිතා කරන්නේ කෙසේදැයි කෙටියෙන් පෙන්වන les. මෙම කේතය exampකොටස් විශේෂිත ශීර්ෂය යැයි උපකල්පනය කරයි file එකතු කිරීමට පෙර ඇතුළත් වේ. සියලුම සී සම්පාදක අලෙවිකරුවන්ට ශීර්ෂය තුළ බිට් අර්ථ දැක්වීම් ඇතුළත් නොවන බව මතක තබා ගන්න fileසී සහ සී හි බාධා හැසිරවීම සම්පාදක මත රඳා පවතී. වැඩි විස්තර සඳහා කරුණාකර සී සම්පාදක ලියකියවිලි සමඟ තහවුරු කරන්න.
දීර් I කරන ලද I / O සිතියමේ පිහිටා ඇති I / O රෙජිස්ටාර් සඳහා, “IN”, “OUT”, “SBIS”, “SBIC”, “CBI” සහ “SBI” උපදෙස් වෙනුවට දීර් extended I වෙත ප්රවේශ වීමට ඉඩ දෙන උපදෙස් ආදේශ කළ යුතුය. / ඕ. සාමාන්යයෙන් මෙහි අර්ථය “එල්ඩීඑස්” සහ “එස්ටීඑස්” “එස්බීආර්එස්”, “එස්බීආර්සී”, “එස්බීආර්” සහ “සීබීආර්” සමඟ සංයුක්ත වේ. සෑම AVR උපාංගයකම දීර් I I / O සිතියමක් ඇතුළත් නොවන බව සලකන්න.
ධාරිත්රක ස්පර්ශ සංවේදනය
Atmel QTouch පුස්තකාලය Atmel AVR මයික්රොකොන්ට්රෝලර් මත ස්පර්ශ සංවේදී අතුරුමුහුණත් සඳහා භාවිතා කිරීමට සරල විසඳුමක් සපයයි. QTouch පුස්තකාලයට QTouch® සහ QMatrix® අත්පත් කර ගැනීමේ ක්රම සඳහා සහය ඇතුළත් වේ.
ස්පර්ශ නාලිකා සහ සංවේදක නිර්වචනය කිරීම සඳහා QTouch පුස්තකාලය සම්බන්ධ කිරීමෙන් සහ පුස්තකාලයේ යෙදුම් වැඩසටහන්-අතුරු මුහුණත (API) භාවිතා කිරීමෙන් ස්පර්ශ සංවේදනය ඕනෑම යෙදුමකට පහසුවෙන් එකතු කළ හැකිය. යෙදුම පසුව නාලිකා තොරතුරු ලබා ගැනීමට සහ ස්පර්ශ සංවේදකයේ තත්වය තීරණය කිරීමට API අමතයි.
QTouch පුස්තකාලය නොමිලේ වන අතර ඇට්මෙල් වෙතින් බාගත හැකිය webඅඩවිය. ක්රියාත්මක කිරීම පිළිබඳ වැඩි විස්තර සහ විස්තර සඳහා, QTouch පුස්තකාල පරිශීලක මාර්ගෝපදේශය බලන්න - Atmel වෙතින් ද ලබා ගත හැකිය. webඅඩවිය.
දත්ත රඳවා තබා ගැනීම
විශ්වසනීයත්වය සුදුසුකම් ප්රති results ලවලින් පෙනී යන්නේ ප්රක්ෂේපිත දත්ත රඳවා ගැනීමේ අසාර්ථක අනුපාතය වසර 1 ක් තුළ 20 ° C හෝ අවුරුදු 85 ට 100. C දී 25 PPM ට වඩා බෙහෙවින් අඩු බවයි.
AVR CPU හරය
හැඳින්වීම
මෙම කොටස පොදුවේ AVR මූලික ගෘහ නිර්මාණ ශිල්පය ගැන සාකච්ඡා කරයි. CPU හරයේ ප්රධාන කාර්යය වනුයේ නිවැරදි වැඩසටහන් ක්රියාත්මක කිරීම සහතික කිරීමයි. එබැවින් මතකයන්ට ප්රවේශ වීමට, ගණනය කිරීම් සිදු කිරීමට, පර්යන්ත පාලනය කිරීමට සහ බාධා කිරීම් හැසිරවීමට CPU ට හැකි විය යුතුය.
වාස්තු විද්යාත්මකව ඉවරයිview
කාර්ය සාධනය සහ සමාන්තරකරණය උපරිම කිරීම සඳහා, AVR හාවඩ් ගෘහ නිර්මාණ ශිල්පයක් භාවිතා කරයි - වැඩසටහන් සහ දත්ත සඳහා වෙනම මතකයන් සහ බස් රථ සමඟ. වැඩසටහන් මතකයේ ඇති උපදෙස් තනි මට්ටමේ නල මාර්ගයකින් ක්රියාත්මක වේ. එක් උපදෙස් ක්රියාත්මක වන අතර, ඊළඟ උපදෙස් වැඩසටහන් මතකයෙන් ලබා ගනී. මෙම සංකල්පය සෑම ඔරලෝසු චක්රයකම ක්රියාත්මක කිරීමට උපදෙස් ලබා දේ. ක්රමලේඛ මතකය යනු පද්ධතිය තුළ ප්රජනනය කළ හැකි ෆ්ලෑෂ් මතකයයි.
ඉක්මන් ප්රවේශ ලේඛනය File තනි ඔරලෝසු චක්ර ප්රවේශ වේලාවක් සහිත 32 x 8-bit පොදු කාර්ය ලේඛන අඩංගු වේ. මෙය තනි-චක්ර අංක ගණිත තාර්කික ඒකකය (ALU) ක්රියාකාරිත්වයට ඉඩ සලසයි. සාමාන්ය ALU මෙහෙයුමකදී, ඔපෙරාන්ඩ් දෙකක් රෙජිස්ටරයෙන් ප්රතිදානය වේ File, මෙහෙයුම ක්රියාත්මක වන අතර, ප්රතිඵලය නැවත ලේඛනයේ ගබඩා කර ඇත File- එක් ඔරලෝසු චක්රයක.
රෙජිස්ටර් 32 න් 16 ක් දත්ත අවකාශය ඇමතීම සඳහා බිටු 16 වක්ර ලිපින රෙජිස්ටර් පොයින්ටර් තුනක් ලෙස භාවිතා කළ හැකිය - කාර්යක්ෂම ලිපින ගණනය කිරීම් සක්රීය කරයි. මෙම ලිපින දර්ශකයන්ගෙන් එකක් ෆ්ලෑෂ් වැඩසටහන් මතකයේ ඇති වගු බැලීම සඳහා ලිපින දර්ශකයක් ලෙසද භාවිතා කළ හැකිය. මෙම එකතු කළ ශ්රිත ලේඛණ XNUMX-බිට් X-, Y- සහ Z- ලේඛනය වේ, මෙම කොටසේ පසුව විස්තර කෙරේ.
ALU විසින් ලේඛකයන් අතර හෝ නියත හා ලේඛනයක් අතර අංක ගණිත හා තාර්කික මෙහෙයුම් සඳහා සහාය වේ. තනි ලේඛණ මෙහෙයුම් ALU හි ක්රියාත්මක කළ හැකිය. අංක ගණිතමය මෙහෙයුමකින් පසුව, මෙහෙයුමේ ප්රති result ලය පිළිබඳ තොරතුරු පිළිබිඹු කිරීම සඳහා තත්ව ලේඛනය යාවත්කාලීන කරනු ලැබේ.
වැඩසටහන් ප්රවාහය සපයනු ලබන්නේ කොන්දේසි සහිත සහ කොන්දේසි විරහිත පැනීම සහ ඇමතුම් උපදෙස් මගින් වන අතර, මුළු ලිපින අවකාශය කෙලින්ම ආමන්ත්රණය කළ හැකිය. බොහෝ AVR උපදෙස් වලට තනි-බිට් 16 වචන ආකෘතියක් ඇත, නමුත් බිටු 32 උපදෙස් ද ඇත.
බාධා කිරීම් සහ සබ්ට්රවුටින් ඇමතුම් අතරතුර, ආපසු ලිපිනය වැඩසටහන් කවුන්ටරය (පීසී) තොගයේ ගබඩා කර ඇත. සාමාන්ය දත්ත SRAM තුළ තොගය effectively ලදායී ලෙස වෙන් කර ඇති අතර, එම නිසා තොගයේ ප්රමාණය සීමා වන්නේ මුළු SRAM ප්රමාණයෙන් සහ SRAM භාවිතයෙනි. සියළුම පරිශීලක වැඩසටහන් නැවත සැකසීමේ ක්රියාවලියේදී එස්පී ආරම්භ කළ යුතුය (උප චර්යාවන් හෝ බාධා කිරීම් ක්රියාත්මක කිරීමට පෙර). ස්ටැක් පොයින්ටරය (එස්පී) කියවීමට / ලිවීමට අයි / ඕ අවකාශයට පිවිසිය හැකිය. AVR ගෘහ නිර්මාණ ශිල්පය සඳහා සහය දක්වන විවිධ ලිපින ක්රම පහ හරහා SRAM දත්ත පහසුවෙන් ලබා ගත හැකිය.
AVR ගෘහ නිර්මාණ ශිල්පයේ මතක අවකාශයන් සියල්ලම රේඛීය සහ සාමාන්ය මතක සිතියම් වේ.
නම්යශීලි බාධා මොඩියුලයක I / O අවකාශයේ පාලක ලේඛණ තත්ව ලේඛනයේ අතිරේක ගෝලීය බාධා කිරීම් සක්රීය බිට් ඇත. සියලුම බාධා කිරීම් වලට වෙනම බාධාකාරී දෛශිකයක් ඇත. බාධා කිරීම් වලට ඔවුන්ගේ ප්රමුඛතා දෛශික පිහිටීම අනුව ප්රමුඛතාවය ඇත. බාධාකාරී දෛශික ලිපිනය අඩු වන තරමට ප්රමුඛතාවය වැඩි වේ.
පාලක රෙජිස්ටර්, එස්පීඅයි සහ අනෙකුත් අයි/ඕ ක්රියාකාරකම් ලෙස සීපීයූ පර්යන්ත කාර්යයන් සඳහා ලිපිනයන් 64 ක් අයි/ඕ මතක අවකාශයේ ඇත. I/O මතකය සෘජුවම හෝ රෙජිස්ටරයට අයත් දත්ත අවකාශ ස්ථාන වලට ප්රවේශ විය හැකිය File, 0x20 - 0x5F.
ALU - අංක ගණිත තාර්කික ඒකකය
ඉහළ කාර්යසාධනයක් සහිත AVR ALU ක්රියාත්මක වන්නේ සියලුම පොදු කාර්ය ලේඛණ 32 සමඟ සෘජුව සම්බන්ධවය. තනි ඔරලෝසු චක්රයක් තුළ, පොදු අරමුණු ලේඛණ අතර හෝ ලේඛනයක් සහ ක්ෂණික අතර ගණිතමය මෙහෙයුම් ක්රියාත්මක වේ. ALU මෙහෙයුම් ප්රධාන කාණ්ඩ තුනකට බෙදා ඇත - අංක ගණිත, තාර්කික සහ බිටු ශ්රිත. ගෘහ නිර්මාණ ශිල්පයේ සමහර ක්රියාත්මක කිරීම් අත්සන් කරන ලද / අත්සන් නොකළ ගුණ කිරීම සහ භාගික ආකෘතිය යන දෙකටම සහාය වන ප්රබල ගුණකයක් සපයයි. සවිස්තරාත්මක විස්තරයක් සඳහා “උපදෙස් කට්ටලය” කොටස බලන්න.
තත්ව ලේඛනය
තත්ව ලේඛනයේ මෑතකදී ක්රියාත්මක කරන ලද ගණිත උපදෙස්වල ප්රති result ල පිළිබඳ තොරතුරු අඩංගු වේ. කොන්දේසි සහිත මෙහෙයුම් සිදු කිරීම සඳහා වැඩසටහන් ප්රවාහය වෙනස් කිරීම සඳහා මෙම තොරතුරු භාවිතා කළ හැකිය. උපදෙස් කට්ටල යොමුවෙහි දක්වා ඇති පරිදි සියලු ALU මෙහෙයුම් වලින් පසුව තත්ව ලේඛනය යාවත්කාලීන වන බව සලකන්න. මෙය බොහෝ අවස්ථාවන්හීදී සැසඳීමේ උපදෙස් භාවිතා කිරීමේ අවශ්යතාවය ඉවත් කරනු ඇති අතර එහි ප්රති fast ලයක් ලෙස වේගවත් හා සංයුක්ත කේතයක් ලැබෙනු ඇත.
බාධා කිරීමේ පුරුද්දකට ඇතුළු වන විට තත්ව ලේඛනය ස්වයංක්රීයව ගබඩා නොවන අතර බාධාවකින් ආපසු එන විට ප්රතිස්ථාපනය වේ. මෙය මෘදුකාංග මගින් හැසිරවිය යුතුය.
SREG - AVR තත්ව ලේඛනය
AVR තත්ව ලේඛනය - SREG - අර්ථ දැක්වෙන්නේ:
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x3F | I | T | H | S | V | N | Z | C | SREG |
කියවන්න/ලියන්න | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිට් 7 - අයි: ගෝලීය බාධා කිරීම් සක්රීය කරන්න
බාධා කිරීම් සක්රීය කිරීම සඳහා ගෝලීය බාධා සක්රීය කිරීමේ බිට් සැකසිය යුතුය. තනි බාධා කිරීම් සක්රීය පාලනය පසුව වෙනම පාලන ලේඛනයේ සිදු කරනු ලැබේ. ගෝලීය බාධා සක්රීය කිරීමේ ලේඛනය හිස් කර ඇත්නම්, එක් එක් බාධා කිරීම් සක්රීය සැකසුම් වලින් ස්වාධීනව කිසිදු බාධාවක් සක්රීය නොවේ. බාධා කිරීම් සිදු වූ පසු දෘඩාංග මඟින් I-bit නිෂ්කාශනය වන අතර පසුව ඇති වන බාධා කිරීම් සක්රීය කිරීම සඳහා RETI උපදෙස් මඟින් සකසා ඇත. උපදෙස් කට්ටල යොමුවෙහි විස්තර කර ඇති පරිදි, SEI සහ CLI උපදෙස් සමඟ යෙදුම මඟින් I-bit සැකසිය හැකි අතර නිෂ්කාශනය කළ හැකිය.
බිට් 6 - ටී: බිට් පිටපත් ආචයනය
බීට් පිටපත් කිරීමේ උපදෙස් බීඑල්ඩී (බිට් ලෝඩ්) සහ බීඑස්ටී (බිට් ස්ටෝර්) මඟින් ක්රියාත්මක වන බිට් සඳහා මූලාශ්රය හෝ ගමනාන්තය ලෙස ටී-බිට් භාවිතා කරයි. ලේඛනයේ ලේඛනයෙන් ටිකක් File බීඑස්ටී උපදෙස් මඟින් ටී එකට පිටපත් කළ හැකි අතර, රෙජිස්ටරයේ ඇති රෙජිස්ටරයකදී ටී එකේ ස්වල්පයක් ටිකකට පිටපත් කළ හැකිය. File බීඑල්ඩී උපදෙස් අනුව.
බිට් 5 - එච්: අඩක් රැගෙන යාමේ ධජය
අර්ධ ගණිත ධජය එච් සමහර ගණිතමය මෙහෙයුම් වලදී අඩක් රැගෙන යන බව දක්වයි. අර්ධ කැරි BCD අංක ගණිතයට ප්රයෝජනවත් වේ. සවිස්තරාත්මක තොරතුරු සඳහා “උපදෙස් කට්ටල විස්තරය” බලන්න.
බිට් 4 – S: Sign Bit, S = N ⊕ V
එස්-බිට් සැමවිටම සුවිශේෂී හෝ N ණ ධජය එන් සහ දෙකේ අනුපූරක පිටාර ධජය අතර වේ. සවිස්තරාත්මක තොරතුරු සඳහා “උපදෙස් කට්ටල විස්තරය” බලන්න.
බිට් 3 - වී: දෙදෙනෙකුගේ අනුපූරක පිටාර ධජය
දෙකේ අනුපූරක පිටාර ධජය V හි අනුපූරක අංක ගණිතයට සහය දක්වයි. සවිස්තරාත්මක තොරතුරු සඳහා “උපදෙස් කට්ටල විස්තරය” බලන්න.
බිට් 2 - එන්: සෘණ ධජය
N ණ ධජ N මගින් අංක ගණිත හෝ තර්කන මෙහෙයුමක negative ණාත්මක ප්රති result ලයක් පෙන්නුම් කරයි. සවිස්තරාත්මක තොරතුරු සඳහා “උපදෙස් කට්ටල විස්තරය” බලන්න.
බිට් 1 - ඉසෙඩ්: ශුන්ය ධජය
ශුන්ය ධජ Z යනු ගණිතමය හෝ තර්කන මෙහෙයුමක ශුන්ය ප්රති result ලයක් පෙන්නුම් කරයි. සවිස්තරාත්මක තොරතුරු සඳහා “උපදෙස් කට්ටල විස්තරය” බලන්න.
බිට් 0 - සී: ධජය රැගෙන යන්න
කැරි කොඩි සී මඟින් අංක ගණිතමය හෝ තාර්කික මෙහෙයුමක් සිදු කරයි. සවිස්තරාත්මක තොරතුරු සඳහා “උපදෙස් කට්ටල විස්තරය” බලන්න.
පොදු අරමුණු ලේඛනය File
ලේඛනය File AVR වැඩි දියුණු කළ RISC උපදෙස් මාලාව සඳහා ප්රශස්තිකරණය කර ඇත. අවශ්ය කාර්ය සාධනය සහ නම්යශීලී බව සාක්ෂාත් කර ගැනීම සඳහා පහත සඳහන් ආදාන/ප්රතිදාන යෝජනා ක්රම සඳහා රෙජිස්ටරයෙන් සහයෝගය ලැබේ File:
එක්-බිට් 8 නිමැවුම් ක්රියාකාරිත්වය සහ බිටු 8 ප්රති result ල ආදානය
බිටු 8 ප්රතිදාන ක්රියාදාමයන් දෙකක් සහ බිටු 8 ප්රති result ල ආදානය
බිටු 8 ප්රතිදාන ක්රියාදාමයන් දෙකක් සහ බිටු 16 ප්රති result ල ආදානය
එක්-බිට් 16 නිමැවුම් ක්රියාකාරිත්වය සහ බිටු 16 ප්රති result ල ආදානය
රූපය 4-2 CPU හි පොදු කාර්ය ලේඛණ 32 ක ව්යුහය පෙන්වයි.
හි පෙන්වා ඇති පරිදි රූපය 4-2, සෑම ලේඛනයකටම දත්ත මතක ලිපිනයක් ද පවරනු ලැබේ, ඒවා පරිශීලක දත්ත අවකාශයේ පළමු ස්ථාන 32 වෙත සෘජුවම සිතියම්ගත කරයි. SRAM ස්ථාන ලෙස භෞතිකව ක්රියාවට නංවා නොතිබුණද, X-, Y- සහ Z-පොයින්ටර් රෙජිස්ටර් ඕනෑම ලේඛනයක් සුචිගත කිරීමට සැකසිය හැකි බැවින්, මෙම මතක සංවිධානය රෙජිස්ටර් වෙත ප්රවේශ වීමේදී විශාල නම්යශීලී බවක් ලබා දෙයි. file.රෙජිස්ටර් මත ක්රියාත්මක වන උපදෙස් බොහොමයක් File සියලුම රෙජිස්ටර් වෙත සෘජු ප්රවේශය ඇති අතර ඒවායින් බොහොමයක් තනි චක්ර උපදෙස් වේ.
X- ලේඛනය, Y- ලේඛනය සහ Z- ලේඛනය
R26..R31 ලේඛනයේ පොදු අරමුණු සඳහා අමතර කාර්යයන් කිහිපයක් ඇත. මෙම ලේඛණ දත්ත අවකාශය වක්රව ඇමතීම සඳහා බිටු 16 ලිපින වේ. විස්තර කර ඇති පරිදි X, Y සහ Z යන වක්ර ලිපින තුන අර්ථ දක්වා ඇත රූපය 4-3.
විවිධ ලිපින ක්රම වලදී මෙම ලිපින ලේඛකයන්ට ස්ථාවර විස්ථාපනය, ස්වයංක්රීය වර්ධක සහ ස්වයංක්රීය අඩුවීමක් ලෙස ක්රියා කරයි (විස්තර සඳහා උපදෙස් කට්ටල යොමුව බලන්න).
ස්ටැක් පොයින්ටර්
තාවකාලික දත්ත ගබඩා කිරීම, දේශීය විචල්යයන් ගබඩා කිරීම සහ බාධා කිරීම් සහ සබ්ට්රවුටින් ඇමතුම් වලින් පසු ආපසු ලිපින ගබඩා කිරීම සඳහා මෙම තොගය ප්රධාන වශයෙන් භාවිතා වේ. Stack Pointer Register සෑම විටම Stack හි ඉහළට යොමු කරයි. ඉහළ මතක ස්ථානවල සිට පහළ මතක ස්ථාන දක්වා වර්ධනය වන පරිදි තොගය ක්රියාත්මක වන බව සලකන්න. මෙයින් ගම්ය වන්නේ Stack PUSH විධානයක් මඟින් Stack Pointer අඩු වන බවයි.
ස්ටැක් පොයින්ටරය මඟින් සබ්ට්රවුටින් සහ ඉන්ටර්පෙට් ස්ටැක්ස් පිහිටා ඇති දත්ත SRAM ස්ටැක් ප්රදේශයට යොමු කරයි. කිසියම් උපසිරැසි ඇමතුම් ක්රියාත්මක කිරීමට පෙර හෝ අන්තර්-විවරයන් සක්රීය කිරීමට පෙර SRAM දත්තවල මෙම සිරස් අවකාශය වැඩසටහන මඟින් අර්ථ දැක්විය යුතුය. 0x60 ට ඉහළින් ලකුණු කිරීමට Stack Pointer සැකසිය යුතුය. පුෂ් උපදෙස් සමඟ දත්ත තොගයට තල්ලු කරන විට ස්ටැක් පොයින්ටරය එකකින් අඩු වන අතර, ආපසු ලිපිනය සබ්ට්රවුටින් ඇමතුමකින් හෝ බාධා කිරීම් සමඟ ස්ටැක් එකට තල්ලු කරන විට එය දෙකකින් අඩු වේ. POP උපදෙස් සමඟ ස්ටැක් එකෙන් දත්ත පොප් කරන විට ස්ටැක් පොයින්ටරය එකකින් වැඩි වන අතර, සබ්ට්රවුටින් ආර්ඊටී වෙතින් ආපසු පැමිණීම හෝ බාධා කරන ලද ආර්ඊටීඅයි වෙතින් ආපසු පැමිණීම සමඟ දත්ත ස්ටැක් එකෙන් පිටවන විට එය දෙකකින් වැඩි වේ.
AVR Stack Pointer එක I / O අවකාශයේ බිටු 8 රෙජිස්ටර් දෙකක් ලෙස ක්රියාත්මක වේ. ඇත්ත වශයෙන්ම භාවිතා කරන බිට් ගණන ක්රියාත්මක කිරීම මත රඳා පවතී. AVR ගෘහ නිර්මාණ ශිල්පයේ සමහර ක්රියාත්මක කිරීම් වල දත්ත අවකාශය ඉතා කුඩා බැවින් SPL පමණක් අවශ්ය බව සලකන්න. මෙම අවස්ථාවේදී, SPH ලේඛනය නොපවතී.
SPH සහ SPL - Stack Pointer Register
ටිකක් | 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 | ||
කියවන්න/ලියන්න | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
කියවන්න/ලියන්න | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | |
ආරම්භක අගය | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් | රාමන්ඩ් |
උපදෙස් ක්රියාත්මක කිරීමේ වේලාව
මෙම කොටස උපදෙස් ක්රියාත්මක කිරීම සඳහා වන සාමාන්ය ප්රවේශ කාල සංකල්ප විස්තර කරයි. AVR CPU මෙහෙයවනු ලබන්නේ CPU ඔරලෝසුව clkCPU මගින් වන අතර, චිපය සඳහා තෝරාගත් ඔරලෝසු මූලාශ්රයෙන් සෘජුවම ජනනය වේ. අභ්යන්තර ඔරලෝසු බෙදීමක් භාවිතා නොවේ.
රූපය 4-4 හාවඩ් ගෘහ නිර්මාණ ශිල්පය සහ වේගවත් ප්රවේශ ලේඛනය මගින් සක්රීය කරන ලද සමාන්තර උපදෙස් ලබා ගැනීම් සහ උපදෙස් ක්රියාත්මක කිරීම් පෙන්වයි File සංකල්පය. පිරිවැය සඳහා ශ්රිතයන්, ඔරලෝසුවකට ශ්රිතයන් සහ බල ඒකකයකට ක්රියාකාරීත්වය සඳහා අනුරූප අද්විතීය ප්රතිඵල සමඟින් MHz එකකට MIPS 1ක් දක්වා ලබා ගැනීමට මූලික නල මාර්ග සංකල්පය මෙයයි.
රූපය 4-5. තනි චක්ර ALU මෙහෙයුම
හැසිරවීම නැවත සකසන්න සහ බාධා කරන්න
AVR විවිධ බාධාකාරී ප්රභවයන් සපයයි. මෙම බාධා කිරීම් සහ වෙනම යළි පිහිටුවීමේ දෛශිකයට වැඩසටහන් මතක අවකාශයේ වෙනම වැඩසටහන් දෛශිකයක් ඇත. සියලු බාධා කිරීම් සඳහා තනි සක්රීය බිටු පවරා ඇති අතර ඒවා බාධා කිරීම් සක්රීය කිරීම සඳහා තත්ව ලේඛනයේ ගෝලීය බාධා කිරීම් සක්රීය බිට් සමඟ ලිවිය යුතුය.
ක්රමලේඛ මතක අවකාශයේ අඩුම ලිපින පෙරනිමියෙන් අර්ථ දැක්වෙන්නේ යළි පිහිටුවීම සහ බාධාකාරී දෛශික ලෙස ය. දෛශිකවල සම්පූර්ණ ලැයිස්තුව මෙහි දක්වා ඇත 48 වන පිටුවේ “බාධා කිරීම්”. විවිධ බාධා කිරීම් වල ප්රමුඛතා මට්ටම් ද ලැයිස්තුව විසින් තීරණය කරනු ලැබේ. ලිපිනය අඩු වන විට ප්රමුඛතා මට්ටම වේ. RESET හි ඉහළම ප්රමුඛතාවය ඇති අතර ඊළඟට INT0 - බාහිර බාධා කිරීම් ඉල්ලීම 0 වේ.
බාධාවක් සිදු වූ විට, ගෝලීය බාධා කිරීම් සක්රීය I-bit ඉවත් කර සියලු බාධා කිරීම් අක්රීය කර ඇත. මෘදුකාංගය භාවිතා කරන්නාට කූඩු බාධා කිරීම් සක්රීය කිරීම සඳහා තර්කනය I-bit වෙත ලිවිය හැකිය. සියලු සක්රීය බාධා කිරීම් මඟින් වත්මන් බාධාකිරීමේ ක්රියාවලියට බාධා කළ හැකිය. බාධා කිරීම් උපදෙස් වලින් නැවත පැමිණීම - RETI - ක්රියාත්මක වන විට I-bit ස්වයංක්රීයව සකසා ඇත.
මූලික වශයෙන් බාධා කිරීම් වර්ග දෙකක් තිබේ. පළමු වර්ගය අවුලුවනු ලබන්නේ බාධාකාරී ධජය සැකසෙන සිදුවීමක් මගිනි. මෙම බාධා කිරීම් සඳහා, බාධා කිරීම් හැසිරවීමේ ක්රියාවලිය ක්රියාත්මක කිරීම සඳහා වැඩසටහන් කවුන්ටරය සත්ය බාධාකාරී දෛශිකයට දෛශික කර ඇති අතර දෘඩාංග අනුරූප බාධා ධජය ඉවත් කරයි. හිස් කළ යුතු ධජ බිටු ස්ථානයට (ය) තාර්කික එකක් ලිවීමෙන් බාධාකාරී ධජ ඉවත් කළ හැකිය. අනුරූපී බාධා සක්රීය බිට් ඉවත් කරන අතරතුර බාධාකාරී තත්වයක් ඇති වුවහොත්, බාධා කිරීම් සක්රීය කරන තෙක් බාධාකාරී ධජය සකසා මතක තබා ගනු ඇත, නැතහොත් මෘදුකාංගය මඟින් ධජය ඉවත් කරනු ලැබේ. ඒ හා සමානව, ග්ලෝබල් ඉන්ටරෙප්ට් එන්බයිල් බිට් එක හිස් කරන විට එක් හෝ වැඩි බාධාකාරී තත්වයන් ඇති වුවහොත්, ග්ලෝබල් ඉන්ටර්පෙට් එන්බයිල් බිට් එක සැකසෙන තෙක් අනුරූපී බාධා කොඩි (ය) සකසා මතක තබා ගනු ඇති අතර පසුව එය ප්රමුඛතා අනුපිළිවෙලින් ක්රියාත්මක වේ.
දෙවන වර්ගයේ බාධා කිරීම් බාධාකාරී තත්ත්වය පවතින තාක් කල් අවුලුවනු ඇත. මෙම බාධා කිරීම් වලට බාධා කොඩි නොමැත. බාධා කිරීම් සක්රීය කිරීමට පෙර බාධාකාරී තත්ත්වය අතුරුදහන් වුවහොත්, බාධා කිරීම අවුලුවනු නොලැබේ.
AVR බාධාවකින් පිටවන විට, එය සෑම විටම ප්රධාන වැඩසටහන වෙත ආපසු යන අතර, අපේක්ෂිත බාධා කිරීම් සිදුකිරීමට පෙර තවත් උපදෙස් ක්රියාත්මක කරයි.
බාධා කිරීමේ පුරුද්දකට ඇතුළු වන විට තත්ව ලේඛනය ස්වයංක්රීයව ගබඩා නොවන බවත්, බාධාකාරී පුරුද්දකින් ආපසු එන විට ප්රතිස්ථාපනය නොවන බවත් සලකන්න. මෙය මෘදුකාංග මගින් හැසිරවිය යුතුය.
බාධා කිරීම් අක්රීය කිරීම සඳහා සීඑල්අයි උපදෙස් භාවිතා කරන විට, බාධා කිරීම් වහාම අක්රිය වේ. සීඑල්අයි උපදෙස් සමඟ එකවර සිදු වුව ද සීඑල්අයි උපදෙස් වලින් පසු කිසිදු බාධාවක් සිදු නොකෙරේ. පහත දැක්වෙන හිටපුampකාලානුරූපී ඊප්රෝම් ලිවීමේ අනුක්රමය තුළ ඇති වන බාධා වළක්වා ගැනීම සඳහා මෙය භාවිතා කළ හැක්කේ කෙසේදැයි ලේ පෙන්වයි.
එකලස් කිරීමේ කේතය Example |
r16 හි, SREG; SREG අගය ගබඩා කරන්න
cli ; කාලානුක්රමික අනුපිළිවෙල තුළ බාධා කිරීම් අක්රීය කරන්න sbi EECR, EEMPE; EEPROM ලිවීම ආරම්භ කරන්න sbi EECR, EEPE පිටතට SREG, r16 ; SREG අගය ප්රතිසාධනය කරන්න (I-bit) |
සී කේතය Example |
char cSREG;
cSREG = SREG; /* SREG අගය ගබඩා කරන්න */ /* කාලානුක්රමික අනුපිළිවෙල තුළ බාධා කිරීම් අක්රීය කරන්න */ _CLI (); EECR |= (1< EECR | = (1 < SREG = cSREG; /* SREG අගය ප්රතිසාධනය කරන්න (I-bit) */ |
බාධා කිරීම් සක්රීය කිරීම සඳහා SEI උපදෙස් භාවිතා කරන විට, මෙම හිටපු ඡායාරූපයෙහි දැක්වෙන පරිදි, යම් යම් බාධා කිරීම් සිදු වීමට පෙර SEI පහත දැක්වෙන උපදෙස් ක්රියාත්මක කෙරේ.ample.
එකලස් කිරීමේ කේතය Example |
sei ; Global Interrupt Enable සකසන්න
නින්ද; නින්දට ඇතුළු වන්න, බාධා එනතෙක් බලා සිටින්න ; සටහන: අපේක්ෂා කිරීමට පෙර නින්දට ඇතුළු වේ ; බාධා (ය) |
සී කේතය Example |
_SEI (); /* Global Interrupt Enable සකසන්න */
_SLEEP(); /* නින්දට ඇතුළු වන්න, බාධා කිරීම් බලා සිටීම */ / * සටහන: කිසියම් බාධා කිරීම් (ය) ඇතිවීමට පෙර නින්දට ඇතුළු වේ * / |
ප්රතිචාර කාලය බාධා කරන්න
සක්රිය කර ඇති සියලුම AVR බාධා කිරීම් සඳහා බාධා කිරීම් ක්රියාත්මක කිරීමේ ප්රතිචාරය අවම වශයෙන් ඔරලෝසු චක්ර හතරකි. ඔරලෝසු චක්ර හතරකට පසු සත්ය බාධා කිරීම් හැසිරවීමේ ක්රමලේඛ දෛශික ලිපිනය ක්රියාත්මක වේ. මෙම ඔරලෝසු චක්ර හතර තුළ, වැඩසටහන් කවුන්ටරය තොගයට තල්ලු කරනු ලැබේ. දෛශිකය සාමාන්යයෙන් බාධාකාරී චර්යාවට පැනීමකි, මෙම පැනීම ඔරලෝසු චක්ර තුනක් ගනී. බහු චක්රීය උපදෙස් ක්රියාත්මක කිරීමේදී බාධාවක් සිදුවුවහොත්, බාධාව සේවය කිරීමට පෙර මෙම උපදෙස් සම්පූර්ණ වේ. MCU නින්දේ ප්රකාරයේදී බාධාවක් සිදුවුවහොත්, බාධා කිරීම් ක්රියාත්මක කිරීමේ ප්රතිචාර කාලය ඔරලෝසු චක්ර හතරකින් වැඩි වේ. මෙම වැඩිවීම තෝරාගත් නින්ද ප්රකාරයෙන් ආරම්භක වේලාවට අමතරව වේ.
බාධා කිරීම් හැසිරවීමේ ක්රියාවලියකින් නැවත පැමිණීම ඔරලෝසු චක්ර හතරක් ගනී. මෙම ඔරලෝසු චක්ර හතර අතරතුර, වැඩසටහන් කවුන්ටරය (බයිට් දෙකක්) නැවත තොගයෙන් පිටතට ගෙන එනු ලැබේ, ස්ටැක් පොයින්ටරය දෙකින් වැඩි වන අතර SREG හි අයි-බිට් සකසා ඇත.
AVR මතකයන්
මෙම කොටස ATtiny25 / 45/85 හි විවිධ මතකයන් විස්තර කරයි. AVR ගෘහ නිර්මාණ ශිල්පයට ප්රධාන මතක අවකාශ දෙකක් ඇත, දත්ත මතකය සහ වැඩසටහන් මතක අවකාශය. ඊට අමතරව, ATtiny25 / 45/85 දත්ත ගබඩා කිරීම සඳහා EEPROM මතකයක් දක්වයි. මතක අවකාශ තුනම රේඛීය හා නිත්යයි.
පද්ධතිය තුළ නැවත වැඩසටහන්ගත කළ හැකි ෆ්ලෑෂ් වැඩසටහන් මතකය
ATtiny25 / 45/85 බයිට් 2/4/8K බයිට් 16 -32 / 1024K බයිට් අඩංගු වේ. වැඩසටහන් වල වයස් සීමාව සඳහා පද්ධතියේ ප්රජනනය කළ හැකි ෆ්ලෑෂ් මතකය. සියලුම AVR උපදෙස් බිටු 2048 ක් හෝ 4096 ක් පළල බැවින් ෆ්ලෑෂ් 16/XNUMX/XNUMX x XNUMX ලෙස සංවිධානය කර ඇත.
ෆ්ලෑෂ් මතකය අවම වශයෙන් ලිවීමේ / මකාදැමීමේ චක්ර 10,000 ක් විඳදරා ගනී. ATtiny25 / 45/85 වැඩසටහන් කවුන්ටරය (PC) බිටු 10/11/12 පළල වන අතර එමඟින් 1024/2048/4096 වැඩසටහන් මතක ස්ථාන ඇමතීම. “මතක වැඩසටහන- 147 වන පිටුවේ එස්පීඅයි අල්ෙපෙනති භාවිතා කරමින් ෆ්ලෑෂ් දත්ත අනුක්රමික බාගත කිරීම පිළිබඳ විස්තරාත්මක විස්තරයක් අඩංගු වේ.
සමස්ත වැඩසටහන් මතක ලිපින අවකාශය තුළ නිරන්තර වගු වෙන් කළ හැකිය (LPM - Load Program මතක උපදෙස් විස්තරය බලන්න).
රූපය 5-1. වැඩසටහන් මතක සිතියම
SRAM දත්ත මතකය
රූපය 5-2 ATtiny25 / 45/85 SRAM මතකය සංවිධානය වී ඇති ආකාරය පෙන්වයි.
පහළ 224/352/607 දත්ත මතක ස්ථාන ලියාපදිංචිය යන දෙකම අමතයි File, I/O මතකය සහ අභ්යන්තර දත්ත SRAM. පළමු ස්ථාන 32 ලේඛනයට යොමු කරයි File, ඊළඟ ස්ථාන 64 සම්මත I/O මතකය සහ අවසාන 128/256/512 ස්ථාන අභ්යන්තර දත්ත ශ්රෑම් අමතයි.
දත්ත මතක ආවරණය සඳහා වෙනස් ආමන්ත්රණ ක්රම පහක්: ctජු, අවතැන් වීම සමඟ වක්රව, වක්ර, පූර්ව පිරිහීම සමඟ සහ පසු පශ්චාත් වර්ධක සමඟ වක්ර. ලේඛනයේ File, R26 සිට R31 දක්වා වූ ලේඛණ වල වක්රව යොමු කරන දර්ශණ සටහන් ඇතුළත් වේ.
Address ජු ලිපිනය මුළු දත්ත අවකාශයටම ළඟා වේ.
වක්ර හෝ විස්ථාපන මාදිලිය Y- හෝ Z- ලේඛනය විසින් ලබා දී ඇති මූලික ලිපිනයෙන් ලිපින ස්ථාන 63 ක් කරා ළඟා වේ.
ස්වයංක්රීය පූර්ව අඩුවීම සහ පශ්චාත් වර්ධක සමඟ රෙජිස්ටර් වක්ර ලිපින ක්රම භාවිතා කරන විට, ලිපිනය X, Y සහ Z ලියාපදිංචි කිරීම අඩු හෝ වැඩි කරනු ලැබේ.
ATtiny32/64/128 හි ඇති සාමාන්ය කාර්ය ලේඛන 256, I/O රෙජිස්ටර් 512, සහ 25/45/85 බයිට් අභ්යන්තර දත්ත SRAM මෙම සියලුම ලිපින ක්රම හරහා ප්රවේශ විය හැක. ලේඛනය File හි විස්තර කර ඇත “සාමාන්ය- eral අරමුණ ලේඛනය File"10 වන පිටුවේ.
රූපය 5-2. දත්ත මතක සිතියම
දත්ත මතක ප්රවේශය ටයිම්ස්
මෙම කොටස අභ්යන්තර මතක ප්රවේශය සඳහා වන සාමාන්ය ප්රවේශ කාල සංකල්ප විස්තර කරයි. අභ්යන්තර දත්ත SRAM ප්රවේශය විස්තර කර ඇති පරිදි clkCPU චක්ර දෙකකින් සිදු කෙරේ රූපය 5-3.
රූපය 5-3. On-chip දත්ත SRAM ප්රවේශ චක්ර EEPROM දත්ත මතකය
ATtiny25 / 45/85 බයිට් 128/256/512 දත්ත EEPROM මතකය අඩංගු වේ. එය වෙනම දත්ත අවකාශයක් ලෙස සංවිධානය කර ඇති අතර එහි තනි බයිට් කියවා ලිවිය හැකිය. EEPROM සතුව අවම වශයෙන් ලිවීමේ / මකාදැමීමේ චක්ර 100,000 ක් විඳදරාගත හැකිය. EEPROM සහ CPU අතර ප්රවේශය පහත විස්තර කර ඇති අතර, EEPROM ලිපින ලේඛණ, EEPROM දත්ත ලේඛනය සහ EEPROM පාලන ලේඛනය සඳහන් කරයි. වැඩි විස්තර සඳහා බලන්න 151 වන පිටුවේ “අනුක්රමික බාගත කිරීම”.
EEPROM කියවීම / ලිවීමේ ප්රවේශය
EEPROM ප්රවේශ ලේඛනයට I / O අවකාශයට ප්රවේශ විය හැකිය.
EEPROM සඳහා ලිවීමේ ප්රවේශ වේලාවන් දක්වා ඇත 5 වන පිටුවේ 1-21 වගුව. කෙසේ වෙතත්, ස්වයං-කාල ශ්රිතයක් මඟින් පරිශීලක මෘදුකාංගයට ඊළඟ බයිටය ලිවිය හැක්කේ කවදාදැයි හඳුනා ගැනීමට ඉඩ සලසයි. පරිශීලක කේතය EEPROM ලියන උපදෙස් අඩංගු නම්, සමහර පූර්වාරක්ෂාවන් ගත යුතුය. දැඩි ලෙස පෙරන ලද බල සැපයුම් වලදී, VCC සෙමෙන් ඉහළ යාමට හෝ වැටීමට ඉඩ ඇත
බලය ඉහළට/පහළට. මෙම උපකරණය යම් කාලයක් පරිමාවකින් ක්රියාත්මක වීමට හේතු වේtage භාවිතා කරන ඔරලෝසු සංඛ්යාතය සඳහා අවම වශයෙන් දක්වා ඇති ප්රමාණයට වඩා අඩුය. බලන්න 19 වන පිටුවේ “ඊප්රොම් දූෂණය වැළැක්වීම” මෙම තත්වයන් තුළ ගැටළු වළක්වා ගන්නේ කෙසේද යන්න පිළිබඳ විස්තර සඳහා.
නොදැනුවත්වම EEPROM ලිවීම වැළැක්වීම සඳහා නිශ්චිත ලිවීමේ ක්රමවේදයක් අනුගමනය කළ යුතුය. වෙත යොමු වන්න “පරමාණුක 17 වන පිටුවේ බයිට් ක්රමලේඛනය ” සහ 17 වන පිටුවේ “බෙදීම් බයිට් ක්රමලේඛනය” මේ පිළිබඳ විස්තර සඳහා.
EEPROM කියවන විට, ඊළඟ උපදෙස් ක්රියාත්මක කිරීමට පෙර CPU ඔරලෝසු චක්ර හතරක් සඳහා නතර කරනු ලැබේ. EEPROM ලියන විට, ඊළඟ උපදෙස් ක්රියාත්මක කිරීමට පෙර CPU ඔරලෝසු චක්ර දෙකක් සඳහා නතර කරනු ලැබේ.
පරමාණුක බයිට් ක්රමලේඛනය
පරමාණුක බයිට් ක්රමලේඛනය භාවිතා කිරීම සරලම ක්රමයයි. EEPROM වෙත බයිට් එකක් ලිවීමේදී, පරිශීලකයා ලිපිනය EEAR ලේඛනයට සහ දත්ත EEDR ලේඛනයට ලිවිය යුතුය. EEPMn බිටු ශුන්ය නම්, EEPE ලිවීම (EEMPE ලිවීමෙන් පසු චක්ර හතරක් ඇතුළත) මකාදැමීමේ / ලිවීමේ ක්රියාවලිය අවුලුවනු ඇත. මකාදැමීම සහ ලිවීමේ චක්රය යන දෙකම එක් මෙහෙයුමකින් සිදු කෙරෙන අතර සම්පූර්ණ ක්රමලේඛන කාලය ලබා දී ඇත 5 වන පිටුවේ 1-21 වගුව. මකාදැමීමේ සහ ලිවීමේ මෙහෙයුම් අවසන් වන තුරු EEPE බිට් එක ඉතිරිව පවතී. උපාංගය ක්රමලේඛනය සමඟ කාර්යබහුල වුවත්, වෙනත් EEPROM මෙහෙයුම් සිදු කළ නොහැක.
බෙදීම් බයිට් ක්රමලේඛනය
මකාදැමීම සහ චක්රය ලිවීම විවිධ මෙහෙයුම් දෙකකින් බෙදිය හැකිය. පද්ධතියට යම් සීමිත කාලයක් සඳහා කෙටි ප්රවේශ කාලයක් අවශ්ය නම් මෙය ප්රයෝජනවත් විය හැකිය (සාමාන්යයෙන් බල සැපයුම නම්tagඊ වැටේ). අත්තිකාරම් ගැනීම සඳහා- tagමෙම ක්රමයේ ඊ, ලිවීමේ ක්රියාවලියට පෙර ලිවිය යුතු ස්ථාන මකා දැමීම අවශ්ය වේ. නමුත් මකාදැමීමේ සහ ලිවීමේ මෙහෙයුම් බෙදී ඇති හෙයින්, පද්ධතිය විසින් කාලය තීරණාත්මක මෙහෙයුම් සිදු කිරීමට ඉඩ දෙන විට (සාමාන්යයෙන් පවර්-අප් කිරීමෙන් පසුව) මකාදැමීමේ මෙහෙයුම් සිදු කළ හැකිය.
මකන්න
බයිට් එකක් මකා දැමීමට, ලිපිනය EEAR වෙත ලිවිය යුතුය. EEPMn බිටු 0b01 නම්, EEPE ලිවීම (EEMPE ලිවීමෙන් පසු චක්ර හතරක් ඇතුළත) මකාදැමීමේ ක්රියාවලිය පමණක් අවුලුවනු ඇත (ක්රමලේඛන කාලය ලබා දී ඇත වගුව 5-1 මත 21 පිටුව). මකාදැමීමේ ක්රියාවලිය අවසන් වන තුරු EEPE බිට් එක සකසා ඇත. උපාංගය කාර්යබහුල වැඩසටහන්කරණයේ යෙදී සිටියදී, වෙනත් EEPROM මෙහෙයුම් සිදු කළ නොහැක.
ලියන්න
ස්ථානයක් ලිවීමට, පරිශීලකයා ලිපිනය EEAR හා දත්ත EEDR වෙත ලිවිය යුතුය. EEPMn බිටු 0b10 නම්, EEPE ලිවීම (EEMPE ලිවීමෙන් පසු චක්ර හතරක් ඇතුළත) ලිවීමේ ක්රියාවලිය පමණක් අවුලුවනු ඇත (ක්රමලේඛන කාලය ලබා දී ඇත 5 වන පිටුවේ 1-21 වගුව). ලිවීමේ ක්රියාවලිය අවසන් වන තුරු EEPE බිට් එක සකසා ඇත. ලිවීමට පෙර ස්ථානය මකා දමා නොමැති නම්, ගබඩා කර ඇති දත්ත නැතිවූ ඒවා ලෙස සැලකිය යුතුය. උපාංගය ක්රමලේඛනය සමඟ කාර්යබහුල වුවත්, වෙනත් EEPROM මෙහෙයුම් සිදු කළ නොහැක.
ක්රමාංකනය කළ ඔස්කිලේටරය EEPROM වෙත ප්රවේශ වන වේලාවට භාවිතා කරයි. විස්තර කර ඇති අවශ්යතා තුළ ඔස්කිලේටර් සංඛ්යාතය ඇති බවට වග බලා ගන්න 31 වන පිටුවේ “OSCCAL - ඔස්කිලේටර් ක්රමාංකන ලේඛනය”.
පහත දැක්වෙන කේතය exampඊපීරෝමයේ මැකීම, ලිවීම හෝ පරමාණුක ලිවීම සඳහා එක් රැස්වීමක් සහ එක් සී ශ්රිතයක් පෙන්වමු. හිටපුampඅපි උපකල්පනය කරන්නේ බාධා කිරීම් පාලනය වන බවයි (උදා: ගෝලීය වශයෙන් බාධා කිරීම් අක්රිය කිරීමෙන්) එමඟින් මෙම කාර්යයන් ක්රියාත්මක කිරීමේදී කිසිදු බාධාවක් සිදු නොවේ.
එකලස් කිරීමේ කේතය Example |
EEPROM_ ලියන්න:
; පෙර ලිවීම සම්පූර්ණ වන තෙක් රැඳී සිටින්න sbic EECR,EEPE rjmp EEPROM_write ; ක්රමලේඛ ප්රකාරය සකසන්න ldi r16, (0<<EEPM1)|(0<<EEPM0) EECR, r16 පිටත ; ලිපින ලේඛනයේ ලිපිනය (r18: r17) සකසන්න EEARH, r18 පිටතට EEARL වලින් පිටත, r17 ; දත්ත ලේඛනයට දත්ත (r19) ලියන්න EEDR, r19 ; තාර්කික එකක් EEMPE වෙත ලියන්න sbi EECR,EEMPE ; ඊඊපී සැකසීමෙන් ඊප්රොම් ලිවීම ආරම්භ කරන්න sbi EECR,EEPE ret |
සී කේතය Example |
අවලංගු EEPROM_write (අත්සන් නොකළ char uc ලිපිනය, අත්සන් නොකළ char ucData)
{ /* පෙර ලිවීම අවසන් වන තෙක් රැඳී සිටින්න */ අතරතුර(EECR & (1< ; /* ක්රමලේඛන මාදිලිය සකසන්න */ EECR = (0 < / * ලිපිනය සහ දත්ත ලේඛණ සකස් කරන්න * / EEAR = ucAddress; EEDR = ucData; /* EEMPE වෙත තාර්කික එකක් ලියන්න */ EECR | = (1 < / * EEPE සැකසීමෙන් ඊප්රොම් ලිවීම ආරම්භ කරන්න * / EECR | = (1 < } |
ඊළඟ කේතය exampඊප්රෝම් කියවීම සඳහා එකලස් කිරීම සහ සී ක්රියාකාරකම් පෙන්වයි. හිටපුamples උපකල්පනය කරන්නේ මෙම කාර්යයන් ක්රියාත්මක කිරීමේදී කිසිදු බාධාවක් සිදු නොවන පරිදි බාධා පාලනය වන බවයි.
එකලස් කිරීමේ කේතය Example |
EEPROM_කියවන්න:
; පෙර ලිවීම සම්පූර්ණ වන තෙක් රැඳී සිටින්න sbic EECR,EEPE rjmp EEPROM_read ; ලිපින ලේඛනයේ ලිපිනය (r18: r17) සකසන්න EEARH, r18 පිටතට EEARL වලින් පිටත, r17 ; EERE ලිවීමෙන් eeprom කියවීම ආරම්භ කරන්න sbi EECR,EERE ; දත්ත ලේඛනයෙන් දත්ත කියවන්න r16,EEDR හි ret |
සී කේතය Example |
අත්සන් නොකළ අකුරු EEPROM_read (අත්සන් නොකළ char uc ලිපිනය)
{ / * පෙර ලිවීම අවසන් වන තෙක් රැඳී සිටින්න * / අතර (EECR & (1 < ; / * ලිපින ලේඛනය සකසන්න * / EEAR = ucAddress; /* EERE ලිවීමෙන් eeprom කියවීම ආරම්භ කරන්න */ EECR | = (1 < / * දත්ත ලේඛනයෙන් දත්ත ආපසු එවීම * / ආපසු EEDR; } |
EEPROM දූෂණය වැළැක්වීම
අඩු VCC කාලවලදී, සැපයුම් පරිමාව නිසා EEPROM දත්ත දූෂිත විය හැකtagCPU එකට සහ EEPROM ට නිසි පරිදි ක්රියා කිරීමට e ඉතා අඩු ය. මෙම ගැටළු EEPROM භාවිතා කරන පුවරු මට්ටමේ පද්ධති සඳහා සමාන වන අතර එකම නිර්මාණ විසඳුම් යෙදිය යුතුය.
EEPROM දත්ත දූෂණයක් අවස්ථා දෙකක් නිසා ඇති විය හැකියිtagඊ ඉතා අඩු ය. පළමුවෙන්ම, ඊඊපීආර්ඕඑම් වෙත නිතිපතා ලිවීමේ අනුපිළිවෙලකට අවම වෙළුමක් අවශ්ය වේtagඊ නිවැරදිව ක්රියාත්මක වීමට. දෙවනුව, සැපයුම් පරිමාව නම් CPU ටම වැරදි ලෙස උපදෙස් ක්රියාත්මක කළ හැකියtage ඉතා අඩුයි.
මෙම සැලසුම් නිර්දේශය අනුගමනය කිරීමෙන් EEPROM දත්ත දූෂණය පහසුවෙන් වළක්වා ගත හැකිය:
ප්රමාණවත් නොවන බල සැපයුම් කාල පරිච්ඡේදයන් තුළ AVR නැවත පිහිටුවීම සක්රීයව (අඩු) තබා ගන්නtagඊ. අභ්යන්තර දුඹුරු අනාවරකය (BOD) සක්රීය කිරීමෙන් මෙය කළ හැකිය. අභ්යන්තර BOD හඳුනා ගැනීමේ මට්ටම නොගැලපේ නම්
අවශ්ය හඳුනාගැනීමේ මට්ටම, බාහිර අඩු VCC යළි පිහිටුවීමේ ආරක්ෂණ පරිපථයක් භාවිතා කළ හැක. ලිවීමේ මෙහෙයුමක් සිදුවෙමින් පවතින අතරතුර යළි පිහිටුවීමක් සිදුවුවහොත්, බල සැපයුම් පරිමාව ලබාදී ලිවීමේ ක්රියාවලිය සම්පූර්ණ කෙරේtagඊ ප්රමාණවත්.
I / O මතකය
ATtiny25 / 45/85 හි I / O අභ්යවකාශ අර්ථ දැක්වීම මෙහි දක්වා ඇත 200 වන පිටුවේ “සාරාංශය ලියාපදිංචි කරන්න”.
සියලුම ATtiny25 / 45/85 I / Os සහ පර්යන්ත I / O අවකාශයේ තබා ඇත. සියලුම I / O ස්ථාන වලට LD / LDS / LDD සහ ST / STS / STD උපදෙස් මගින් ප්රවේශ විය හැකිය, පොදු කාර්ය සේවා ලේඛණ 32 සහ I / O අවකාශය අතර දත්ත මාරු කිරීම. 0x00 - 0x1F ලිපින පරාසය තුළ ඇති I / O ලේඛකයින් එස්බීඅයි සහ සීබීඅයි උපදෙස් භාවිතා කරමින් කෙලින්ම ප්රවේශ විය හැකිය. මෙම ලේඛනයේ, SBIS සහ SBIC උපදෙස් භාවිතා කරමින් තනි බිටු වල වටිනාකම පරීක්ෂා කළ හැකිය. වැඩි විස්තර සඳහා උපදෙස් කට්ටල අංශය වෙත යොමු වන්න. I / O විශේෂිත විධානයන් IN සහ OUT භාවිතා කරන විට, I / O ලිපින 0x00 - 0x3F භාවිතා කළ යුතුය. LD සහ ST උපදෙස් භාවිතා කරමින් I / O රෙජිස්ටාර් දත්ත අවකාශයක් ලෙස ඇමතීමේදී 0x20 මෙම ලිපින වලට එකතු කළ යුතුය.
අනාගත උපාංග සමඟ අනුකූල වීම සඳහා, වෙන් කර ඇති බිටු ප්රවේශ වුවහොත් බිංදුවට ලිවිය යුතුය. වෙන් කර ඇති I / O මතක ලිපින කිසි විටෙකත් ලිවිය යුතු නොවේ.
සමහර තත්ව ධජ ඒවාට තාර්කික එකක් ලිවීමෙන් ඉවත් කරනු ලැබේ. සීබීඅයි සහ එස්බීඅයි උපදෙස් ක්රියාත්මක වන්නේ නිශ්චිත බිට් මත පමණක් වන අතර එම නිසා එවැනි තත්ව ධජ අඩංගු ලේඛණවල භාවිතා කළ හැකි බව සලකන්න. සීබීඅයි සහ එස්බීඅයි උපදෙස් 0x00 සිට 0x1F දක්වා පමණක් ලියාපදිංචි වේ.
I / O සහ පර්යන්ත පාලන ලේඛණ පසුව කොටස් වලින් විස්තර කෙරේ.
විස්තරය ලියාපදිංචි කරන්න
EEARH - EEPROM ලිපින ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x1F | – | – | – | – | – | – | – | EEAR8 | කන් |
කියවන්න/ලියන්න | R | R | R | R | R | R | R | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X/0 |
බිටු 7: 1 - Res: වෙන් කළ බිටු
මෙම බිටු අනාගත භාවිතය සඳහා වෙන් කර ඇති අතර සෑම විටම ශුන්ය ලෙස කියවනු ඇත.
බිටු 0 - EEAR8: EEPROM ලිපිනය
ATtiny85 හි වඩාත්ම වැදගත් EEPROM ලිපින බිට් මෙයයි. අඩු EEPROM සහිත උපාංගවල, එනම් ATtiny25 / ATtiny45, මෙම බිට් වෙන් කර ඇති අතර සෑම විටම ශුන්යය කියවනු ඇත. EEPROM ලිපින රෙජිස්ටරයේ (EEAR) ආරම්භක අගය නිර්වචනය කර නොමැති අතර එබැවින් EEPROM වෙත ප්රවේශ වීමට පෙර නිසි අගයක් ලිවිය යුතුය.
EEARL - EEPROM ලිපින ලේඛනය
ටිකක්
0x1E | EEAR7 | EEAR6 | EEAR5 | EEAR4 | EEAR3 | EEAR2 | EEAR1 | EEAR0 | කන් |
පසුපස / ලියන්න | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | X | X | X | X | X | X | X | X |
Bit 7 - EEAR7: EEPROM ලිපිනය
ATtiny45 හි වඩාත්ම වැදගත් EEPROM ලිපින බිට් මෙයයි. අඩු EEPROM සහිත උපාංගවල, එනම් ATtiny25, මෙම බිට් වෙන් කර ඇති අතර සෑම විටම ශුන්යය කියවනු ඇත. EEPROM ලිපින ලේඛනයේ (EEAR) ආරම්භක අගය නිර්වචනය කර නොමැති අතර එබැවින් EEPROM වෙත ප්රවේශ වීමට පෙර නිසි අගයක් ලිවිය යුතුය.
බිටු 6: 0 - EEAR [6: 0]: EEPROM ලිපිනය
EEPROM ලිපින ලේඛනයේ (අඩු) බිටු මේවාය. EEPROM දත්ත බයිට් 0… (128/256 / 512-1) පරාසය තුළ රේඛීයව ආමන්ත්රණය කෙරේ. EEAR හි ආරම්භක අගය නිර්වචනය කර නොමැති අතර එබැවින් EEPROM වෙත ප්රවේශ වීමට පෙර නිසි අගයක් ලිවිය යුතුය.
EEDR - EEPROM දත්ත ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x1D | EEDR7 | EEDR6 | EEDR5 | EEDR4 | EEDR3 | EEDR2 | EEDR1 | EEDR0 | ඊඊඩීආර් |
කියවන්න/ලියන්න | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
EEPROM ලිවීමේ මෙහෙයුම සඳහා EEDR ලේඛනයේ EERR ලේඛනයට EERR ලේඛනයට ලබා දිය යුතු දත්ත අඩංගු වේ. EEPROM කියවීමේ මෙහෙයුම සඳහා, EEDR හි කියවන දත්ත අඩංගු වේ
EEAR විසින් ලබා දුන් ලිපිනයේ EEPROM.
5.5.4 EECR - EEPROM පාලන ලේඛනය |
|||||||||
බිට් 7 6 5 | 4 | 3 | 2 | 1 | 0 | ||||
0x1 සී – | – | ඊඊපීඑම් 1 | ඊඊපීඑම් 0 | EERIE | ඊඑම්පී | ඊඊපී | ඊර් | ඊඊසීආර් | |
කියවන්න / ලියන්න R R R / W. | R/W | R/W | R/W | R/W | R/W | ||||
ආරම්භක අගය 0 0 X. | X | 0 | 0 | X | 0 |
බිට් 7 - රෙස්: වෙන් කළ බිට්
මෙම බිට් අනාගත භාවිතය සඳහා වෙන් කර ඇති අතර සෑම විටම ATtiny0 / 25/45 හි 85 ලෙස කියවනු ලැබේ. අනාගත AVR උපාංග සමඟ අනුකූල වීම සඳහා, සෑම විටම මෙම බිට් බිංදුවට ලියන්න. කියවීමෙන් පසු, මෙම ටිකක් ආවරණය කරන්න.
බිට් 6 - රෙස්: වෙන් කළ බිට්
මෙම බිට් එක ATtiny25 / 45/85 හි වෙන් කර ඇති අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
බිටු 5: 4 - ඊඊපීඑම් [1: 0]: ඊප්රෝම් ක්රමලේඛන මාදිලියේ බිටු
EEPROM ක්රමලේඛන මාදිලියේ බිටු සැකසුම මඟින් EEPE ලිවීමේදී අවුලුවන කුමන ක්රමලේඛන ක්රියාවද යන්න අර්ථ දක්වයි. එක් පරමාණුක මෙහෙයුමක දත්ත ක්රමලේඛනය කිරීමට (පැරණි අගය මකා දමා නව අගය ක්රමලේඛනය කිරීමට) හෝ මකාදැමීම් සහ ලිවීමේ ක්රියාකාරකම් විවිධ මෙහෙයුම් දෙකකින් බෙදීමට හැකිය. විවිධ මාතයන් සඳහා ක්රමලේඛන වේලාවන් මෙහි දක්වා ඇත වගුව 5-1. EEPE සකසා ඇති අතර, EEPMn වෙත ලියන ඕනෑම දෙයක් නොසලකා හරිනු ලැබේ. නැවත සැකසීමේදී, EEPROM කාර්යබහුල වැඩසටහන්කරණයකින් තොරව EEPMn බිටු 0b00 වෙත නැවත සැකසෙනු ඇත.
වගුව 5-1. EEPROM මාදිලියේ බිටු
ඊඊපීඑම් 1 | ඊඊපීඑම් 0 | ක්රමලේඛන කාලය | මෙහෙයුම |
0 | 0 | 3.4 ms | එක් මෙහෙයුමකින් මකන්න සහ ලියන්න (පරමාණුක ක්රියාකාරිත්වය) |
0 | 1 | 1.8 ms | මකන්න පමණි |
1 | 0 | 1.8 ms | ලියන්න පමණි |
1 | 1 | – | අනාගත භාවිතය සඳහා වෙන් කර ඇත |
Bit 3 - EERIE: EEPROM Ready Interrupt Enable
එක් අයෙකුට EERIE ලිවීමෙන් SREG හි I-bit සකසා ඇත්නම් EEPROM Ready Interrupt සක්රීය කරයි. EERIE බිංදුවට ලිවීමෙන් බාධා ඇති වේ. අස්ථායී නොවන මතකය ක්රමලේඛනය සඳහා සුදානම් වන විට EEPROM සූදානම් බාධාව නිරන්තර බාධා ඇති කරයි.
Bit 2 - EEMPE: EEPROM මාස්ටර් වැඩසටහන සක්රීය කරන්න
කෙනෙකුට EEPE ලිවීම බලපෑමක් ඇති කරයි ද නැද්ද යන්න EEMPE බිට් තීරණය කරයි.
EEMPE සකසා ඇති විට, ඔරලෝසු චක්ර හතරක් තුළ EEPE සැකසීම මඟින් තෝරාගත් ලිපිනයේ EEPROM ක්රමලේඛනය කරනු ඇත. EEMPE බිංදුව නම්, EEPE සැකසීමෙන් කිසිදු බලපෑමක් සිදු නොවේ. මෘදුකාංගයක් මඟින් EEMPE එකක් ලියා ඇති විට, දෘඩාංග ඔරලෝසු චක්ර හතරකට පසු බිට් බිංදුවට ඉවත් කරයි.
බිට් 1 - ඊඊපී: ඊප්රොම් වැඩසටහන සක්රීය කරන්න
EEPROM වැඩසටහන සං Sign ා සක්රීය කරන්න EEPE යනු EEPROM වෙත සං signal ා සක්රීය කිරීමේ සං signal ාවයි. EEPE ලිවූ විට, EEPMN බිටු සැකසුම අනුව EEPROM වැඩසටහන්ගත කෙරේ. තාර්කික එකක් EEPE වෙත ලිවීමට පෙර EEMPE බිට් එකකට ලිවිය යුතුය, එසේ නොමැතිනම් EEPROM ලිවීමක් සිදු නොවේ. ලිවීමේ ප්රවේශ කාලය අවසන් වූ විට, දෘඩාංග මඟින් EEPE බිට් ඉවත් කරනු ලැබේ. EEPE සකසා ඇති විට, ඊළඟ උපදෙස් ක්රියාත්මක කිරීමට පෙර CPU චක්ර දෙකක් සඳහා නතර කරනු ලැබේ.
Bit 0 - EERE: EEPROM Read Enable
EEPROM Read Enable Signal - EERE - යනු EEPROM වෙත කියවන ලද පියවරයි. EEAR ලේඛනයේ නිවැරදි ලිපිනය සකසා ඇති විට, EEPROM කියවීම අවුලුවාලීමට EERE බිට් එකකට ලිවිය යුතුය. EEPROM කියවීමේ ප්රවේශයට එක් උපදෙස් අවශ්ය වන අතර ඉල්ලූ දත්ත වහාම ලබා ගත හැකිය. EEPROM කියවන විට, ඊළඟ උපදෙස් ක්රියාත්මක කිරීමට පෙර CPU චක්ර හතරක් සඳහා නතර කරනු ලැබේ. කියවීමේ මෙහෙයුම ආරම්භ කිරීමට පෙර පරිශීලකයා ඊපීඊ බිට් එක ඡන්දය දිය යුතුය. ලිවීමේ මෙහෙයුමක් ක්රියාත්මක වන්නේ නම්, ඊප්රෝම් කියවීමට හෝ ඊඊආර් ලේඛනය වෙනස් කිරීමට හැකියාවක් නැත.
පද්ධති ඔරලෝසුව සහ ඔරලෝසු විකල්ප
ඔරලෝසු පද්ධති සහ ඒවායේ ව්යාප්තිය
CPU ඔරලෝසුව
CPU ඔරලෝසුව AVR හරය ක්රියා කිරීම සම්බන්ධ පද්ධති කොටස් වෙත යොමු කෙරේ. උදාampඑවැනි මොඩියුල සාමාන්ය අරමුණු ලේඛනය වේ File, ස්ටැක් පොයින්ටරය දරන තත්ත්ව ලේඛනය සහ දත්ත මතකය. CPU ඔරලෝසුව නැවැත්වීමෙන් හරය සාමාන්ය ක්රියාකාරකම් හා ගණනය කිරීම් වලක්වයි.
I / O ඔරලෝසුව - clkI / O.
ටයිමර් / කවුන්ටරය වැනි බොහෝ I / O මොඩියුලයන් විසින් I / O ඔරලෝසුව භාවිතා කරයි. I / O ඔරලෝසුව බාහිර බාධා මොඩියුලය විසින් ද භාවිතා කරනු ලැබේ, නමුත් සමහර බාහිර බාධා කිරීම් අසමමුහුර්ත තර්කනය මගින් අනාවරණය කර ගන්නා බව සලකන්න, I / O ඔරලෝසුව නවතා දැමුවද එවැනි බාධා කිරීම් හඳුනා ගැනීමට ඉඩ සලසයි.
ෆ්ලෑෂ් ඔරලෝසුව - clkFLASH
ෆ්ලෑෂ් ඔරලෝසුව ෆ්ලෑෂ් අතුරුමුහුණතේ ක්රියාකාරිත්වය පාලනය කරයි. ෆ්ලෑෂ් ඔරලෝසුව සාමාන්යයෙන් CPU ඔරලෝසුව සමඟ එකවර ක්රියාත්මක වේ.
ADC ඔරලෝසුව - clkADC
ADC සඳහා විශේෂිත ඔරලෝසු වසමක් ලබා දී ඇත. ඩිජිටල් පරිපථ මඟින් ජනනය වන ශබ්දය අඩු කිරීම සඳහා CPU සහ I / O ඔරලෝසු නැවැත්වීමට මෙය ඉඩ දෙයි. මෙය වඩාත් නිවැරදි ADC පරිවර්තන ප්රති .ල ලබා දෙයි.
වේගවත් පර්යන්ත ඔරලෝසු උත්පාදනය සඳහා අභ්යන්තර පීඑල්එල් - clkPCK
ATtiny25 / 45/85 හි අභ්යන්තර පීඑල්එල් ඔරලෝසු සංඛ්යාතයක් ජනනය කරයි, එය ප්රභව ආදානයකින් 8x ගුණනය වේ. පෙරනිමියෙන්, පීඑල්එල් අභ්යන්තර, 8.0 MHz RC දෝලනයෙහි ප්රතිදානය ප්රභවයක් ලෙස භාවිතා කරයි. විකල්පයක් ලෙස, පීඑල්එල්එස්එස්ආර් හි බිට් එල්එස්එම් සකසා ඇත්නම්, පීඑල්එල් විසින් ආර්සී දෝලනයේ ප්රතිදානය දෙකින් බෙදනු ඇත. මේ අනුව පීඑල්එල් හි ප්රතිදානය, වේගවත් පර්යන්ත ඔරලෝසුව 64 MHz වේ. ටයිමර් / කවුන්ටර් 1 සඳහා ඔරලෝසු ප්රභවය ලෙස හෝ පද්ධති ඔරලෝසුවක් ලෙස වේගවත් පර්යන්ත ඔරලෝසුව හෝ එයින් පෙර නියම කරන ලද ඔරලෝසුවක් තෝරා ගත හැකිය. බලන්න රූපය 6-2. PLLCSR හි LSM සැකසූ විට වේගවත් පර්යන්ත ඔරලෝසුවේ සංඛ්යාතය දෙකකින් බෙදනු ලැබේ, එහි ප්රතිඵලයක් ලෙස ඔරලෝසු සංඛ්යාතය 32 MHz වේ. PLLCLK පද්ධති ඔරලෝසුව ලෙස භාවිතා කරන්නේ නම් LSM සැකසිය නොහැකි බව සලකන්න.
රූපය 6-2. PCK ඔරලෝසු පද්ධතිය.
පීඑල්එල් ආර්සී ඔස්කිලේටරය මත අගුළු දමා ඇති අතර ඕඑස්සීසීඒඑල් ලේඛනය හරහා ආර්සී ඔස්කිලේටරය සකස් කිරීමෙන් වේගවත් පර්යන්ත ඔරලෝසුව එකවර සකස් වේ. කෙසේ වෙතත්, ආර්සී දෝලනය 8 MHz ට වඩා වැඩි සංඛ්යාතයකට ගෙන ගියද, වේගවත් පර්යන්ත ඔරලෝසු සංඛ්යාතය 85 MHz (වඩාත් නරකම අවස්ථාව) ට සංතෘප්ත වන අතර උපරිම නිදහස් සංඛ්යාතයේ දෝලනය වෙමින් පවතී. මෙම නඩුවේ පීඑල්එල් තවදුරටත් ආර්සී ඔස්කිලේටර් ඔරලෝසුව සමඟ අගුළු දමා නොමැති බව සැලකිල්ලට ගත යුතුය. එබැවින්, පීඑල්එල් නිවැරදි මෙහෙයුම් පරාසය තුළ තබා ගැනීම සඳහා OSCCAL ගැලපුම් 8 MHz ට වඩා වැඩි සංඛ්යාතයකට නොයැවීම රෙකමදාරු කරනු ලැබේ.
අභ්යන්තර පීඑල්එල් සක්රීය කර ඇත්තේ:
PLLCSR ලේඛනයේ PLLE බිට් එක සකසා ඇත.
CKSEL ෆියුස් '0001' ලෙස වැඩසටහන්ගත කර ඇත.
CKSEL ෆියුස් '0011' ලෙස වැඩසටහන්ගත කර ඇත.
PLL අගුලු දමා ඇති විට PLLCSR bit PLOCK සකසා ඇත. අභ්යන්තර RC ඔස්කිලේටරය සහ PLL යන දෙකම බලය අක්රිය කර ඇති අතර නිදි ප්රකාරයේදී ක්රියා විරහිත කර ඇත.
ATtiny15 අනුකූලතා ප්රකාරයේ අභ්යන්තර PLL
ATtiny25 / 45/85 යනු ATtiny15 භාවිතා කරන්නන් සඳහා සංක්රමණික උපකරණයක් බැවින් පසුපස වාට්ටුවේ අනුකූලතාව සඳහා ATtiny15 අනුකූලතා මාදිලියක් ඇත. CtSEL ෆියුස් '15' ක්රමලේඛනය කිරීමෙන් ATtiny0011 අනුකූලතා ප්රකාරය තෝරා ගනු ලැබේ.
ATtiny15 අනුකූලතා ප්රකාරයේදී අභ්යන්තර RC oscillator හි සංඛ්යාතය 6.4 MHz දක්වා ක්රමාංකනය කර ඇති අතර PLL හි ගුණ කිරීමේ සාධකය 4x ලෙස සකසා ඇත. බලන්න රූපය 6-3. මෙම ගැලපීම් සමඟ ඔරලෝසු පද්ධතිය ATtiny15- අනුකූල වන අතර එහි ප්රති ing ලයක් ලෙස වේගවත් පර්යන්ත ඔරලෝසුවේ 25.6 MHz සංඛ්යාතයක් ඇත (ATtiny15 හි මෙන්).
රූපය 6-3. ATtiny15 අනුකූලතා මාදිලියේ PCK ඔරලෝසු පද්ධතිය.
ඔරලෝසු ප්රභවයන්
උපාංගයට පහත දැක්වෙන ඔරලෝසු ප්රභව විකල්ප ඇත, පහත දැක්වෙන පරිදි ෆ්ලෑෂ් ෆියුස් බිටු මඟින් තෝරා ගත හැකිය. තෝරාගත් ප්රභවයෙන් ඔරලෝසුව AVR ඔරලෝසු උත්පාදක යන්ත්රයට ආදානය කර සුදුසු මොඩියුල වෙත යොමු කෙරේ.
වගුව 6-1. උපාංග ඔරලෝසු විකල්ප තෝරන්න
උපාංග ඔරලෝසු විකල්පය | CKSEL[3:0](1) |
බාහිර ඔරලෝසුව (බලන්න 26 පිටුව) | 0000 |
ඉහළ සංඛ්යාත පීඑල්එල් ඔරලෝසුව (බලන්න 26 පිටුව) | 0001 |
ක්රමාංකනය කළ අභ්යන්තර ඔස්කිලේටරය (බලන්න 27 පිටුව) | 0010(2) |
ක්රමාංකනය කළ අභ්යන්තර ඔස්කිලේටරය (බලන්න 27 පිටුව) | 0011(3) |
අභ්යන්තර 128 kHz ඔස්කිලේටර් (බලන්න 28 පිටුව) | 0100 |
අඩු සංඛ්යාත ක්රිස්ටල් ඔස්කිලේටර් (බලන්න 29 පිටුව) | 0110 |
ක්රිස්ටල් ඔස්කිලේටර් / සෙරමික් අනුනාදකය (බලන්න 29 පිටුව) | 1000 - 1111 |
වෙන් කර ඇත | 0101, 0111 |
සියලුම ෆියුස් සඳහා “1” යනු ක්රමලේඛනය නොකළ අතර “0” යන්නෙන් ක්රමලේඛනය කර ඇත.
තෝරාගත් මෙම විකල්පය සමඟ උපාංගය නැව්ගත කර ඇත.
මෙය ATtiny15 අනුකූලතා ප්රකාරය තෝරා ගනු ඇත, එහිදී පද්ධති ඔරලෝසුව හතරකින් බෙදනු ලැබේ, එහි ප්රති M ලයක් ලෙස 1.6 MHz ඔරලෝසු නිදහස් සංඛ්යාතයක් ලැබේ. වැඩි නිෂ්ක්රීයතාවයක් සඳහා, බලන්න 27 වන පිටුවේ “ක්රමාංකනය කළ අභ්යන්තර ඔස්කිලේටරය”.
එක් එක් ඔරලෝසු විකල්පය සඳහා විවිධ තේරීම් පහත දැක්වෙන කොටස් වලින් දක්වා ඇත. සීපීයූ පවර්-ඩවුන් වෙතින් අවදි වූ විට, තෝරාගත් ඔරලෝසු ප්රභවය ආරම්භක වේලාවට භාවිතා කරයි, උපදෙස් ක්රියාත්මක කිරීමට පෙර ස්ථාවර ඔස්කිලේටර් ක්රියාකාරිත්වය සහතික කරයි. CPU යළි පිහිටුවීමෙන් ආරම්භ වන විට, සාමාන්ය ක්රියාකාරිත්වය ආරම්භ කිරීමට පෙර බලය ස්ථාවර මට්ටමකට ළඟා වීමට අමතර ප්රමාදයක් ඇත. ආරම්භක වේලාවේ මෙම තත්ය කාලීන කොටස කාලානුරූපව භාවිතා කිරීම සඳහා වොච්ඩෝග් ඔස්කිලේටර් භාවිතා කරයි. එක් එක් කල් ඉකුත්වීම සඳහා භාවිතා කරන WDT ඔස්කිලේටර් චක්ර ගණන මෙහි දක්වා ඇත වගුව 6-2.
වගුව 6-2. Watchdog Oscillator සයිකල් ගණන
කාලය ඉකුත්වීම ටයිප් කරන්න | සයිකල් ගණන |
4 ms | 512 |
64 ms | 8K (8,192) |
බාහිර ඔරලෝසුව
බාහිර ඔරලෝසු ප්රභවයකින් උපාංගය ධාවනය කිරීම සඳහා, පෙන්වා ඇති පරිදි CLKI ධාවනය කළ යුතුය රූපය 6-4. උපාංගය බාහිර ඔරලෝසුවක ධාවනය කිරීම සඳහා, CKSEL ෆියුස් “00” ලෙස වැඩසටහන්ගත කළ යුතුය.
රූපය 6-4. බාහිර ඔරලෝසු ධාවක වින්යාසය
මෙම ඔරලෝසු ප්රභවය තෝරාගත් විට, ආරම්භක වේලාවන් තීරණය වන්නේ SUT ෆියුස් විසිනි වගුව 6-3.
වගුව 6-3. බාහිර ඔරලෝසු තේරීම සඳහා ආරම්භක වේලාවන්
SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | යළි පිහිටුවීමෙන් අමතර ප්රමාදය | නිර්දේශිත භාවිතය |
00 | 6 සී.කේ. | 14CK | BOD සක්රීය කර ඇත |
01 | 6 සී.කේ. | 14CK + 4 මි.මී. | වේගයෙන් ඉහළ යන බලය |
10 | 6 සී.කේ. | 14CK + 64 මි.මී. | සෙමින් ඉහළ යන බලය |
11 | වෙන් කර ඇත |
බාහිර ඔරලෝසුවක් යොදන විට, MCU හි ස්ථාවර ක්රියාකාරිත්වය සහතික කිරීම සඳහා ව්යවහාරික ඔරලෝසු සංඛ්යාතයේ හදිසි වෙනස්වීම් වළක්වා ගැනීම අවශ්ය වේ. එක් ඔරලෝසු චක්රයක සිට තවත් ඔරලෝසුවකට 2% ට වඩා වැඩි සංඛ්යාතයක විචලනය අනපේක්ෂිත හැසිරීමට හේතු වේ. ඔරලෝසු සංඛ්යාතයේ එවැනි වෙනස්වීම් වලදී MCU යළි පිහිටුවීමෙහි තබා ඇති බව සහතික කිරීම අවශ්ය වේ.
ස්ථායී ක්රියාකාරිත්වය සහතික කරන අතරම අභ්යන්තර ඔරලෝසු සංඛ්යාතයේ ධාවන කාල වෙනස්කම් ක්රියාත්මක කිරීමට පද්ධති ඔරලෝසු පෙරවදන භාවිතා කළ හැකි බව සලකන්න. වෙත යොමු වන්න 31 වන පිටුවේ “පද්ධති ඔරලෝසු ප්රෙස්කලර්” විස්තර සඳහා.
ඉහළ සංඛ්යාත පීඑල්එල් ඔරලෝසුව
පර්යන්ත ටයිමර් / කවුන්ටරය 64 භාවිතය සහ පද්ධති ඔරලෝසු ප්රභවය සඳහා ආර්සී ඔස්කිලේටරයට නාමිකව 1 MHz ඔරලෝසු අනුපාතය සපයන අභ්යන්තර පීඑල්එල් ඇත. පද්ධති ඔරලෝසු ප්රභවයක් ලෙස තෝරාගත් විට, සීකේඑස්එල් ෆියුස් '0001' වෙත ක්රමලේඛනය කිරීමෙන්, එය පෙන්වා ඇති ආකාරයට හතරකින් බෙදනු ලැබේ වගුව 6-4.
වගුව 6-4. අධි සංඛ්යාත PLL ඔරලෝසු මෙහෙයුම් මාතයන්
CKSEL[3:0] | නාමික සංඛ්යාතය |
0001 | 16 MHz |
මෙම ඔරලෝසු ප්රභවය තෝරාගත් විට, ආරම්භක වේලාවන් තීරණය කරනුයේ පෙන්වා ඇති පරිදි SUT ෆියුස් මගිනි වගුව 6-5.
වගුව 6-5. අධි සංඛ්යාත PLL ඔරලෝසුව සඳහා ආරම්භක වේලාවන්
SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | Power-On Reset වෙතින් අමතර ප්රමාදයක් (VCC = 5.0V) | නිර්දේශිත භාවිතය |
00 | 14CK + 1K (1024) CK + 4 මි.මී. | 4 ms | BOD සක්රීය කර ඇත |
වගුව 6-5. අධි සංඛ්යාත PLL ඔරලෝසුව සඳහා ආරම්භක වේලාවන්
SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | Power-On Reset වෙතින් අමතර ප්රමාදයක් (VCC = 5.0V) | නිර්දේශිත භාවිතය |
01 | 14CK + 16K (16384) CK + 4 මි.මී. | 4 ms | වේගයෙන් ඉහළ යන බලය |
10 | 14CK + 1K (1024) CK + 64 මි.මී. | 4 ms | සෙමින් ඉහළ යන බලය |
11 | 14CK + 16K (16384) CK + 64 මි.මී. | 4 ms | සෙමින් ඉහළ යන බලය |
ක්රමාංකනය කළ අභ්යන්තර ඔස්කිලේටරය
පෙරනිමියෙන්, අභ්යන්තර ආර්සී දෝලනය ආසන්න වශයෙන් 8.0 MHz ඔරලෝසුවක් සපයයි. වෙළුම වුවදtagඊ සහ උෂ්ණත්වය මත රඳා පවතින මෙම ඔරලෝසුව පරිශීලකයාට ඉතා නිවැරදිව ක්රමාංකනය කළ හැකිය. බලන්න “ක්රමාංකනය කළ අභ්යන්තර ආර්සී ඔස්කිලේටර් ඇක්යු- 164 වන පිටුවේ සහ 192 වන පිටුවේ “අභ්යන්තර ඔස්කිලේටර් වේගය” වැඩි විස්තර සඳහා. උපකරණය CKDIV8 ෆියුස් සමඟ වැඩසටහන්ගත කර ඇත. බලන්න 31 වන පිටුවේ “පද්ධති ඔරලෝසු ප්රෙස්කලර්” වැඩි විස්තර සඳහා.
පෙන්වා ඇති පරිදි CKSEL ෆියුස් ක්රමලේඛනය කිරීමෙන් මෙම ඔරලෝසුව පද්ධති ඔරලෝසුව ලෙස තෝරා ගත හැකිය පිටුවෙහි 6-6 වගුව
27. තෝරාගත හොත් එය බාහිර සංරචක නොමැතිව ක්රියාත්මක වේ. නැවත සැකසීමේදී, දෘඩාංග පෙර වැඩසටහන්ගත කළ ක්රමාංකන අගය OSCCAL ලේඛනයට පටවන අතර එමඟින් ස්වයංක්රීයව RC ඔස්කිලේටරය ක්රමාංකනය කරයි. මෙම ක්රමාංකනයේ නිරවද්යතාවය කර්මාන්තශාලා ක්රමාංකනය ලෙස දැක්වේ 21 වන පිටුවේ 2-164 වගුව.
SWCC වෙතින් OSCCAL ලේඛනය වෙනස් කිරීමෙන්, බලන්න 31 වන පිටුවේ “OSCCAL - ඔස්කිලේටර් ක්රමාංකන ලේඛනය”, කර්මාන්තශාලා ක්රමාංකනය භාවිතා කිරීමට වඩා ඉහළ ක්රමාංකන නිරවද්යතාවයක් ලබා ගත හැකිය. මෙම ක්රමාංකනයේ නිරවද්යතාවය පරිශීලක ක්රමාංකනය ලෙස දැක්වේ 21 වන පිටුවේ 2-164 වගුව.
මෙම ඔස්කිලේටරය චිප් ඔරලෝසුව ලෙස භාවිතා කරන විට, වොච්ඩෝග් ඔස්කිලේටරය තවමත් වොච්ඩෝග් ටයිමරය සඳහා සහ වේලාව නැවත සකස් කිරීම සඳහා භාවිතා කරනු ඇත. පෙර වැඩසටහන්ගත කළ ක්රමාංකන අගය පිළිබඳ වැඩි විස්තර සඳහා, කොටස බලන්න “කැලි- 150 වන පිටුවේ බ්රේෂන් බයිට් ”.
පෙන්වා ඇති පරිදි CKSEL ෆියුස් “6.4” ට ලිවීමෙන් අභ්යන්තර දෝලනය 0011 MHz ඔරලෝසුවක් සැපයීමටද හැකිය. වගුව 6-6 පහත. මෙම සිටුවම ATtiny15 අනුකූලතා ප්රකාරය ලෙසට යොමු කර ඇති අතර ATtiny6.4 හි මෙන් ක්රමාංකනය කළ ඔරලෝසු ප්රභවයක් 15 MHz ට සැපයීමට අදහස් කෙරේ. ATtiny15 අනුකූලතා ප්රකාරයේදී පීඑල්එල් ටයිමර් / කවුන්ටර් 6.4 සඳහා 25.6 MHz පර්යන්ත ඔරලෝසු සං signal ාවක් ජනනය කිරීම සඳහා 1 MHz වේගයෙන් ධාවනය වන අභ්යන්තර දෝලනය භාවිතා කරයි (බලන්න “බිටු 8 ටයිමර් / කවුන්ටරය 1 in 15 වන පිටුවේ ATtiny95 Mode ”). මෙම ක්රියාකාරීත්වයේ දී 6.4 MHz ඔරලෝසු සං signal ාව සෑම විටම හතරකින් බෙදනු ලබන අතර එය 1.6 MHz පද්ධති ඔරලෝසුවක් සපයයි.
වගුව 6-6. අභ්යන්තර ක්රමාංකනය කරන ලද RC ඔස්කිලේටර් ක්රියාකාරී මාදිලි
CKSEL[3:0] | නාමික සංඛ්යාතය |
0010(1) | 8.0 MHz |
0011(2) | 6.4 MHz |
තෝරාගත් මෙම විකල්පය සමඟ උපාංගය නැව්ගත කර ඇත.
මෙම සිටුවම ATtiny15 අනුකූලතා ප්රකාරය තෝරා ගනු ඇත, එහිදී පද්ධති ඔරලෝසුව හතරකින් බෙදනු ලබන අතර එහි ප්රති M ලයක් ලෙස 1.6 MHz ඔරලෝසු සංඛ්යාතයක් ලැබේ.
ක්රමාංකනය කරන ලද 8 MHz අභ්යන්තර දෝලනය ඔරලෝසු ප්රභවයක් ලෙස තෝරාගත් විට ආරම්භක වේලාවන් SUT ෆියුස් මගින් තීරණය වේ. වගුව 6-7 පහත.
වගුව 6-7. අභ්යන්තර ක්රමාංකනය කරන ලද RC ඔස්කිලේටර් ඔරලෝසුව සඳහා ආරම්භක වේලාවන්
SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | යළි පිහිටුවීමේ අමතර ප්රමාදය (VCC = 5.0V) | නිර්දේශිත භාවිතය |
00 | 6 සී.කේ. | 14CK(1) | BOD සක්රීය කර ඇත |
01 | 6 සී.කේ. | 14CK + 4 මි.මී. | වේගයෙන් ඉහළ යන බලය |
10(2) | 6 සී.කේ. | 14CK + 64 මි.මී. | සෙමින් ඉහළ යන බලය |
11 | වෙන් කර ඇත |
1. RSTDISBL ෆියුස් ක්රමලේඛනය කර ඇත්නම්, ක්රමලේඛ ප්රකාරයට ඇතුළු විය හැකි බව සහතික කිරීම සඳහා මෙම ආරම්භක කාලය 14CK + 4 ms දක්වා වැඩි කෙරේ.
2. තෝරාගත් මෙම විකල්පය සමඟ උපාංගය නැව්ගත කෙරේ.
ATtiny15 හි අනුකූලතා ප්රකාරයේ ආරම්භක වේලාවන් තීරණය වන්නේ SUT ෆියුස් විසිනි වගුව 6-8 පහත.
වගුව 6-8. අභ්යන්තර ක්රමාංකනය කරන ලද RC ඔස්කිලේටර් ඔරලෝසුව සඳහා ආරම්භක වේලාවන් (ATtiny15 මාදිලියේ)
SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | යළි පිහිටුවීමේ අමතර ප්රමාදය (VCC = 5.0V) | නිර්දේශිත භාවිතය |
00 | 6 සී.කේ. | 14CK + 64 මි.මී. | |
01 | 6 සී.කේ. | 14CK + 64 මි.මී. | |
10 | 6 සී.කේ. | 14CK + 4 මි.මී. | |
11 | 1 සී.කේ. | 14CK(1) |
සටහන: RSTDISBL ෆියුස් ක්රමලේඛනය කර ඇත්නම්, ක්රමලේඛන මාදිලිය ඇතුළු කළ හැකි බව සහතික කිරීම සඳහා මෙම ආරම්භක කාලය 14CK + 4 ms දක්වා වැඩි කෙරේ.
සාරාංශයක් ලෙස, ATtiny15 අනුකූලතා ප්රකාරය පිළිබඳ වැඩි විස්තර කොටස් වලින් සොයාගත හැකිය “වරාය බී (පීබී 5: පීබී 0)” සක්රීයයි 2 පිටුව, 15 වන පිටුවේ “ATtiny24 අනුකූලතා ප්රකාරයේ අභ්යන්තර පීඑල්එල්”, “ATtiny8 ප්රකාරයේ 1-බිට් ටයිමර් / කවුන්ටරය 15” සක්රීය කර ඇත 95 පිටුව, 140 වන පිටුවේ “නිදොස්කරණය කිරීමේ සීමාවන්”, 150 වන පිටුවේ “ක්රමාංකන බයිට්” සහ මේසයේ “ඔරලෝසු ප්රෙස්කලර් 33 වන පිටුවේ ”තෝරන්න.
අභ්යන්තර 128 kHz ඔස්කිලේටර්
128 kHz අභ්යන්තර ඔස්කිලේටරය 128 kHz ඔරලෝසුවක් සපයන අඩු බල ඔස්කිලේටරයකි. සංඛ්යාතය 3V සහ 25 ° C දී නාමික වේ. CKSEL Fuses “0100” ලෙස ක්රමලේඛනය කිරීමෙන් මෙම ඔරලෝසුව පද්ධති ඔරලෝසුව ලෙස තෝරාගත හැක.
මෙම ඔරලෝසු ප්රභවය තෝරාගත් විට, ආරම්භක වේලාවන් තීරණය වන්නේ SUT ෆියුස් විසිනි වගුව 6-9.
වගුව 6-9. 128 kHz අභ්යන්තර ඔස්කිලේටරය සඳහා ආරම්භක වේලාවන්
SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | යළි පිහිටුවීමෙන් අමතර ප්රමාදය | නිර්දේශිත භාවිතය |
00 | 6 සී.කේ. | 14CK(1) | BOD සක්රීය කර ඇත |
01 | 6 සී.කේ. | 14CK + 4 මි.මී. | වේගයෙන් ඉහළ යන බලය |
10 | 6 සී.කේ. | 14CK + 64 මි.මී. | සෙමින් ඉහළ යන බලය |
11 | වෙන් කර ඇත |
සටහන: RSTDISBL ෆියුස් ක්රමලේඛනය කර ඇත්නම්, ක්රමලේඛන මාදිලිය ඇතුළු කළ හැකි බව සහතික කිරීම සඳහා මෙම ආරම්භක කාලය 14CK + 4 ms දක්වා වැඩි කෙරේ.
අඩු සංඛ්යාත ක්රිස්ටල් ඔස්කිලේටර්
උපාංගය සඳහා ඔරලෝසු ප්රභවය ලෙස 32.768 kHz ඔරලෝසු ස් stal ටිකයක් භාවිතා කිරීමට, CKSEL ෆියුස් '0110' ලෙස සැකසීමෙන් අඩු සංඛ්යාත ක්රිස්ටල් ඔස්කිලේටරය තෝරා ගත යුතුය. පෙන්වා ඇති පරිදි ස් stal ටිකය සම්බන්ධ කළ යුතුය රූපය 6-5. 32.768 kHz ස් cry ටිකයක් සඳහා සුදුසු බර පැටවීමේ ධාරිතාව සොයා ගැනීමට කරුණාකර නිෂ්පාදකයාගේ දත්ත පත්රිකාව බලන්න.
මෙම දෝලනය තෝරාගත් විට, ආරම්භක වේලාවන් තීරණය කරනුයේ පෙන්වා ඇති පරිදි SUT ෆියුස් මගිනි වගුව 6-10.
වගුව 6-10. අඩු සංඛ්යාත Crystal Oscillator ඔරලෝසු තේරීම සඳහා ආරම්භක වේලාවන්
SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | යළි පිහිටුවීමේ අමතර ප්රමාදය (VCC = 5.0V) | නිර්දේශිත භාවිතය |
00 | 1 කේ (1024) සී.කේ.(1) | 4 ms | වේගයෙන් ඉහළ යන බලය හෝ BOD සක්රීය කර ඇත |
01 | 1 කේ (1024) සී.කේ.(1) | 64 ms | සෙමින් ඉහළ යන බලය |
10 | 32 කේ (32768) සී.කේ. | 64 ms | ආරම්භයේදී ස්ථාවර සංඛ්යාතය |
11 | වෙන් කර ඇත |
සටහන: මෙම විකල්පයන් භාවිතා කළ යුත්තේ ආරම්භයේදී සංඛ්යාත ස්ථායීතාවය වැදගත් නොවේ නම් පමණි.
අඩු සංඛ්යාත ක්රිස්ටල් ඔස්කිලේටරය අභ්යන්තර බර ධාරිතාවක් සපයයි, බලන්න වගුව 6-11 සෑම TOSC පින් එකකදීම.
වගුව 6-11. අඩු සංඛ්යාත ස්ඵටික ඔස්කිලේටරයේ ධාරිතාව
උපාංගය | 32 kHz Osc. වර්ගය | කැප් (Xtal1 / Tosc1) | කැප් (Xtal2 / Tosc2) |
ATtiny25 / 45/85 | පද්ධති Osc. | 16 pF | 6 pF |
ක්රිස්ටල් ඔස්කිලේටර් / සෙරමික් අනුනාදකය
XTAL1 සහ XTAL2 යනු ප්රතිලෝමයක පිළිවෙලින් ආදානය සහ ප්රතිදානයයි ampහි පෙන්වා ඇති පරිදි On-chip Oscillator ලෙස භාවිතා කිරීම සඳහා වින්යාසගත කළ හැකි lifier රූපය 6-5. ක්වාර්ට්ස් ස් stal ටිකයක් හෝ පිඟන් මැටි අනුනාදකයක් භාවිතා කළ හැකිය.
C1 සහ C2 සෑම විටම ස්ඵටික සහ අනුනාදක යන දෙකටම සමාන විය යුතුය. ධාරිත්රකවල ප්රශස්ත අගය භාවිතයේ පවතින ස්ඵටික හෝ අනුනාදකය, අයාලේ යන ධාරිතාව ප්රමාණය සහ පරිසරයේ විද්යුත් චුම්භක ඝෝෂාව මත රඳා පවතී. ස්ඵටික භාවිතය සඳහා ධාරිත්රක තෝරා ගැනීම සඳහා මූලික මාර්ගෝපදේශ කිහිපයක් ලබා දී ඇත වගුව 6-12 පහත. සෙරමික් අනුනාදක සඳහා, නිෂ්පාදකයා විසින් ලබා දෙන ධාරිත්රක අගයන් භාවිතා කළ යුතුය.
වගුව 6-12. Crystal Oscillator මෙහෙයුම් මාදිලි
CKSEL[3:1] | සංඛ්යාත පරාසය (MHz) | ස් st ටික සමඟ භාවිතා කිරීම සඳහා ධාරිත්රක C1 සහ C2 සඳහා නිර්දේශිත පරාසය (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 |
සටහන්: මෙම විකල්පය ස්ඵටික සමඟ භාවිතා නොකළ යුතුය, සෙරමික් අනුනාදක සමඟ පමණි.
නිශ්චිත සංඛ්යාත පරාසයක් සඳහා ප්රශස්තිකරණය කරන ලද ඔස්කිලේටරයට විවිධ ආකාර තුනකින් ක්රියා කළ හැකිය. මෙහෙයුම් මාදිලිය CKSEL [3: 1] ෆියුස් මඟින් පෙන්වා ඇත වගුව 6-12.
CKSEL0 ෆියුස් SUT සමඟ එක්ව [1: 0] ෆියුස් පෙන්වා ඇති පරිදි ආරම්භක වේලාවන් තෝරා ගනී වගුව 6-13.
වගුව 6-13. Crystal Oscillator ඔරලෝසු තේරීම සඳහා ආරම්භක වේලාවන්
CKSEL0 | SUT[1:0] | බලයේ සිට ආරම්භක වේලාව | යළි පිහිටුවීමෙන් අමතර ප්රමාදය | නිර්දේශිත භාවිතය |
0 | 00 | 258 සී.කේ.(1) | 14CK + 4 මි.මී. | සෙරමික් අනුනාදකය, වේගයෙන් ඉහළ යන බලය |
0 | 01 | 258 සී.කේ.(1) | 14CK + 64 මි.මී. | සෙරමික් අනුනාදකය, සෙමින් ඉහළ යන බලය |
0 | 10 | 1 කේ (1024) සී.කේ.(2) | 14CK | සෙරමික් අනුනාදකය, BOD සක්රීය කර ඇත |
0 | 11 | 1 කේ (1024) සී.කේ.(2) | 14CK + 4 මි.මී. | සෙරමික් අනුනාදකය, වේගයෙන් ඉහළ යන බලය |
1 | 00 | 1 කේ (1024) සී.කේ.(2) | 14CK + 64 මි.මී. | සෙරමික් අනුනාදකය, සෙමින් ඉහළ යන බලය |
1 | 01 | 16 කේ (16384) සී.කේ. | 14CK | ක්රිස්ටල් ඔස්කිලේටර්, BOD සක්රීය කර ඇත |
1 | 10 | 16 කේ (16384) සී.කේ. | 14CK + 4 මි.මී. | ක්රිස්ටල් ඔස්කිලේටර්, වේගයෙන් ඉහළ යන බලය |
1 | 11 | 16 කේ (16384) සී.කේ. | 14CK + 64 මි.මී. | ක්රිස්ටල් ඔස්කිලේටර්, සෙමින් ඉහළ යන බලය |
සටහන්
මෙම විකල්පයන් භාවිතා කළ යුත්තේ උපාංගයේ උපරිම සංඛ්යාතයට ආසන්නව ක්රියා නොකරන විට පමණක් වන අතර ආරම්භයේ සංඛ්යාත ස්ථායිතාව යෙදුමට වැදගත් නොවන්නේ නම් පමණි. මෙම විකල්ප ස් st ටික සඳහා සුදුසු නොවේ.
මෙම විකල්ප සෙරමික් අනුනාදක භාවිතා කිරීම සඳහා අදහස් කර ඇති අතර ආරම්භයේ දී සංඛ්යාත ස්ථායිතාව සහතික කරනු ඇත. උපාංගයේ උපරිම සංඛ්යාතයට ආසන්නව ක්රියා නොකරන විට ඒවා ස් st ටික සමඟ ද භාවිතා කළ හැකි අතර ආරම්භයේ සංඛ්යාත ස්ථායිතාව යෙදුමට වැදගත් නොවේ නම්.
පෙරනිමි ඔරලෝසු ප්රභවය
මෙම උපකරණය CKSEL = "0010", SUT = "10" සහ CKDIV8 සමඟ වැඩසටහන්ගත කරන ලදි. පෙරනිමි ඔරලෝසු ප්රභව සැකසුම වන්නේ අභ්යන්තර ආර්සී දෝලන යන්ත්රය 8 මෙගාහර්ට්ස් වේගයෙන් දිවෙන අතර ආරම්භක පද්ධති ඔරලෝසුව 8 ක් කලින් තැබීම සහ 1.0 මෙගා හර්ට්ස් වේගයෙන් පද්ධති ඔරලෝසුව ලබා දීමෙනි. මෙම පෙරනිමි සැකසුම මඟින් සියලුම පරිශීලකයින්ට පද්ධතිය තුළ හෝ අධි-පරිමාවක් භාවිතයෙන් තමන්ට අවශ්ය ඔරලෝසු ප්රභව සැකසීම කළ හැකි බව සහතික කෙරේtagඊ ක්රමලේඛකයා.
පද්ධති ඔරලෝසු Prescaler
ATtiny25 / 45/85 පද්ධති ඔරලෝසුව සැකසීමෙන් බෙදිය හැකිය 32 වන පිටුවේ “සීඑල්කේපීආර් - ඔරලෝසු පෙරගෙවුම් ලේඛනය”. සැකසුම් බලය සඳහා අවශ්යතාවය අඩු වන විට බලශක්ති පරිභෝජනය අඩු කිරීමට මෙම විශේෂාංගය භාවිතා කළ හැක. මෙය සියලුම ඔරලෝසු මූලාශ්ර විකල්ප සමඟ භාවිතා කළ හැකි අතර, එය CPU හි ඔරලෝසු සංඛ්යාතයට සහ සියලුම සමමුහුර්ත පර්යන්තවලට බලපානු ඇත. clkI/O, clkADC, clkCPU, සහ clkFLASH යන සාධකය මගින් බෙදනු ලැබේ 6 වන පිටුවේ 15-33 වගුව.
මාරු කාලය
පෙර සැකසුම් සැකසුම් අතර මාරුවීමේදී, ඔරලෝසු පද්ධතියේ කිසිදු අඩුපාඩුවක් සිදු නොවන බවටත්, පෙර සැකසුමට අනුරූප ඔරලෝසු සංඛ්යාතයට වඩා නව අතරමැදි සංඛ්යාතයක් හෝ නව සැකසුමකට අනුරූප ඔරලෝසු සංඛ්යාතයට වඩා වැඩි නොවන බවටත් පද්ධති ඔරලෝසු ප්රෙස්කලර් සහතික කරයි.
පෙරගෙවුම් යන්ත්රය ක්රියාත්මක කරන රැළි කවුන්ටරය නොබෙදුණු ඔරලෝසුවේ සංඛ්යාතයෙන් ධාවනය වන අතර එය CPU හි ඔරලෝසු සංඛ්යාතයට වඩා වේගවත් විය හැකිය. එබැවින්, පෙරගෙවුම්කරුගේ තත්වය නිශ්චය කළ නොහැක - එය කියවිය හැකි වුවද, එක් ඔරලෝසු අංශයකින් තවත් ස්ථානයකට මාරුවීමට ගතවන කාලය හරියටම පුරෝකථනය කළ නොහැක.
සීඑල්කේපීඑස් අගයන් ලියා ඇති දා සිට, නව ඔරලෝසු නිදහස් සංඛ්යාතය ක්රියාත්මක වීමට පෙර එය ටී 1 + ටී 2 සහ ටී 1 + 2 * ටී 2 අතර වේ. මෙම කාල පරාසය තුළ සක්රීය ඔරලෝසු දාර 2 ක් නිපදවනු ලැබේ. මෙන්න, T1 යනු පෙර ඔරලෝසු කාල පරිච්ඡේදය වන අතර T2 යනු නව පෙර සැකසුම් සැකසීමට අනුරූප වන කාල පරිච්ඡේදයයි.
ඔරලෝසු ප්රතිදාන බෆරය
උපාංගයට CLKO පින් එකෙහි පද්ධති ඔරලෝසුව ප්රතිදානය කළ හැකිය (XTAL2 pin ලෙස භාවිතා නොකරන විට). ප්රතිදානය සක්රීය කිරීම සඳහා, CKOUT ෆියුස් ක්රමලේඛනය කළ යුතුය. පද්ධතියේ වෙනත් පරිපථ ධාවනය කිරීම සඳහා චිප් ඔරලෝසුව භාවිතා කරන විට මෙම ක්රමය සුදුසු වේ. නැවත සැකසීමේදී ඔරලෝසුව ප්රතිදානය නොවන බවත්, ෆියුස් ක්රමලේඛනය කරන විට I / O පින් වල සාමාන්ය ක්රියාකාරිත්වය අභිබවා යන බවත් සලකන්න. CLKO හි ඔරලෝසුව ප්රතිදානය වන විට අභ්යන්තර RC ඔස්කිලේටර්, WDT ඔස්කිලේටර්, පීඑල්එල් සහ බාහිර ඔරලෝසුව (සීඑල්කේඅයි) තෝරා ගත හැකිය. CLKO හි ඔරලෝසු ප්රතිදානය සඳහා ස් stal ටික දෝලනය (XTAL1, XTAL2) භාවිතා කළ නොහැක. පද්ධති ඔරලෝසු ප්රෙස්කලර් භාවිතා කරන්නේ නම්, එය ප්රතිදානය වන බෙදුණු පද්ධති ඔරලෝසුව වේ.
විස්තරය ලියාපදිංචි කරන්න
OSCCAL - ඔස්කිලේටර් ක්රමාංකන ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x31 | CAL7 | CAL6 | CAL5 | CAL4 | CAL3 | CAL2 | CAL1 | CAL0 | OSCCAL |
කියවන්න/ලියන්න | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W |
බිටු 7: 0 - CAL [7: 0]: ඔස්කිලේටර් ක්රමාංකන අගය
දෝලන සංඛ්යාතයෙන් ක්රියාවලි විචල්යතා ඉවත් කිරීම සඳහා ක්රමාංකනය කළ අභ්යන්තර ආර්සී ඔස්කිලේටරය කැපීමට ඔස්කිලේටර් ක්රමාංකන ලේඛනය භාවිතා කරයි. චිප් යළි පිහිටුවීමේදී පූර්ව වැඩසටහන්ගත කළ ක්රමාංකන අගයක් ස්වයංක්රීයව මෙම ලේඛනයට ලියා ඇති අතර එමඟින් දක්වා ඇති පරිදි කර්මාන්තශාලා ක්රමාංකනය කළ සංඛ්යාතය ලබා දේ 21 වන පිටුවේ 2-164 වගුව. යෙදුම් මෘදුකාංගයට දෝලන සංඛ්යාතය වෙනස් කිරීම සඳහා මෙම ලේඛනය ලිවිය හැකිය. නිශ්චිතව දක්වා ඇති පරිදි දෝලනය සංඛ්යාතවලට ක්රමාංකනය කළ හැකිය 21 වන පිටුවේ 2-164 වගුව. එම පරාසයෙන් පිටත ක්රමාංකනය සහතික නොවේ.
මෙම දෝලනය EEPROM සහ ෆ්ලෑෂ් ලිවීමේ ප්රවේශයන් සඳහා භාවිතා කරන බව සලකන්න, මෙම ලිවීමේ වේලාවන් ඒ අනුව බලපානු ඇත. EEPROM හෝ Flash ලියා ඇත්නම්, 8.8 MHz ට වඩා ක්රමාංකනය නොකරන්න. එසේ නොමැතිනම්, EEPROM හෝ Flash ලිවීම අසමත් විය හැකිය.
CAL7 බිට් දෝලනය සඳහා මෙහෙයුම් පරාසය තීරණය කරයි. මෙම බිට් එක 0 ට සැකසීම අවම සංඛ්යාත පරාසය ලබා දෙයි, මෙම බිට් 1 ට සැකසීම ඉහළම සංඛ්යාත පරාසය ලබා දෙයි. සංඛ්යාත පරාස දෙක අතිච්ඡාදනය වන අතර වෙනත් වචන වලින් කිවහොත් OSCCAL = 0x7F සැකසුම OSCCAL = 0x80 ට වඩා වැඩි සංඛ්යාතයක් ලබා දෙයි.
තෝරාගත් පරාසය තුළ සංඛ්යාතය මැන බැලීමට CAL [6: 0] බිටු භාවිතා කරයි. 0x00 සිටුවම එම පරාසය තුළ අඩුම නිදහස් සංඛ්යාතයක් ලබා දෙන අතර 0x7F සැකසුම මඟින් පරාසයේ ඉහළම සංඛ්යාතය ලබා දෙයි.
MCU හි ස්ථාවර ක්රියාකාරිත්වය සහතික කිරීම සඳහා ක්රමාංකන අගය කුඩා වශයෙන් වෙනස් කළ යුතුය. එක් චක්රයක සිට තවත් චක්රයකට 2% ට වඩා වැඩි සංඛ්යාතයක විචලනය අනපේක්ෂිත හැසිරීමට හේතු වේ. OSCCAL හි වෙනස්වීම් එක් එක් ක්රමාංකනය සඳහා 0x20 නොඉක්මවිය යුතුය. ඔරලෝසු සංඛ්යාතයේ එවැනි වෙනස්වීම් වලදී MCU යළි පිහිටුවීමෙහි තබා ඇති බව සහතික කිරීම අවශ්ය වේ
වගුව 6-14. අභ්යන්තර RC ඔස්කිලේටර් සංඛ්යාත පරාසය
OSCCAL අගය | නාමික සංඛ්යාතයට ගරු කිරීම සහිත සාමාන්ය අවම සංඛ්යාතය | නාමික සංඛ්යාතයට ගරු කිරීම සහිත සාමාන්ය ඉහළම සංඛ්යාතය |
0x00 | 50% | 100% |
0x3F | 75% | 150% |
0x7F | 100% | 200% |
සීඑල්කේපීආර් - ඔරලෝසු පෙරගෙවුම් ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x26 | CLKPCE | – | – | – | CLKPS3 | CLKPS2 | CLKPS1 | CLKPS0 | සීඑල්කේපීආර් |
කියවන්න/ලියන්න | R/W | R | R | R | R/W | R/W | R/W | R/W |
ආරම්භක අගය 0 0 0 0 බිට් විස්තරය බලන්න
බිට් 7 - සීඑල්කේපීසීඊ: ඔරලෝසු ප්රෙස්කලර් වෙනස සක්රීය කරන්න
CLKPS බිටු වෙනස් කිරීම සක්රීය කිරීම සඳහා CLKPCE බිට් එක තර්කනයට ලිවිය යුතුය. CLKPCE බිට් යාවත්කාලීන වන්නේ CLKPR හි අනෙක් බිටු එකවර ශුන්යයට ලියා ඇති විට පමණි. CLKPCE දෘඩාංග මඟින් චක්ර හතරක් ලිවීමෙන් පසුව හෝ CLKPS බිටු ලිවීමෙන් පසුව ඉවත් කරනු ලැබේ. මෙම කාල සීමාව තුළ CLKPCE බිට් නැවත ලිවීමෙන් කාලය ඉකුත්වන කාලය දීර් extend නොකෙරේ, හෝ CLKPCE බිට් ඉවත් නොකරයි.
බිටු 6: 4 - Res: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
බිටු 3: 0 - සීඑල්කේපීඑස් [3: 0]: ඔරලෝසු ප්රෙස්කලර් බිටු 3 - 0 තෝරන්න
මෙම බිටු මඟින් තෝරාගත් ඔරලෝසු ප්රභවය සහ අභ්යන්තර පද්ධති ඔරලෝසුව අතර බෙදීම් සාධකය අර්ථ දක්වයි. යෙදුම් අවශ්යතාවන්ට සරිලන පරිදි ඔරලෝසු සංඛ්යාතය වෙනස් කිරීම සඳහා මෙම බිටු ධාවන කාලය ලිවිය හැකිය. බෙදුම්කරු ප්රධාන ඔරලෝසු ආදානය MCU වෙත බෙදූ විට, බෙදීමේ සාධකය භාවිතා කරන විට සියලු සමමුහුර්ත පර්යන්තවල වේගය අඩු වේ. බෙදීමේ සාධක පහත දැක්වේ වගුව 6-15.
ඔරලෝසු සංඛ්යාතයේ නොදැනුවත්ව සිදුවන වෙනස්කම් වලක්වා ගැනීම සඳහා, සීඑල්කේපීඑස් බිටු වෙනස් කිරීම සඳහා විශේෂ ලිවීමේ ක්රමවේදයක් අනුගමනය කළ යුතුය:
ඔරලෝසු Prescaler Change Enable (CLKPCE) බිට් එකකට ලියන්න සහ CLKPR හි අනෙක් සියලුම බිටු බිංදුවට ලියන්න.
චක්ර හතරක් ඇතුළත, CLKPCE වෙත ශුන්යයක් ලිවීමේදී අපේක්ෂිත අගය CLKPS වෙත ලියන්න.
ලිවීමේ ක්රියා පටිපාටියට බාධා නොවන බවට වග බලා ගැනීම සඳහා පෙර සැකසුම් සැකසුම වෙනස් කිරීමේදී බාධා අක්රීය කළ යුතුය.
CKDIV8 Fuse CLKPS බිටු වල ආරම්භක අගය තීරණය කරයි. CKDIV8 ක්රමලේඛනය නොකළේ නම්, CLKPS බිටු “0000” වෙත නැවත සකසනු ඇත. CKDIV8 ක්රමලේඛනය කර තිබේ නම්, CLKPS බිටු "0011" වෙත නැවත සකසනු ලැබේ, ආරම්භයේදී බෙදීමේ සාධකය අටක් ලබා දෙයි. තෝරාගත් ඔරලෝසු මූලාශ්රය වත්මන් මෙහෙයුම් තත්ත්වයේ උපාංගයේ උපරිම සංඛ්යාතයට වඩා වැඩි සංඛ්යාතයක් තිබේ නම් මෙම විශේෂාංගය භාවිතා කළ යුතුය. CKDIV8 Fuse සැකසුම නොසලකා ඕනෑම අගයක් CLKPS බිටු වෙත ලිවිය හැකි බව සලකන්න. යෙදුම් මෘදුකාංගය ප්රමාණවත් බෙදුම් සාධකයක් බව සහතික කළ යුතුය
තෝරාගත් ඔරලෝසු ප්රභවයට වර්තමාන මෙහෙයුම් තත්වයන් තුළ උපාංගයේ උපරිම සංඛ්යාතයට වඩා වැඩි සංඛ්යාතයක් තිබේ නම් තෝරා ගනු ලැබේ. උපකරණය CKDIV8 ෆියුස් සමඟ වැඩසටහන්ගත කර ඇත.
වගුව 6-15. ඔරලෝසු Prescaler තෝරන්න
CLKPS3 | CLKPS2 | CLKPS1 | CLKPS0 | ඔරලෝසු බෙදීමේ සාධකය |
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 | වෙන් කර ඇත |
1 | 0 | 1 | 0 | වෙන් කර ඇත |
1 | 0 | 1 | 1 | වෙන් කර ඇත |
1 | 1 | 0 | 0 | වෙන් කර ඇත |
1 | 1 | 0 | 1 | වෙන් කර ඇත |
1 | 1 | 1 | 0 | වෙන් කර ඇත |
1 | 1 | 1 | 1 | වෙන් කර ඇත |
සටහන: prescaler එක ATtiny15 compatibility mode හි අක්රිය කර ඇති අතර CLKPR වෙත ලිවීම හෝ CKDIV8 ෆියුස් ක්රමලේඛනය පද්ධති ඔරලෝසුව කෙරෙහි කිසිදු බලපෑමක් ඇති නොකරයි (එය සැමවිටම 1.6 MHz වනු ඇත).
බල කළමනාකරණය සහ නින්ද මාදිලි
ඉහළ කාර්යසාධනය සහ කර්මාන්තයේ ප්රමුඛ කේත කාර්යක්ෂමතාව AVR මයික්රොකොන්ට්රෝලර් අඩු බලැති යෙදුම් සඳහා කදිම තේරීමක් කරයි. මීට අමතරව, නින්ද ප්රකාරය මඟින් MCU හි භාවිතයට නොගත් මොඩියුලයන් වසා දැමීමට යෙදුමට හැකියාව ලබා දෙන අතර එමඟින් බලය ඉතිරි වේ. AVR විවිධ නින්දේ ක්රම සපයන අතර එමඟින් පරිශීලකයාට බලශක්ති පරිභෝජනය යෙදුමේ අවශ්යතාවන්ට සරිලන සේ සකසා ගත හැකිය.
නින්ද මාදිලි
6 වන පිටුවේ 1-23 රූපය විවිධ ඔරලෝසු පද්ධති සහ ඒවා බෙදා හැරීම ATtiny25 / 45/85 හි ඉදිරිපත් කරයි. සුදුසු නින්දේ මාදිලියක් තෝරා ගැනීමට රූපය උපකාරී වේ. වගුව 7-1 විවිධ නින්දේ ක්රම සහ ඒවා අවදි කිරීමේ ප්රභවයන් පෙන්වයි.
වගුව 7-1. විවිධ නිද්රා මාදිලිවල ක්රියාකාරී ඔරලෝසු වසම් සහ අවදි කිරීමේ මූලාශ්ර
සක්රීය ඔරලෝසු වසම් | ඔස්කිලේටර් | අවදිවීමේ ප්රභවයන් | ||||||||||
Sleep Mode | clkCPU | clkFLASH | clkIO | clkADC | clkPCK | ප්රධාන ඔරලෝසු ප්රභවය සබල කර ඇත | INT0 සහ පින් වෙනස් කිරීම | SPM / EEPROM
සූදානම් |
USI ආරම්භක තත්වය |
ADC | වෙනත් I/O | මුර බල්ලා බාධා කරන්න |
නිෂ්ක්රීයයි | X | X | X | X | X | X | X | X | X | X | ||
ADC ශබ්දය අඩු කිරීම | X | X | X(1) | X | X | X | X | |||||
බලය අඩු කිරීම | X(1) | X | X |
සටහන: INT0 සඳහා, මට්ටමේ බාධාව පමණි.
නින්දේ ක්රම තුනෙන් ඕනෑම එකක් ඇතුල් කිරීමට, MCUCR හි SE බිට් එක තර්කනයට ලිවිය යුතු අතර SLEEP උපදෙස් ක්රියාත්මක කළ යුතුය. MCUCR ලේඛනයේ ඇති SM [1: 0] බිටු SLEEP උපදෙස් මඟින් සක්රිය කරන්නේ කුමන නින්ද ප්රකාරයද (උදාසීන, ADC ශබ්දය අඩු කිරීම හෝ බලය අඩු කිරීම) තෝරන්න. බලන්න වගුව 7-2 සාරාංශයක් සඳහා.
MCU නිද්රා මාදිලියේ සිටියදී සක්රිය කළ බාධාවක් සිදු වුවහොත් MCU අවදි වේ. MCU ආරම්භක වේලාවට අමතරව චක්ර හතරක් සඳහා නැවැත්වූ අතර, බාධා කිරීමේ පුරුද්ද ක්රියාත්මක කරන අතර, SLEEP අනුගමනය කිරීමෙන් පසු උපදෙස් ක්රියාත්මක කිරීම නැවත ආරම්භ කරයි. ලේඛනයේ අන්තර්ගතය File සහ උපාංගය නින්දෙන් අවදි වන විට SRAM වෙනස් නොවේ. නින්ද ප්රකාරයේදී නැවත සැකසීමක් සිදු වුවහොත්, එම්සීයූ අවදි වී නැවත සැකසීමේ දෛශිකයෙන් ක්රියාත්මක වේ.
සටහන: අවදි කිරීම සඳහා මට්ටම් ප්රේරණය කරන ලද බාධාවක් භාවිතා කරන්නේ නම්, MCU අවදි කිරීමට (සහ MCU සඳහා බාධා සේවා දින චර්යාවට ඇතුළු වීමට) වෙනස් කළ මට්ටම යම් කාලයක් තබා ගත යුතු බව. බලන්න 49 වන පිටුවේ “බාහිර බාධා කිරීම්” විස්තර සඳහා.
නිෂ්ක්රීය ප්රකාරය
SM[1:0] බිටු 00 ට ලියා ඇති විට, SLEEP උපදෙස් මඟින් MCU නිෂ්ක්රීය ප්රකාරයට ඇතුළු වන අතර, CPU නවත්වන නමුත් Analog Comparator, ADC, USI, Timer/Counter, Watchdog, සහ බාධා පද්ධතිය දිගටම ක්රියාත්මක වීමට ඉඩ සලසයි. ආහාර ගැනීම. මෙම නිද්රා මාදිලිය මූලික වශයෙන් clkCPU සහ clkFLASH නවත්වන අතර අනෙක් ඔරලෝසු ක්රියාත්මක වීමට ඉඩ සලසයි.
නිෂ්ක්රීය ප්රකාරය MCU හට බාහිර ප්රේරක බාධා කිරීම් වලින් මෙන්ම ටයිමර් පිටාර ගැලීම වැනි අභ්යන්තරයෙන්ද අවදි වීමට ඉඩ සලසයි. ඇනලොග් සංසන්දක බාධා කිරීම් වලින් අවදි වීම අවශ්ය නොවේ නම්, ඒසීඩී බිට් එක සැකසීමෙන් ඇනලොග් සංසන්දකය ක්රියාත්මක කළ හැකිය 120 වන පිටුවේ “ACSR - ඇනලොග් සංසන්දක පාලනය සහ තත්ව ලේඛනය”. මෙය නිෂ්ක්රීය ප්රකාරයේදී විදුලි පරිභෝජනය අඩු කරනු ඇත. ADC සක්රීය කර ඇත්නම්, මෙම ප්රකාරය ඇතුළත් කළ විට පරිවර්තනයක් ස්වයංක්රීයව ආරම්භ වේ.
ADC ශබ්දය අඩු කිරීමේ ප්රකාරය
SM[1:0] බිටු 01 ට ලියා ඇති විට, SLEEP උපදෙස් මඟින් MCU ADC ශබ්ද අඩු කිරීමේ ප්රකාරයට ඇතුළු වන අතර, CPU නවත්වන නමුත් ADC, බාහිර බාධා කිරීම් සහ මුරකරු දිගටම ක්රියාත්මක වීමට ඉඩ සලසයි (සක්රීය කර ඇත්නම්). මෙම නිද්රා මාදිලිය අනෙකුත් ඔරලෝසු ක්රියාත්මක වීමට ඉඩ සලසන අතරම, clkI/O, clkCPU, සහ clkFLASH නවත්වයි.
මෙය ADC සඳහා ශබ්ද පරිසරය වැඩි දියුණු කරන අතර ඉහළ විභේදන මිනුම් ලබා දෙයි. ADC සක්රීය කර ඇත්නම්, මෙම ප්රකාරය ඇතුළත් කළ විට පරිවර්තනයක් ස්වයංක්රීයව ආරම්භ වේ. ADC පරිවර්තනය සම්පූර්ණ බාධා කිරීම හැරුණු විට, බාහිර යළි පිහිටුවීම, වොච්ඩෝග් යළි පිහිටුවීම, දුඹුරු-යළි පිහිටුවීම, SPM / EEPROM සූදානම් බාධා කිරීම, INT0 හි බාහිර මට්ටමේ බාධා කිරීම් හෝ පින් වෙනස් කිරීමේ බාධා කිරීම් පමණක් ADC ශබ්දය අඩු කිරීමෙන් MCU අවදි කළ හැකිය. මාදිලිය.
බල-පහළ ප්රකාරය
SM [1: 0] බිටු 10 ට ලියා ඇති විට, SLEEP උපදෙස් මඟින් MCU බල-පහළ ප්රකාරයට ඇතුළු වේ. මෙම ප්රකාරයේදී, ඔස්කිලේටරය නවත්වන අතර බාහිර බාධා කිරීම්, යූඑස්අයි ආරම්භක තත්වය හඳුනාගැනීම සහ වොච්ඩෝග් දිගටම ක්රියාත්මක වේ (සක්රීය නම්). MCU අවදි කළ හැක්කේ බාහිර යළි පිහිටුවීම, වොච්ඩෝග් යළි පිහිටුවීම, බ්රවුන්-අවුට් යළි පිහිටුවීම, යූඑස්අයි ආරම්භක කොන්දේසි බාධා කිරීම, INT0 හි බාහිර මට්ටමේ බාධා කිරීම් හෝ පින් වෙනස් කිරීමේ බාධා කිරීම් පමණි. මෙම නින්දේ මාදිලිය මඟින් ජනනය කරන ලද සියලුම ඔරලෝසු නවත්වන අතර අසමමුහුර්ත මොඩියුල පමණක් ක්රියාත්මක කිරීමට ඉඩ ලබා දේ.
මෘදුකාංග BOD අක්රීය කරන්න
BODLEVEL ෆියුස් මඟින් බ්රවුන්-අවුට් අනාවරකය (BOD) සක්රීය කළ විට (බලන්න 20 වන පිටුවේ 4-148 වගුව), BOD සැපයුම් පරිමාව සක්රීයව අධීක්ෂණය කරයිtagඊ නින්ද කාලය තුළ. සමහර උපාංග වල පවර්-ඩවුන් නිදි මාදිලියේ මෘදුකාංග මඟින් බීඕඩී අක්රිය කිරීමෙන් බලය ඉතිරි කර ගත හැකිය. නිද්රා මාදිලියේ බල පරිභෝජනය එවිට ෆියුස් මඟින් බීඕඩී ගෝලීයව අක්රීය කළ විට සමාන මට්ටමක පවතිනු ඇත.
මෘදුකාංගය මඟින් BOD අක්රිය කර ඇත්නම්, නින්ද ප්රකාරයට ඇතුළු වූ වහාම BOD කාර්යය අක්රිය වේ. නින්දෙන් අවදි වූ පසු, BOD ස්වයංක්රීයව නැවත සක්රීය වේ. නින්දේ කාලය තුළ VCC මට්ටම පහත වැටී ඇති අවස්ථාවක මෙය ආරක්ෂිතව ක්රියාත්මක වීම සහතික කරයි.
BOD අක්රීය කර ඇති විට, නින්ද ප්රකාරයෙන් අවදි වන වේලාව RESET වෙතින් අවදි වීමට සමාන වේ. පරිශීලකයා අවදි වන වේලාවන් අතින් වින්යාසගත කළ යුතුය, එනම් බෑන්ඩ්ගැප් යොමු කිරීම ආරම්භ කිරීමට කාලය ඇති අතර MCU කේතය දිගටම ක්රියාත්මක කිරීමට පෙර BOD නිවැරදිව ක්රියා කරයි. වගුවේ SUT [1: 0] සහ CKSEL [3: 0] ෆියුස් බිටු බලන්න 149 වන පිටුවේ “ෆියුස් ලෝ බයිට්”
BOD අක්රීය කිරීම MCU පාලන ලේඛනයේ BODS (BOD Sleep) මඟින් පාලනය වේ, බලන්න “MCUCR - MCU පාලනය 37 වන පිටුවේ ලියාපදිංචි වන්න. මෙම බිට් එකකට ලිවීමෙන් පවර්-ඩවුන් හි BOD ක්රියා විරහිත වන අතර ශුන්යයක් ලිවීමෙන් BOD ක්රියාකාරී වේ. පෙරනිමි සැකසුම ශුන්ය වේ, එනම් BOD සක්රීයයි.
බොඩ්ස් බිට් වෙත ලිවීම පාලනය කරනු ලබන්නේ කාලානුරූපී අනුක්රමයක් සහ සක්රීය බිට් එකකි, බලන්න “MCUCR - MCU පාලන රෙජිස්- 37 වන පිටුවේ.
සීමාවන්
BOD අක්රීය ක්රියාකාරිත්වය පහත සඳහන් උපාංගවල ක්රියාත්මක කර ඇත, පමණක්:
ATtiny25, සංශෝධන ඊ, සහ නවතම
ATtiny45, සංශෝධන D, සහ නවතම
ATtiny85, සංශෝධන සී සහ නවතම
උපාංග පැකේජයේ සංශෝධන සලකුණු කර ඇති අතර ඒවා පහත පරිදි ස්ථානගත කළ හැකිය:
8P3 සහ 8S2 පැකේජවල පහළ පැත්ත
20M1 පැකේජයේ ඉහළ පැත්ත
බලය අඩු කිරීමේ ලේඛනය
බලය අඩු කිරීමේ ලේඛනය (PRR), බලන්න 38 වන පිටුවේ “පීආර්ආර් - බලය අඩු කිරීමේ ලේඛනය”, තනි පර්යන්ත වලට ඔරලෝසුව නැවැත්වීමෙන් බලශක්ති පරිභෝජනය අඩු කිරීමට ක්රමයක් සපයයි. පර්යන්තයේ වත්මන් තත්වය ශීත කර ඇති අතර I / O ලේඛණ කියවීමට හෝ ලිවීමට නොහැකිය. ඔරලෝසුව නැවැත්වීමේදී පර්යන්තය භාවිතා කරන සම්පත් රැඳී පවතිනු ඇත, එබැවින් ඔරලෝසුව නැවැත්වීමට පෙර බොහෝ විට පර්යන්තය අක්රීය කළ යුතුය. මොඩියුලයක් අවදි කිරීම, PRR හි බිට් ඉවත් කිරීමෙන් සිදු කරනු ලැබේ, මොඩියුලය වසා දැමීමට පෙර තිබූ තත්වයටම සමාන වේ.
සමස්ත විදුලි පරිභෝජනය සැලකිය යුතු ලෙස අඩු කිරීම සඳහා මොඩියුලය වසා දැමීම නිෂ්ක්රීය ප්රකාරයේදී සහ ක්රියාකාරී ප්රකාරයේදී භාවිතා කළ හැකිය. අනෙක් සියලුම නින්දේ දී, ඔරලෝසුව දැනටමත් නතර කර ඇත. බලන්න 177 වන පිටුවේ “I / O මොඩියුලවල සැපයුම් ධාරාව” උදාහරණයක් ලෙසamples.
බලශක්ති පරිභෝජනය අවම කිරීම
AVR පාලිත පද්ධතියක විදුලි පරිභෝජනය අවම කිරීමට උත්සාහ කිරීමේදී සලකා බැලිය යුතු කරුණු කිහිපයක් තිබේ. පොදුවේ ගත් කල, නින්දේ මාදිලි හැකිතාක් භාවිතා කළ යුතු අතර, නින්දේ මාදිලිය තෝරා ගත යුතු අතර එමඟින් උපාංගයේ කාර්යයන් හැකි තරම් ස්වල්පයක් ක්රියාත්මක වේ. අවශ්ය නොවන සියලුම කාර්යයන් අක්රීය කළ යුතුය. විශේෂයෙන් අවම බලශක්ති පරිභෝජනය ළඟා කර ගැනීමට උත්සාහ කිරීමේදී පහත සඳහන් මොඩියුලයන්ට විශේෂ සැලකිල්ලක් අවශ්ය විය හැකිය.
ඇනලොග් සිට ඩිජිටල් පරිවර්තකය
සක්රිය කර ඇත්නම්, සියලු නින්ද ප්රකාරයේදී ADC සක්රීය කරනු ඇත. බලය ඉතිරි කර ගැනීම සඳහා, ඕනෑම නින්දකට ඇතුළු වීමට පෙර ADC අක්රීය කළ යුතුය. ADC අක්රිය කර නැවත ක්රියාත්මක කළ විට, ඊළඟ පරිවර්තනය දීර් extended පරිවර්තනයක් වනු ඇත. වෙත යොමු වන්න 122 වන පිටුවේ “ඇනලොග් ටු ඩිජිටල් පරිවර්තකය” ADC ක්රියාකාරිත්වය පිළිබඳ විස්තර සඳහා.
ඇනලොග් සංසන්දකය
Idle මාදිලියට ඇතුළු වන විට, භාවිතා නොකළහොත් Analog Comparator අක්රිය කළ යුතුය. ADC Noise Reduction මාදිලියට ඇතුල් වන විට, Analog Comparator අක්රිය කළ යුතුය. අනෙකුත් නිද්රා මාදිලිවලදී, ඇනලොග් සංසන්දකය ස්වයංක්රීයව අක්රිය වේ. කෙසේ වෙතත්, Analog Comparator එක අභ්යන්තර වෙළුම භාවිතා කිරීමට සකසා ඇත්නම්tagආදානය ලෙස යොමු කරන්න, ඇනලොග් සංසන්දකය සියළුම නිදි මාදිලිවලදී අබල කළ යුතුය. එසේ නැත්නම්, අභ්යන්තර වෙළුමtagඊ යොමු සක්රීය වනු ඇත, නිද්රා මාදිලියෙන් ස්වායත්ත වේ. වෙත යොමු වන්න 119 වන පිටුවේ “ඇනලොග් සංසන්දකය” ඇනලොග් සංසන්දකය වින්යාස කරන්නේ කෙසේද යන්න පිළිබඳ විස්තර සඳහා.
දුඹුරු-අනාවරකය
යෙදුම තුළ බ්රවුන්-අවුට් අනාවරකය අවශ්ය නොවේ නම්, මෙම මොඩියුලය අක්රිය කළ යුතුය. BODLEVEL ෆියුස් මඟින් බ්රවුන්-අවුට් ඩිටෙක්ටරය සක්රීය කර ඇත්නම්, එය සියලු නින්දේ ක්රම වලදී සක්රීය වනු ඇති අතර එබැවින් සෑම විටම බලය පරිභෝජනය කරයි. ගැඹුරු නින්දේ දී, මෙය සමස්ත වර්තමාන පරිභෝජනයට සැලකිය යුතු දායකත්වයක් සපයනු ඇත. බලන්න “බ්රවුන්-අවුට් ඩිටෙක්- 41 වන පිටුවේ සහ 35 වන පිටුවේ “මෘදුකාංග BOD අක්රීය කරන්න” බ්රවුන්-අවුට් අනාවරකය වින්යාස කරන්නේ කෙසේද යන්න පිළිබඳ විස්තර සඳහා.
අභ්යන්තර වෙළුමtagඊ යොමු
අභ්යන්තර වෙළුමtagබ්රවුන් අවුට් අනාවරනය, ඇනලොග් සංසන්දකය හෝ ඒඩීසී විසින් අවශ්ය වූ විට යොමු සක්රීය කෙරේ. ඉහත කොටස් වල විස්තර කර ඇති පරිදි මෙම මොඩියුල අක්රීය කර ඇත්නම්, අභ්යන්තර වෙළුමtagඊ යොමු කිරීම අක්රිය වන අතර එය බලශක්ති පරිභෝජනය නොකරනු ඇත. නැවත ක්රියාත්මක කළ විට, ප්රතිදානය භාවිතා කිරීමට පෙර පරිශීලකයා යොමුව ආරම්භ කිරීමට ඉඩ දිය යුතුය. යොමුව නිද්රා මාදිලියේ තබා තිබේ නම්, ප්රතිදානය වහාම භාවිතා කළ හැකිය. වෙත යොමු වන්න "අභ්යන්තර වෙළුමtag42 වන පිටුවේ ඊ යොමු කිරීම ආරම්භක වේලාව පිළිබඳ විස්තර සඳහා.
මුර බල්ලා ටයිමරය
යෙදුමේ වොච්ඩෝග් ටයිමරය අවශ්ය නොවේ නම්, මෙම මොඩියුලය අක්රිය කළ යුතුය. වොච්ඩෝග් ටයිමරය සක්රීය කර ඇත්නම්, එය සියලු නින්දේ ආකාරයන් තුළ සක්රීය වනු ඇත, එබැවින් සෑම විටම බලය පරිභෝජනය කරයි. ගැඹුරු නින්දේ දී, මෙය සමස්ත වර්තමාන පරිභෝජනයට සැලකිය යුතු දායකත්වයක් සපයනු ඇත. වෙත යොමු වන්න 42 වන පිටුවේ “වොච්ඩෝග් ටයිමර්” වොච්ඩෝග් ටයිමරය වින්යාස කරන්නේ කෙසේද යන්න පිළිබඳ විස්තර සඳහා.
වරාය අල්ෙපෙනති
නිද්රා මාදිලියකට ඇතුළු වන විට, සියලුම පෝට් පින් අවම බලය භාවිතා කිරීමට වින්යාසගත කළ යුතුය. වැදගත්ම දෙය නම් කිසිදු අල්ෙපෙනති ප්රතිරෝධක බරක් ධාවනය නොකරන බවට සහතික වීමයි. I/O ඔරලෝසුව (clkI/O) සහ ADC ඔරලෝසුව (clkADC) යන දෙකම නතර කර ඇති නිද්රා මාදිලිවලදී, උපාංගයේ ආදාන බෆර අක්රිය වනු ඇත. මෙය කිසිදු බලයක් පරිභෝජනය නොකරන බව සහතික කරයි
අවශ්ය නොවන විට ආදාන තර්කනය මඟින්. සමහර අවස්ථාවල, අවදි වීමේ තත්වයන් හඳුනා ගැනීම සඳහා ආදාන තර්කනය අවශ්ය වේ, සහ
එය පසුව සක්රීය වනු ඇත. කොටස වෙත යොමු වන්න 57 වන පිටුවේ “ඩිජිටල් ආදානය සක්රීය සහ නිදි ප්රකාර” කුමන කටු සක්රීය කර තිබේද යන්න පිළිබඳ විස්තර සඳහා. ආදාන බෆරය සක්රීය කර ඇති අතර ආදාන සංඥාව පාවෙමින් තිබේ නම් හෝ VCC/2 ට ආසන්න ප්රතිසම සංඥා මට්ටමක් තිබේ නම්, ආදාන බෆරය අධික බලයක් භාවිත කරයි.
ඇනලොග් ආදාන පින් සඳහා, ඩිජිටල් ආදාන බෆරය සෑම විටම අක්රිය කළ යුතුය. ආදාන පින් එකක VCC/2 ට ආසන්න ප්රතිසම සංඥා මට්ටමක් සක්රීය මාදිලියේදී පවා සැලකිය යුතු ධාරාවක් ඇති කළ හැක. Digital Input Disable Register (DIDR0) වෙත ලිවීමෙන් ඩිජිටල් ආදාන බෆර අක්රිය කළ හැක. වෙත යොමු කරන්න 0 වන පිටුවේ “DIDR0 - ඩිජිටල් ආදානය රෙජිස්ටර් 121 අක්රීය කරන්න” විස්තර සඳහා.
විස්තරය ලියාපදිංචි කරන්න
MCUCR - MCU පාලන ලේඛනය
MCU පාලන ලේඛනයේ බල කළමනාකරණය සඳහා පාලන බිටු අඩංගු වේ.
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | BODS | PUD | SE | SM1 | SM0 | බොඩ්ස් | ISC01 | ISC00 | MCUCR |
කියවන්න/ලියන්න | R | R/W | R/W | R/W | R/W | R | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිට් 7 - බොඩ්ස්: බොඩ් නින්ද
BOD අක්රීය ක්රියාකාරිත්වය සමහර උපාංගවල ඇත, පමණි. බලන්න 36 වන පිටුවේ “සීමාවන්”.
නින්දේදී BOD අක්රීය කිරීම සඳහා (බලන්න 7 වන පිටුවේ 1-34 වගුව) BODS බිට් එක තර්කනයට ලිවිය යුතුය. මෙය පාලනය වන්නේ කාලානුරූපී අනුක්රමයක් සහ MCUCR හි BODSE සක්රීය බිට් ය. පළමුව, BODS සහ BODSE යන දෙකම එකකට සැකසිය යුතුය. දෙවනුව, ඔරලෝසු චක්ර හතරක් තුළ, BODS එකකටද BODSE බිංදුවටද සැකසිය යුතුය. බොඩ්ස් බිට් සැකසූ පසු ඔරලෝසු චක්ර තුනක් සක්රීය වේ. නියම නින්දේ මාදිලිය සඳහා BOD ක්රියා විරහිත කිරීම සඳහා BODS සක්රියව තිබියදී නින්ද පිළිබඳ උපදෙස් ක්රියාත්මක කළ යුතුය. ඔරලෝසු චක්ර තුනකට පසු බොඩ්ස් බිට් ස්වයංක්රීයව ඉවත් වේ.
Sleeping BOD ක්රියාත්මක කර නොමැති උපාංගවල මෙම බිට් භාවිතා නොකරන අතර සෑම විටම ශුන්යය කියවනු ඇත.
බිට් 5 - එස්ඊ: නින්ද සක්රීය කරන්න
SLEEP උපදෙස් ක්රියාත්මක වන විට MCU නින්ද ප්රකාරයට ඇතුළු කිරීමට SE bit එක logic එකට ලිවිය යුතුය. ක්රමලේඛකයාගේ අරමුණ නොවේ නම් MCU නින්ද ප්රකාරයට ඇතුළු වීම වැලැක්වීම සඳහා, SLEEP උපදෙස් ක්රියාත්මක කිරීමට මොහොතකට පෙර Sleep Enable (SE) bit එකකට ලිවීම සහ අවදි වූ වහාම එය ඉවත් කිරීම නිර්දේශ කෙරේ.
බිටු 4: 3 - එස්එම් [1: 0]: නින්ද ප්රකාරය බිටු 1 සහ 0 තෝරන්න
මෙම බිටු පෙන්වා ඇති පරිදි පවතින නින්දේ ක්රම තුන අතර තෝරා ගනී වගුව 7-2.
වගුව 7-2. Sleep Mode තෝරන්න
SM1 | SM0 | Sleep Mode |
0 | 0 | නිෂ්ක්රීයයි |
0 | 1 | ADC ශබ්දය අඩු කිරීම |
1 | 0 | බලය අඩු කිරීම |
1 | 1 | වෙන් කර ඇත |
බිට් 2 - බොඩ්ස්: බොඩ් නින්ද සක්රීය කරන්න
BOD අක්රීය ක්රියාකාරිත්වය සමහර උපාංගවල ඇත, පමණි. බලන්න 36 වන පිටුවේ “සීමාවන්”.
බොඩ්ස් බිට් විස්තරයේ විස්තර කර ඇති පරිදි බොඩ්ස් පාලක බිට් සැකසීමට බොඩ්ස් බිට් සක්රීය කරයි. BOD අක්රීය කිරීම කාලානුරූපී අනුක්රමයකින් පාලනය වේ.
මෘදුකාංග BOD අක්රීය කර නොමැති උපාංගවල මෙම බිට් භාවිතා නොකරන අතර එම උපාංගවල ශුන්ය ලෙස කියවනු ඇත.
PRR - බලය අඩු කිරීමේ ලේඛනය
බල අඩුකිරීමේ ලේඛනය මඟින් පර්යන්ත ඔරලෝසු සං s ා අක්රීය කිරීමට ඉඩ දීමෙන් බලශක්ති පරිභෝජනය අඩු කිරීමේ ක්රමයක් සපයයි.
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x20 | – | – | – | – | PRTIM1 | PRTIM0 | ප්රසි | PRADC | PRR |
කියවන්න/ලියන්න | R | R | R | R | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිටු 7: 4 - Res: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
බිට් 3 - පීආර්ටීඅයිඑම් 1: බලය අඩු කිරීමේ ටයිමරය / කවුන්ටරය 1
මෙම බිට් එකට තාර්කික එකක් ලිවීම ටයිමර් / කවුන්ටර් 1 මොඩියුලය වසා දමයි. ටයිමර් / කවුන්ටරය 1 සක්රිය කර ඇති විට, වසා දැමීමට පෙර මෙන් ඔපෙරේෂන් දිගටම පවතිනු ඇත.
බිට් 2 - පීආර්ටීඅයිඑම් 0: බලය අඩු කිරීමේ ටයිමරය / කවුන්ටරය 0
මෙම බිට් එකට තාර්කික එකක් ලිවීම ටයිමර් / කවුන්ටර් 0 මොඩියුලය වසා දමයි. ටයිමර් / කවුන්ටරය 0 සක්රිය කර ඇති විට, වසා දැමීමට පෙර මෙන් ඔපෙරේෂන් දිගටම පවතිනු ඇත.
බිට් 1 - PRUSI: බලය අඩු කිරීම USI
මොඩියුලයට ඔරලෝසුව නැවැත්වීමෙන් තර්කානුකූල එකක් ලිවීමෙන් යූඑස්අයි වසා දමයි. යූඑස්අයි යළිත් අවදි වන විට, නිසි ක්රියාකාරීත්වය සහතික කිරීම සඳහා යූඑස්අයි නැවත ආරම්භ කළ යුතුය.
බිට් 0 - පීආර්ඩීසී: බලය අඩු කිරීම ඒඩීසී
මේ සඳහා තර්කනයක් ලිවීම ADC වසා දමයි. වසා දැමීමට පෙර ADC අක්රීය කළ යුතුය. ADC ඔරලෝසුව ඇනලොග් සංසන්දකයේ සමහර කොටස් ද භාවිතා කරන බව සලකන්න, එයින් අදහස් වන්නේ මෙම බිට් ඉහළ මට්ටමක පවතින විට ඇනලොග් සංසන්දකය භාවිතා කළ නොහැකි බවයි.
පද්ධති පාලනය සහ යළි පිහිටුවීම
AVR නැවත සැකසීම
යළි පිහිටුවීමේදී, සියලුම I / O රෙජිස්ටර් ඒවායේ ආරම්භක අගයන්ට සකසා ඇති අතර, වැඩසටහන යළි පිහිටුවීමේ සිට ක්රියාත්මක කිරීම ආරම්භ කරයි. යළි පිහිටුවීමේ දෛශිකයේ ඇති උපදෙස් RJMP - සාපේක්ෂ පැනීම විය යුතුය - නැවත සැකසීමේ හැසිරවීමේ උපදෙස්. වැඩසටහන කිසි විටෙකත් බාධාකාරී ප්රභවයක් සක්රීය නොකරන්නේ නම්, බාධාකාරී දෛශික භාවිතා නොකරන අතර නිත්ය වැඩසටහන් කේතය මෙම ස්ථානවල තැබිය හැකිය. පරිපථ සටහන රූපය 8-1 යළි පිහිටුවීමේ තර්කනය පෙන්වයි. යළි පිහිටුවීමේ පරිපථයේ විද්යුත් පරාමිතීන් දක්වා ඇත 165 වන පිටුවේ “පද්ධති සහ යළි පිහිටුවීමේ ලක්ෂණ”.
රූප සටහන 8-1 තර්කය යළි පිහිටුවන්න
යළි පිහිටුවීමේ ප්රභවයක් සක්රිය වූ විට AVR හි I / O වරායන් වහාම ඒවායේ ආරම්භක තත්වයට යවනු ලැබේ. මේ සඳහා කිසිදු ඔරලෝසු ප්රභවයක් ක්රියාත්මක වීමට අවශ්ය නොවේ.
සියලු යළි පිහිටුවීමේ ප්රභවයන් අක්රිය වූ පසු, ප්රමාද කවුන්ටරයක් ක්රියාත්මක කර අභ්යන්තර යළි පිහිටුවීම දිගු කරයි. සාමාන්ය ක්රියාකාරිත්වය ආරම්භ වීමට පෙර බලය ස්ථාවර මට්ටමකට ළඟා වීමට මෙය ඉඩ දෙයි. ප්රමාද කවුන්ටරයේ කල් ඉකුත් වීමේ කාලය පරිශීලකයා විසින් SUT සහ CKSEL ෆියුස් හරහා අර්ථ දැක්වේ. ප්රමාද කාලය සඳහා විවිධ තේරීම් ඉදිරිපත් කර ඇත “ඔරලෝසුව 25 වන පිටුවේ.
ප්රභවයන් යළි පිහිටුවන්න
ATtiny25 / 45/85 යළි පිහිටුවීමේ ප්රභව හතරක් ඇත:
බල සක්රිය කිරීම. සැපයුම් පරිමාව විට MCU නැවත සකසනු ඇතtage යනු Power-on Reset threshold (VPOT) ට පහළින් ය.
බාහිර යළි පිහිටුවීම. අවම ස්පන්දන දිගට වඩා වැඩි කාලයක් රීසෙට් පින් එකෙහි අඩු මට්ටමක් ඇති විට MCU නැවත සකසනු ලැබේ.
වොච්ඩෝග් යළි පිහිටුවන්න. වොච්ඩෝග් ටයිමර් කාල සීමාව ඉකුත්වී වොච්ඩෝග් සක්රීය කළ විට MCU නැවත සකසනු ලැබේ.
දුඹුරු-නැවත සැකසීම. සැපයුම් පරිමාව විට MCU නැවත සකසනු ඇතtage VCC Brown-out Reset threshold (VBOT) ට පහළින් ඇති අතර Brown-out අනාවරකය සබල කර ඇත.
බලය ක්රියාත්මක කිරීම යළි පිහිටුවීම
ඔන්-චිප් අනාවරණ පරිපථයක් මඟින් බල-යළි පිහිටුවීමේ (POR) ස්පන්දනයක් ජනනය වේ. හඳුනාගැනීමේ මට්ටම අර්ථ දක්වා ඇත්තේ “සයිස්- 165 වන පිටුවේ. VCC හඳුනාගැනීමේ මට්ටමට වඩා පහළින් ඇති විට POR සක්රිය වේ. POR පරිපථය Start-up Reset අවුලුවාලීමට මෙන්ම සැපයුම් පරිමාවේ අසාර්ථක වීමක් හඳුනා ගැනීමට භාවිතා කළ හැක.tage.
පවර්-ඔන් රීසෙට් (පීඕආර්) පරිපථය මඟින් පවර්-ඔන් වෙතින් උපාංගය නැවත සකසා ඇති බවට සහතික වේ. බලයට පත් වීමේ නැවත පිහිටුවීමේ එළිපත්ත වෙත ළඟාවීම වෙළුමtage ප්රමාද කවුන්ටරය කැඳවයි, එය VCC නැගීමෙන් පසු උපාංගය කොපමණ කාලයක් RESET හි තබා තිබේද යන්න තීරණය කරයි. VCC හඳුනාගැනීමේ මට්ටමට වඩා අඩු වූ විට කිසිදු ප්රමාදයකින් තොරව RESET සංඥාව නැවත ක්රියාත්මක වේ.
රූපය 8-2. MCU ආරම්භය, RESET VCC වෙත බැඳී ඇත
අභ්යන්තර යළි පිහිටුවීම
රූපය 8-3. MCU ආරම්භය, RESET බාහිරව දිගු කර ඇත
බාහිර යළි පිහිටුවීම
සක්රීය නම් බාහිර යළි පිහිටුවීම රීසෙට් පින් එකෙහි අඩු මට්ටමකින් ජනනය වේ. ස්පන්දන අවම ස්පන්දන පළලට වඩා දිගු නැවත සකසන්න (බලන්න 165 වන පිටුවේ “පද්ධති සහ යළි පිහිටුවීමේ ලක්ෂණ”) ඔරලෝසුව ක්රියාත්මක නොවුවද නැවත සැකසීමක් උත්පාදනය කරයි. නැවත සකස් කිරීමක් උත්පාදනය කිරීමට කෙටි ස්පන්දන සහතික නොවේ. යොදන ලද සංඥාව නැවත පිහිටුවීමේ සීමාව වෙත පැමිණි විට වෙළුමtage – VRST – එහි ධනාත්මක කෙළවරේ, ප්රමාද කවුන්ටරය කල් ඉකුත් වූ කාලය ඉකුත් වූ පසු MCU ආරම්භ කරයි.
රූපය 8-4. මෙහෙයුම් අතරතුර බාහිර යළි පිහිටුවීම
දුඹුරු පැහැ හඳුනාගැනීම
ATtiny25/45/85 ස්ථාවර ප්රේරක මට්ටමකට සංසන්දනය කිරීමෙන් ක්රියාත්මක වන විට VCC මට්ටම නිරීක්ෂණය කිරීම සඳහා On-chip Brown-out Detection (BOD) පරිපථයක් ඇත. BOD සඳහා ප්රේරක මට්ටම BODLEVEL ෆියුස් මගින් තෝරා ගත හැක. ප්රේරක මට්ටමට ස්පයික් රහිත දුඹුරු-පිටත හඳුනාගැනීම සහතික කිරීම සඳහා හිස්ටරෙසිස් ඇත. හඳුනාගැනීමේ මට්ටමේ හිස්ටෙරෙසිස් VBOT+ = VBOT + VHYST/2 සහ VBOT- = VBOT - VHYST/2 ලෙස අර්ථ දැක්විය යුතුය.
BOD සක්රීය කර ඇති විට සහ VCC ප්රේරක මට්ටමට වඩා පහළ අගයකට අඩු වන විට (VBOT-in රූපය 8-5), Brown-out Reset වහාම සක්රිය වේ. VCC ප්රේරක මට්ටමට වඩා වැඩි වන විට (VBOT+ in රූපය 8-5), ප්රමාද කවුන්ටරය MCU ආරම්භ කරන්නේ tTOUT කල් ඉකුත් වූ කාලය අවසන් වූ පසුවය.
BOD පරිපථය VCC හි පහත වැටීමක් හඳුනා ගන්නේ වෙළුම නම් පමණිtage ලබා දී ඇති tBOD ට වඩා වැඩි කාලයක් ප්රේරක මට්ටමට පහළින් පවතී 165 වන පිටුවේ “පද්ධති සහ යළි පිහිටුවීමේ ලක්ෂණ”.
වොච්ඩෝග් යළි පිහිටුවන්න
Watchdog කාලය අවසන් වූ විට, එය CK චක්ර කාල සීමාවක කෙටි යළි පිහිටුවීමේ ස්පන්දනයක් ජනනය කරයි. මෙම ස්පන්දනයේ පහළ කෙළවරේ, ප්රමාද ටයිමරය tTOUT කාල සීමාව ගණනය කිරීම ආරම්භ කරයි. වෙත යොමු කරන්න 42 වන පිටුවේ “වොච්ඩෝග් ටයිමර්” වොච්ඩෝග් ටයිමරයේ ක්රියාකාරිත්වය පිළිබඳ විස්තර සඳහා.
වෙළුමtage යොමු සංඥා සහ ආරම්භක වේලාව සක්රිය කරන්න
වෙළුමtage සඳහන භාවිතා කළ යුතු ආකාරය කෙරෙහි බලපෑ හැකි ආරම්භක වේලාවක් ඇත. ආරම්භක කාලය ලබා දී ඇත 165 වන පිටුවේ “පද්ධති සහ යළි පිහිටුවීමේ ලක්ෂණ”. බලය ඉතිරි කර ගැනීම සඳහා, යොමු කිරීම සැමවිටම සක්රිය නොවේ. පහත දැක්වෙන අවස්ථා වලදී නැවත යොමු කිරීම ක්රියාත්මක වේ:
BOD සක්රිය කර ඇති විට (BODLEVEL ක්රමලේඛනය කිරීමෙන් [2: 0] ෆියුස් බිටු).
බෑන්ඩ්ගෑප් යොමුව ඇනලොග් සංසන්දකය සමඟ සම්බන්ධ වූ විට (ACSG හි ACBG බිට් සැකසීමෙන්).
ADC සක්රීය කළ විට.
මේ අනුව, BOD සක්රිය කර නොමැති විට, ACBG බිට් සැකසීමෙන් හෝ ADC සක්රීය කිරීමෙන් පසුව, ඇනලොග් සංසන්දකය හෝ ADC වෙතින් ප්රතිදානය භාවිතා කිරීමට පෙර පරිශීලකයා සෑම විටම යොමු කිරීම ආරම්භ කිරීමට ඉඩ දිය යුතුය. පවර්-ඩවුන් මාදිලියේ බල සැපයුම අඩු කිරීම සඳහා, පවර්-ඩවුන් ප්රකාරයට ඇතුළු වීමට පෙර යොමු කිරීම අක්රිය කර ඇති බව සහතික කිරීම සඳහා පරිශීලකයාට ඉහත කොන්දේසි තුනෙන් වැළකී සිටිය හැකිය.
මුර බල්ලා ටයිමරය
වොච්ඩෝග් ටයිමරය 128 kHz වේගයෙන් ධාවනය වන ඔන්-චිප් ඔස්කිලේටරයකින් ඔරලෝසු කර ඇත. වොච්ඩෝග් ටයිමර් පෙර සැකසුම පාලනය කිරීමෙන්, වොච්ඩෝග් යළි පිහිටුවීමේ කාල පරතරය පෙන්වා ඇති පරිදි සකස් කළ හැකිය 8 වන පිටුවේ 3-46 වගුව. WDR - වොච්ඩෝග් යළි පිහිටුවීම - උපදෙස් වොච්ඩෝග් ටයිමරය නැවත සකසයි. වොච්ඩෝග් ටයිමරය අක්රිය වූ විට සහ චිප් යළි පිහිටුවීම සිදු වූ විට එය නැවත සකසනු ලැබේ. යළි පිහිටුවීමේ කාලය තීරණය කිරීම සඳහා විවිධ ඔරලෝසු චක්ර කාල 25 ක් තෝරා ගත හැකිය. වෙනත් වොච්ඩෝග් යළි පිහිටුවීමකින් තොරව යළි පිහිටුවීමේ කාලය කල් ඉකුත්වුවහොත්, ATtiny45 / 85/XNUMX යළි පිහිටුවීම සහ යළි පිහිටුවීමේ දෛශිකයෙන් ක්රියාත්මක වේ. වොච්ඩෝග් යළි පිහිටුවීම පිළිබඳ කාල විස්තර සඳහා, යොමු වන්න 8 වන පිටුවේ 3-46 වගුව.
යළි පිහිටුවීම වෙනුවට බාධාවක් ජනනය කිරීම සඳහා වොච්ඩෝග් ටයිමරය වින්යාසගත කළ හැකිය. පවර්-ඩවුන් වෙතින් අවදි වීමට වොච්ඩෝග් භාවිතා කරන විට මෙය ඉතා ප්රයෝජනවත් වේ.
මුරටැඹ නොදැනුවත්වම අක්රීය කිරීම හෝ නොදැනුවත්ව කාලය ඉකුත්වීම වැළැක්වීම සඳහා, WDTON ෆියුස් මඟින් වෙනස් ආරක්ෂිත මට්ටම් දෙකක් තෝරාගෙන ඇත. වගුව 8-1 වෙත යොමු කරන්න “වෙනස් කිරීම සඳහා කාලානුරූපී අනුපිළිවෙල වොච්ඩෝග් ටයිමරයේ රූපය ”43 වන පිටුවේ විස්තර සඳහා.
වගුව 8-1. WDT වින්යාසය WDTON හි ෆියුස් සැකසුම් වල කාර්යයක් ලෙස
WDTON | ආරක්ෂිත මට්ටම | WDT ආරම්භක තත්වය | WDT අක්රීය කරන්නේ කෙසේද? | කාලය වෙනස් කරන්නේ කෙසේද? |
වැඩසටහන්ගත නොකළ | 1 | ආබාධිතයි | කාල නියමය | සීමාවන් නොමැත |
වැඩසටහන්ගත කර ඇත | 2 | සබල කර ඇත | සැමවිටම සක්රීය කර ඇත | කාල නියමය |
රූපය 8-7. මුර බල්ලා ටයිමරය
වොච්ඩෝග් ටයිමරයේ වින්යාසය වෙනස් කිරීම සඳහා කාල නියමය
වින්යාසය වෙනස් කිරීමේ අනුක්රමය ආරක්ෂක මට්ටම් දෙක අතර තරමක් වෙනස් වේ. එක් එක් මට්ටම සඳහා වෙනම ක්රියා පටිපාටි විස්තර කෙරේ.
ආරක්ෂිත මට්ටම 1: මෙම ප්රකාරයේදී, වොච්ඩොග් ටයිමරය මුලින් අක්රිය කර ඇත, නමුත් කිසිදු සීමාවකින් තොරව WDE බිට් එකකට ලිවීමෙන් සක්රීය කළ හැක. සබල කළ Watchdog ටයිමරයක් අක්රිය කරන විට කාලානුක්රමික අනුපිළිවෙලක් අවශ්ය වේ. සක්රීය වොච්ඩෝග් ටයිමරයක් අක්රිය කිරීමට, පහත ක්රියා පටිපාටිය අනුගමනය කළ යුතුය:
එකම මෙහෙයුමේදී, WDCE සහ WDE වෙත තර්කනයක් ලියන්න. WDE බිට් එකේ පෙර වටිනාකමට වඩා අඩුවෙන් තාර්කික එකක් WDE වෙත ලිවිය යුතුය.
ඊළඟ ඔරලෝසු චක්ර හතර තුළ, එකම මෙහෙයුමේදී, WDE සහ WDP බිටු අවශ්ය පරිදි ලියන්න, නමුත් WDCE බිට් ඉවත් කර ඇත.
ආරක්ෂිත මට්ටම 2: මෙම ප්රකාරයේදී, වොච්ඩොග් ටයිමරය සැමවිටම සක්රීය කර ඇති අතර, WDE බිටු සෑම විටම එකක් ලෙස කියවනු ඇත. Watchdog කාල සීමාව වෙනස් කිරීමේදී කාලානුරූපී අනුපිළිවෙලක් අවශ්ය වේ. වොච්ඩෝග් කාල සීමාව වෙනස් කිරීමට, පහත ක්රියා පටිපාටිය අනුගමනය කළ යුතුය:
එකම මෙහෙයුමේදී, WDCE සහ WDE වෙත තාර්කික එකක් ලියන්න. WDE සෑම විටම සකසා තිබුණද, කාලානුරූපී අනුක්රමය ආරම්භ කිරීම සඳහා WDE කෙනෙකුට ලිවිය යුතුය.
ඊළඟ ඔරලෝසු චක්ර හතර තුළ, එකම මෙහෙයුමේදී, WDP බිටු අවශ්ය පරිදි ලියන්න, නමුත් WDCE බිට් ඉවත් කර ඇත. WDE බිට් එකට ලියා ඇති අගය අදාල නොවේ.
කේතය Example
පහත දැක්වෙන කේතය exampඩබ්ලිව්ඩීටී ක්රියා විරහිත කිරීම සඳහා එකලස් කිරීමක් සහ එක් සී ශ්රිතයක් le මඟින් පෙන්වයි. හිටපුample උපකල්පනය කරන්නේ පාලනයන් පාලනය වන බවයි (උදා: ගෝලීය වශයෙන් බාධා කිරීම් අක්රිය කිරීමෙන්) එමඟින් මෙම කාර්යයන් ක්රියාත්මක කිරීමේදී කිසිදු බාධාවක් සිදු නොවේ.
එකලස් කිරීමේ කේතය Example(1) |
WDT_off:
wdr ; MCUSR හි WDRF හිස් කරන්න ldi r16, (0< MCUSR, r16 ; WDCE සහ WDE වෙත තාර්කික එකක් ලියන්න ; නොදැනුවත්වම වොච්ඩෝග් යළි පිහිටුවීම වැළැක්වීම සඳහා පැරණි පෙර සැකසුම් සැකසුම තබා ගන්න r16 හි, WDTCR ori r16, (1< WDTCR, r16 ; WDT අක්රිය කරන්න ldi r16, (0< WDTCR, r16 ret |
සී කේතය Example(1) |
අවලංගු WDT_off (ශුන්ය)
{ _WDR (); /* MCUSR */ MCUSR = 0x00 හි WDRF පැහැදිලි කරන්න /* WDCE සහ WDE */ WDTCR වෙත තාර්කික එකක් ලියන්න |= (1< / * WDT අක්රිය කරන්න * / WDTCR = 0x00; } |
සටහන: 1. බලන්න කේතය Examp6 වන පිටුවේ.
විස්තරය ලියාපදිංචි කරන්න
MCUSR - MCU තත්ව ලේඛනය
MCU තත්ව ලේඛනය මඟින් MCU යළි පිහිටුවීමට හේතු වූ යළි පිහිටුවීමේ ප්රභවය පිළිබඳ තොරතුරු සපයයි.
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x34 | – | – | – | – | ඩබ්ලිව්ඩීආර්එෆ් | බෝර්ෆ් | අමතර | PORF | MCUSR |
කියවන්න/ලියන්න | R | R | R | R | R/W | R/W | R/W | R/W |
ආරම්භක අගය 0 0 0 0 බිට් විස්තරය බලන්න
බිටු 7: 4 - Res: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
බිට් 3 - ඩබ්ලිව්ඩීආර්එෆ්: වොච්ඩෝග් ධජය නැවත සකසන්න
වොච්ඩෝග් යළි පිහිටුවීම සිදුවුවහොත් මෙම බිට් එක සකසා ඇත. බලය නැවත සැකසීමෙන් හෝ ධජයට තාර්කික ශුන්යයක් ලිවීමෙන් බිට් නැවත සකසනු ලැබේ.
බිට් 2 - බෝර්ෆ්: දුඹුරු-පිටවන ධජය නැවත සකසන්න
බ්රවුන්-අවුට් යළි පිහිටුවීම සිදුවුවහොත් මෙම බිට් එක සකසා ඇත. බලය නැවත සැකසීමෙන් හෝ ධජයට තාර්කික ශුන්යයක් ලිවීමෙන් බිට් නැවත සකසනු ලැබේ.
බිට් 1 - EXTRF: බාහිර යළි පිහිටුවීමේ ධජය
බාහිර යළි පිහිටුවීමක් සිදුවුවහොත් මෙම බිට් එක සකසා ඇත. බිට් නැවත සකසනු ලබන්නේ පවර්-ඔන් රීසෙට් මගින් හෝ ධජයට තාර්කික ශුන්යයක් ලිවීමෙනි.
Bit 0 - PORF: බලය ක්රියාත්මක කිරීමේ ධජය යළි පිහිටුවන්න
බලය නැවත සැකසීමක් සිදුවුවහොත් මෙම බිට් එක සකසා ඇත. බිට් යළි පිහිටුවනු ලබන්නේ ධජයට තාර්කික ශුන්යයක් ලිවීමෙන් පමණි.
යළි පිහිටුවීමේ තත්වයක් හඳුනා ගැනීම සඳහා යළි පිහිටුවීමේ ධජ භාවිතා කිරීම සඳහා, පරිශීලකයා වැඩසටහනේ හැකි ඉක්මනින් MCUSR කියවා නැවත සකස් කළ යුතුය. වෙනත් යළි පිහිටුවීම සිදුවීමට පෙර ලේඛනය හිස් කර ඇත්නම්, යළි පිහිටුවීමේ කොඩි පරීක්ෂා කිරීමෙන් යළි පිහිටුවීමේ ප්රභවය සොයාගත හැකිය.
WDTCR - වොච්ඩෝග් ටයිමර් පාලන ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x21 | ඩබ්ලිව්ඩීඅයිඑෆ් | WDIE | WDP3 | ඩබ්ලිව්ඩීසීඊ | ඩබ්ලිව්ඩීඊ | WDP2 | WDP1 | WDP0 | ඩබ්ලිව්ඩීටීසීආර් |
කියවන්න/ලියන්න | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | X | 0 | 0 | 0 |
බිට් 7 - ඩබ්ලිව්ඩීඅයිඑෆ්: වොච්ඩෝග් කල් ඉකුත් වූ බාධා ධජය
වොච්ඩෝග් ටයිමරයේ කාලය ඉකුත්වීම සිදුවන විට මෙම බිට් එක සකසා ඇති අතර වොච්ඩෝග් ටයිමරය බාධා කිරීම සඳහා වින්යාස කර ඇත. අනුරූපී බාධා කිරීම් හැසිරවීමේ දෛශිකය ක්රියාත්මක කිරීමේදී දෘඩාංග මඟින් WDIF නිෂ්කාශනය වේ. විකල්පයක් ලෙස, ධජයට තාර්කික එකක් ලිවීමෙන් WDIF නිෂ්කාශනය වේ. SREG සහ WDIE හි I-bit සැකසූ විට, වොච්ඩෝග් ටයිම්-අවුට් ඉන්ටර්පෙට් ක්රියාත්මක වේ.
බිට් 6 - ඩබ්ලිව්ඩීඅයි: වොච්ඩෝග් කල් ඉකුත් වූ බාධා කිරීම් සක්රීය කරන්න
මෙම බිට් එකකට ලියන විට, ඩබ්ලිව්ඩීඊ නිෂ්කාශනය වන අතර, තත්ව ලේඛනයේ අයි-බිට් සකසා ඇති විට, වොච්ඩෝග් ටයිම්-අවුට් ඉන්ටර්ප්රප්ට් සක්රීය වේ. වොච්ඩෝග් ටයිමරයේ කල් ඉකුත් වීමක් සිදුවුවහොත් නැවත සැකසීම වෙනුවට අනුරූප බාධා කිරීම් මෙම ප්රකාරයේදී ක්රියාත්මක වේ.
WDE සකසා ඇත්නම්, කල් ඉකුත් වූ විට WDIE ස්වයංක්රීයව දෘඩාංග මගින් ඉවත් කරනු ලැබේ. බාධාව භාවිතා කරන අතරතුර වොච්ඩෝග් යළි පිහිටුවීමේ ආරක්ෂාව තබා ගැනීමට මෙය ප්රයෝජනවත් වේ. WDIE බිට් ඉවත් කිරීමෙන් පසුව, ඊළඟ කාලය අවසන් වීමෙන් නැවත සැකසීමක් ජනනය වේ. වොච්ඩෝග් යළි පිහිටුවීම වළක්වා ගැනීම සඳහා, එක් එක් බාධා කිරීම් වලින් පසුව WDIE සැකසිය යුතුය.
වගුව 8-2. Watchdog ටයිමර් වින්යාසය
ඩබ්ලිව්ඩීඊ | WDIE | වොච්ඩෝග් ටයිමර් තත්වය | කල් ඉකුත් වීමේ ක්රියාව |
0 | 0 | නැවැත්තුවා | කිසිවක් නැත |
0 | 1 | දුවනවා | බාධා කරන්න |
1 | 0 | දුවනවා | යළි පිහිටුවන්න |
1 | 1 | දුවනවා | බාධා කරන්න |
බිට් 4 - ඩබ්ලිව්ඩීසීඊ: වොච්ඩෝග් වෙනස සක්රීය කරන්න
WDE බිට් තාර්කික ශුන්යයට ලියා ඇති විට මෙම බිට් එක සැකසිය යුතුය. එසේ නොමැතිනම් වොච්ඩෝග් අක්රීය නොවේ. එකකට ලිවීමෙන් පසු, දෘඩාංග ඔරලෝසු චක්ර හතරකට පසුව මෙම බිට් එක ඉවත් කරයි. වොච්ඩෝග් අක්රීය කිරීමේ ක්රියා පටිපාටියක් සඳහා WDE බිට් පිළිබඳ විස්තරය බලන්න. පෙර සැකසුම් බිටු වෙනස් කිරීමේදී මෙම බිට් එකද සැකසිය යුතුය. බලන්න “කාලානුරූපී අනුපිළිවෙල 43 වන පිටුවේ වොච්ඩෝග් ටයිමරයේ වින්යාසය වෙනස් කිරීම සඳහා ”.
බිට් 3 - ඩබ්ලිව්ඩීඊ: වොච්ඩෝග් සක්රීය කරන්න
WDE එක තර්කනයට ලියා ඇති විට, වොච්ඩෝග් ටයිමරය සක්රීය කර ඇති අතර, WDE තාර්කික ශුන්යයට ලියා තිබේ නම්, වොච්ඩෝග් ටයිමර් ශ්රිතය අක්රීය වේ. WDE ඉවත් කළ හැක්කේ WDCE බිට් එකට තාර්කික මට්ටමක් තිබේ නම් පමණි. සක්රීය වොච්ඩෝග් ටයිමරය අක්රිය කිරීමට, පහත ක්රියා පටිපාටිය අනුගමනය කළ යුතුය:
එකම මෙහෙයුමේදී, WDCE සහ WDE වෙත තර්කනයක් ලියන්න. අක්රීය මෙහෙයුම ආරම්භ වීමට පෙර එය එකකට සකසා තිබුණද තාර්කික එකක් WDE වෙත ලිවිය යුතුය.
ඊළඟ ඔරලෝසු චක්ර හතර තුළ, WDE වෙත තර්කනයක් 0 ලියන්න. මෙය වොච්ඩෝග් අක්රීය කරයි.
ආරක්ෂිත මට්ටම 2 හි, ඉහත විස්තර කර ඇති ඇල්ගොරිතම සමඟ වුවද, වොච්ඩෝග් ටයිමරය අක්රිය කළ නොහැක. බලන්න 43 වන පිටුවේ “වොච්ඩෝග් ටයිමරයේ වින්යාසය වෙනස් කිරීම සඳහා කාල නියමය”.
ආරක්ෂිත මට්ටමේ 1 දී, MCUSR හි WDRF විසින් WDE අභිබවා යයි. බලන්න 44 වන පිටුවේ “MCUSR - MCU තත්ව ලේඛනය” WDRF විස්තර කිරීම සඳහා. මෙයින් අදහස් කරන්නේ WDRF සකසා ඇති විට WDE සෑම විටම සකසා ඇති බවයි. WDE ඉවත් කිරීම සඳහා, ඉහත විස්තර කර ඇති ක්රියා පටිපාටිය සමඟ වොච්ඩෝග් අක්රීය කිරීමට පෙර WDRF නිෂ්කාශනය කළ යුතුය. මෙම අංගය අසාර්ථක වීමට හේතු වන තත්වයන් තුළ බහු යළි පිහිටුවීම් සහතික කරයි, සහ අසමත් වීමෙන් පසු ආරක්ෂිත ආරම්භයක්.
සටහන: යෙදුමේ මුරකරු ටයිමරය භාවිතා නොකරන්නේ නම්, උපාංගය ආරම්භ කිරීමේදී මුර බල්ලා අක්රීය කිරීමේ ක්රියා පටිපාටියක් හරහා යාම වැදගත් වේ. මුරකරු අහම්බෙන් සක්රීය කර ඇත්නම්, උදාample runaway pointer හෝ brown-out කොන්දේසියක් මගින්, උපාංගය නැවත සකසනු ඇත, එය නව මුරකරු යළි පිහිටුවීමකට තුඩු දෙනු ඇත. මෙම තත්ත්වය මඟහරවා ගැනීම සඳහා ආරම්භක මෘදුකාංගයේදී යෙදුම් මෘදුකාංගය සෑම විටම ඩබ්ලිව්ඩීආර්එෆ් ධජය සහ ඩබ්ලිව්ඩීඊ පාලක බිට් ඉවත් කළ යුතුය.
බිටු 5, 2: 0 - ඩබ්ලිව්ඩීපී [3: 0]: වොච්ඩෝග් ටයිමර් ප්රෙස්කලර් 3, 2, 1 සහ 0
වොච්ඩෝග් ටයිමර් සක්රිය කර ඇති විට WDP [3: 0] බිටු මඟින් වොච්ඩෝග් ටයිමර් කල් තබා ගැනීම තීරණය කරයි. විවිධ කල් තබා ගැනීමේ අගයන් සහ ඒවාට අනුරූප කාලරාමු කාලයන් දක්වා ඇත වගුව 8-3.
වගුව 8-3. වොච්ඩෝග් ටයිමර් පූර්ව පරිමාණ තේරීම
WDP3 | WDP2 | WDP1 | WDP0 | WDT ඔස්කිලේටර් චක්ර ගණන | VCC = 5.0V හි සාමාන්ය කාල සීමාව |
0 | 0 | 0 | 0 | 2K (2048) චක්ර | 16 ms |
0 | 0 | 0 | 1 | 4K (4096) චක්ර | 32 ms |
0 | 0 | 1 | 0 | 8K (8192) චක්ර | 64 ms |
0 | 0 | 1 | 1 | 16K (16384) චක්ර | තත්පර 0.125 යි |
0 | 1 | 0 | 0 | 32K (32764) චක්ර | තත්පර 0.25 යි |
0 | 1 | 0 | 1 | 64K (65536) චක්ර | තත්පර 0.5 යි |
0 | 1 | 1 | 0 | 128K (131072) චක්ර | තත්පර 1.0 යි |
0 | 1 | 1 | 1 | 256K (262144) චක්ර | තත්පර 2.0 යි |
1 | 0 | 0 | 0 | 512K (524288) චක්ර | තත්පර 4.0 යි |
1 | 0 | 0 | 1 | 1024K (1048576) චක්ර | තත්පර 8.0 යි |
වගුව 8-3. වොච්ඩෝග් ටයිමර් පූර්ව පරිමාණ තේරීම (ඉදිරියට)
WDP3 | WDP2 | WDP1 | WDP0 | WDT ඔස්කිලේටර් චක්ර ගණන | VCC = 5.0V හි සාමාන්ය කාල සීමාව |
1 | 0 | 1 | 0 | වෙන් කර ඇත(1) | |
1 | 0 | 1 | 1 | ||
1 | 1 | 0 | 0 | ||
1 | 1 | 0 | 1 | ||
1 | 1 | 1 | 0 | ||
1 | 1 | 1 | 1 |
සටහන: 1. තෝරා ගත්තේ නම්, 0b1010 ට අඩු වලංගු සැකසුම් වලින් එකක් භාවිතා වේ.
බාධා කිරීම්
ATtiny25 / 45/85 හි සිදු කර ඇති පරිදි බාධා කිරීම් හැසිරවීමේ විශේෂතා මෙම කොටසින් විස්තර කෙරේ. AVR බාධා කිරීම් හැසිරවීමේ සාමාන්ය පැහැදිලි කිරීමක් සඳහා, යොමු වන්න 12 වන පිටුවේ “හැසිරවීම නැවත සකසන්න සහ බාධා කරන්න”.
ATtiny25 / 45/85 හි දෛශික වලට බාධා කරන්න
ATtiny25 / 45/85 හි බාධාකාරී දෛශික විස්තර කර ඇත වගුව 9-1පහත.
වගුව 9-1. දෛශික නැවත සකසන්න සහ බාධා කරන්න
දෛශික අංකය. | වැඩසටහන් ලිපිනය | මූලාශ්රය | බාධා අර්ථ දැක්වීම |
1 | 0x0000 | යළි පිහිටුවන්න | බාහිර පින්, බලය ක්රියාත්මක කිරීම, බ්රවුන්-අවුට් යළි පිහිටුවීම, වොච්ඩෝග් යළි පිහිටුවීම |
2 | 0x0001 | INT0 | බාහිර බාධා කිරීම් ඉල්ලීම 0 |
3 | 0x0002 | PCINT0 | පින් වෙනස් කිරීමේ බාධා ඉල්ලීම 0 |
4 | 0x0003 | TIMER1_COMPA | ටයිමර් / කවුන්ටරය 1 සංසන්දනය තරගය A. |
5 | 0x0004 | TIMER1_OVF | ටයිමර් / කවුන්ටරය 1 පිටාර ගැලීම |
6 | 0x0005 | TIMER0_OVF | ටයිමර් / කවුන්ටරය 0 පිටාර ගැලීම |
7 | 0x0006 | EE_RDY | EEPROM සූදානම් |
8 | 0x0007 | ANA_COMP | ඇනලොග් සංසන්දකය |
9 | 0x0008 | ADC | ADC පරිවර්තනය සම්පූර්ණයි |
10 | 0x0009 | TIMER1_COMPB | ටයිමර් / කවුන්ටරය 1 සංසන්දනය කරන්න බී |
11 | 0x000A | TIMER0_COMPA | ටයිමර් / කවුන්ටරය 0 සංසන්දනය තරගය A. |
12 | ඩී | TIMER0_COMPB | ටයිමර් / කවුන්ටරය 0 සංසන්දනය කරන්න බී |
13 | 0x000 සී | WDT | ඔරලෝසුව කල් ඉකුත්වීම |
14 | 0x000D | USI_START | යූඑස්අයි ආරම්භය |
15 | 0x000E | USI_OVF | USI පිටාර ගැලීම |
වැඩසටහන කිසි විටෙකත් බාධාකාරී ප්රභවයක් සක්රීය නොකරන්නේ නම්, බාධාකාරී දෛශික භාවිතා නොකරන අතර නිත්ය වැඩසටහන් කේතය මෙම ස්ථානවල තැබිය හැකිය.
ATtiny25/45/85 හි බාධා කරන දෛශික ලිපිනයන් සඳහා සාමාන්ය හා සාමාන්ය සැකැස්මක් වැඩසටහන ex හි දැක්වේampපහතින්.
එකලස් කිරීමේ කේතය Example | ||
.org 0x0000 | ; ඊළඟ ලිපිනය සකසන්න | ප්රකාශය |
rjmp නැවත සකසන්න | ; ලිපිනය 0x0000 | |
rjmp INT0_ISR | ; ලිපිනය 0x0001 | |
rjmp PCINT0_ISR | ; ලිපිනය 0x0002 | |
rjmp TIM1_COMPA_ISR | ; ලිපිනය 0x0003 | |
rjmp TIM1_OVF_ISR | ; ලිපිනය 0x0004 | |
rjmp TIM0_OVF_ISR | ; ලිපිනය 0x0005 | |
rjmp EE_RDY_ISR | ; ලිපිනය 0x0006 | |
rjmp ANA_COMP_ISR | ; ලිපිනය 0x0007 | |
rjmp ADC_ISR | ; ලිපිනය 0x0008 | |
rjmp TIM1_COMPB_ISR | ; ලිපිනය 0x0009 | |
rjmp TIM0_COMPA_ISR | ; ලිපිනය 0x000A | |
rjmp TIM0_COMPB_ISR | ; ලිපිනය 0x000B | |
rjmp WDT_ISR | ; ලිපිනය 0x000C | |
rjmp USI_START_ISR | ; ලිපිනය 0x000D | |
rjmp USI_OVF_ISR | ; ලිපිනය 0x000E | |
නැවත සකසන්න: | ; ප්රධාන වැඩසටහන් ආරම්භය | |
; ලිපිනය 0x000F | ||
… |
සටහන: බලන්න කේතය Examp6 වන පිටුවේ.
බාහිර බාධා
බාහිර බාධා කිරීම් INT0 පින් හෝ ඕනෑම PCINT [5: 0] අල්මාරි මගින් අවුලුවන. INT0 හෝ PCINT [5: 0] අල්ෙපෙනති නිමැවුම් ලෙස සකසා තිබුණද, සක්රිය කර ඇත්නම්, බාධා කිරීම් අවුලුවන බව නිරීක්ෂණය කරන්න. මෙම අංගය මෘදුකාංග බාධා ජනනය කිරීමේ ක්රමයක් සපයයි. පින් වෙනස් කිරීම බාධා කරයි PCIT [5: 0] පින් ටොගල් කර ඇත්නම් PCI අවුලුවනු ඇත. පින් වෙනස් කිරීමට බාධා කරන කුමන අල්ෙපෙනති PCMSK රෙජිස්ටර් පාලනය. PCINT [5: 0] හි පින් වෙනස් කිරීමේ බාධා අසමමුහුර්තව අනාවරණය වේ. මෙයින් ඇඟවෙන්නේ මෙම බාධා කිරීම් නිෂ්ක්රීය ප්රකාරය හැරුණු විට නින්දට යාමෙන්ද කොටස අවදි කිරීමට භාවිතා කළ හැකි බවයි.
INT0 බාධා කිරීම් පහත වැටෙන හෝ ඉහළ යන දාරයක් හෝ පහත් මට්ටමකින් අවුලුවන. MCU පාලන ලේඛනය සඳහා වන පිරිවිතරයේ දක්වා ඇති පරිදි මෙය සකසා ඇත - MCUCR. INT0 බාධා කිරීම සක්රීය කර මට්ටමේ ප්රේරක ලෙස වින්යාස කර ඇති විට, පින් එක පහත් මට්ටමක පවතින තාක් කල් බාධා කිරීම් අවුලුවනු ඇත. INT0 හි වැටෙන හෝ ඉහළ යන දාර බාධා හඳුනා ගැනීම සඳහා විස්තර කර ඇති I / O ඔරලෝසුවක් අවශ්ය බව සලකන්න “ඔරලෝසු පද්ධති සහ ඒවායේ ව්යාප්තිය” සක්රීයයි 23 පිටුව.
පහත් මට්ටමේ බාධා කිරීම්
INT0 හි අඩු මට්ටමේ බාධාවක් අසමමුහුර්තව අනාවරණය වේ. මෙයින් ඇඟවෙන්නේ නිෂ්ක්රීය මාදිලිය හැරුණු විට නින්දට යාමෙන් මෙම කොටස අවදි කිරීමට භාවිතා කළ හැකි බවයි. නිෂ්ක්රීය ප්රකාරය හැර අනෙකුත් සියලුම නින්දේ ක්රම වලදී I / O ඔරලෝසුව නතර කර ඇත.
Power-down සිට අවදි කිරීම සඳහා මට්ටම් ප්රේරණය කරන ලද බාධාවක් භාවිතා කරන්නේ නම්, මට්ටමේ බාධාව ප්රේරණය කිරීම සඳහා MCU අවදි කිරීම සම්පූර්ණ කිරීමට අවශ්ය මට්ටම ප්රමාණවත් කාලයක් රඳවා තබා ගත යුතු බව සලකන්න. ආරම්භක වේලාව අවසන් වීමට පෙර මට්ටම අතුරුදහන් වුවහොත්, MCU තවමත් අවදි වනු ඇත, නමුත් කිසිදු බාධාවක් ජනනය නොවේ. ආරම්භක වේලාව විස්තර කර ඇති පරිදි SUT සහ CKSEL ෆියුස් මගින් අර්ථ දක්වා ඇත 23 වන පිටුවේ “පද්ධති ඔරලෝසු සහ ඔරලෝසු විකල්ප”.
උපාංගය අවදි වීමට පෙර බාධාකාරී පින් එකෙහි පහත් මට්ටම ඉවත් කළ හොත් ක්රමලේඛ ක්රියාත්මක කිරීම බාධාකාරී සේවා පුරුද්දට හරවා නොයනු ඇත, නමුත් SLEEP විධානය අනුගමනය කරන උපදෙස් වලින් ඉදිරියට යන්න.
පින් වෙනස් කිරීමේ බාධාකාරී වේලාව
හිටපු කෙනෙක්ample පින් වෙනස් කිරීමේ බාධාවක වේලාව පෙන්වයි රූපය 9-1.
විස්තරය ලියාපදිංචි කරන්න
MCUCR - MCU පාලන ලේඛනය
බාහිර බාධා කිරීම් පාලන ලේඛනය A හි බාධාකාරී සංවේදන පාලනය සඳහා පාලන බිටු අඩංගු වේ.
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | BODS | PUD | SE | SM1 | SM0 | බොඩ්ස් | ISC01 | ISC00 | MCUCR |
කියවන්න/ලියන්න | R | R/W | R/W | R/W | R/W | R | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිටු 1: 0 - අයිඑස්සී 0 [1: 0]: සංවේදී පාලනයට බාධා 0 බිට් 1 සහ බිට් 0
SREG I- ධජය සහ ඊට අනුරූප බාධා ආවරණ සකසා ඇත්නම් බාහිර බාධා කිරීම් 0 බාහිර පින් INT0 මඟින් සක්රීය වේ. බාධාව සක්රිය කරන බාහිර INT0 පින් එකේ මට්ටම සහ දාර අර්ථ දක්වා ඇත වගුව 9-2. INT0 පින් එකේ අගය එස්ampදාර හඳුනා ගැනීමට පෙර නායකත්වය. දාරය හෝ ටොගල් බාධාව තෝරා ගන්නේ නම්, එක් ඔරලෝසු කාලයකට වඩා වැඩි කාලයක් පවතින ස්පන්දන බාධා ඇති කරයි. කෙටි ස්පන්දන බාධා ඇති කරන බවට සහතික නොවේ. පහත් මට්ටමේ බාධා කිරීම් තෝරන්නේ නම්, බාධාවක් ජනනය කිරීම සඳහා දැනට ක්රියාත්මක කරන උපදෙස් අවසන් වන තුරු පහත් මට්ටම පවත්වා ගත යුතුය.
වගුව 9-2. 0 ඉන්ද්රිය පාලනයට බාධා කරන්න
ISC01 | ISC00 | විස්තරය |
0 | 0 | INT0 හි පහත් මට්ටම බාධාකාරී ඉල්ලීමක් ජනනය කරයි. |
0 | 1 | INT0 හි ඕනෑම තාර්කික වෙනසක් බාධා ඉල්ලීමක් ජනනය කරයි. |
1 | 0 | INT0 හි වැටෙන දාරය බාධාකාරී ඉල්ලීමක් ජනනය කරයි. |
1 | 1 | INT0 හි නැගී එන දාරය බාධාකාරී ඉල්ලීමක් ජනනය කරයි. |
GIMSK - සාමාන්ය බාධාකාරී වෙස් ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
ඩී | – | INT0 | PCIe | – | – | – | – | – | GIMSK |
කියවන්න/ලියන්න | R | R/W | R/W | R | R | R | R | R | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිටු 7, 4: 0 - නැවත: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
Bit 6 - INT0: බාහිර බාධා කිරීම් ඉල්ලීම 0 සබල කරන්න
INT0 බිට් (එකක්) සහ තත්ව ලේඛනයේ (SREG) I-bit සකසා ඇති විට (එකක්), බාහිර පින් බාධා කිරීම සක්රීය වේ. MCU පාලන ලේඛනයේ (MCUCR) ඇති බාධාකාරී සංවේදක පාලක බිටු 0/1 (ISC0 සහ ISC01) අර්ථ දක්වන්නේ INT00 පින් එකෙහි ඉහළ මට්ටමේ සහ / හෝ වැටෙන අද්දර හෝ මට්ටමේ සංවේදීතාව මත බාහිර බාධා කිරීම් සක්රීයද යන්නයි. INT0 ප්රතිදානය ලෙස වින්යාස කර තිබුණද, පින් එකෙහි ක්රියාකාරිත්වය බාධාකාරී ඉල්ලීමක් ඇති කරයි. බාහිර බාධා කිරීම් ඉල්ලීම් 0 හි අනුරූපී බාධාව INT0 බාධාකාරී දෛශිකයෙන් ක්රියාත්මක වේ.
බිට් 5 - පීසීඅයිඊ: පින් වෙනස් කිරීමේ බාධා සක්රීය කරන්න
PCIE බිට් (එකක්) සහ තත්ව ලේඛනයේ (SREG) I-bit සකසා ඇති විට (එකක්), පින් වෙනස් කිරීමේ බාධා කිරීම් සක්රීය වේ. සක්රිය කර ඇති ඕනෑම PCINT [5: 0] පින් එකක වෙනසක් සිදුවුවහොත් එය බාධා ඇති කරයි. Pin Change Interrupt Request හි අනුරූපී බාධාව PCI Interrupt Vector වෙතින් ක්රියාත්මක වේ. PCINT [5: 0] PCMSK0 ලේඛනය මඟින් වර්ග තනි තනිව සක්රීය කර ඇත.
GIFR - සාමාන්ය බාධා කොඩි ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x3A | – | INTF0 | PCIF | – | – | – | – | – | GIFR |
කියවන්න/ලියන්න | R | R/W | R/W | R | R | R | R | R | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිටු 7, 4: 0 - නැවත: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
බිට් 6 - INTF0: බාහිර බාධාකාරී ධජය 0
INT0 පින් එකෙහි දාරයක් හෝ තාර්කික වෙනසක් බාධා ඉල්ලීමක් අවුලුවන විට, INTF0 සැකසෙනු ඇත (එකක්). SREG හි I-bit සහ GIMSK හි INT0 බිට් (එකක්) සකසා ඇත්නම්, MCU අනුරූපී බාධාකාරී දෛශිකයට පනින්න. බාධා කිරීම් සිදු කරන විට ධජය ඉවත් කරනු ලැබේ. විකල්පයක් ලෙස, ධජය එයට තාර්කික එකක් ලිවීමෙන් ඉවත් කළ හැකිය. INT0 මට්ටමේ බාධාවක් ලෙස වින්යාස කර ඇති විට මෙම ධජය සෑම විටම නිෂ්කාශනය වේ.
බිට් 5 - පීසීඅයිඑෆ්: පින් වෙනස් කිරීමේ බාධා කොඩිය
ඕනෑම PCINT [5: 0] පින් එකක තාර්කික වෙනසක් බාධා ඉල්ලීමක් අවුලුවන විට, PCIF සැකසෙනු ඇත (එකක්). SREG හි I-bit සහ GIMSK හි PCIE බිට් (එකක්) සකසා ඇත්නම්, MCU අනුරූපී බාධාකාරී දෛශිකයට පනින්න. බාධා කිරීම් සිදු කරන විට ධජය ඉවත් කරනු ලැබේ. විකල්පයක් ලෙස, ධජය එයට තාර්කික එකක් ලිවීමෙන් ඉවත් කළ හැකිය.
PCMSK - පින් වෙනස් කිරීමේ වෙස් ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x15 | – | – | PCINT5 | PCINT4 | PCINT3 | PCINT2 | PCINT1 | PCINT0 | පීසීඑම්එස්කේ |
කියවන්න/ලියන්න | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිටු 7: 6 - Res: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
බිටු 5: 0 - PCINT [5: 0]: පින් වෙනස මාස්ක් 5: 0 සක්රීය කරන්න
සෑම PCINT [5: 0] බිට් එකක්ම අනුරූප I / O පින් මත පින් වෙනස් කිරීමේ බාධා සක්රීය කර තිබේද යන්න තෝරා ගනී. PCINT [5: 0] සකසා GIMSK හි PCIE බිට් එක සකසා ඇත්නම්, අනුරූප I / O පින් මත පින් වෙනස් කිරීමේ බාධා සක්රීය වේ. PCINT [5: 0] ඉවත් කර ඇත්නම්, අනුරූප I / O පින් එකෙහි පින් වෙනස් කිරීමේ බාධාව අක්රීය කර ඇත.
I/O වරායන්
හැඳින්වීම
සාමාන්ය ඩිජිටල් අයි/ඕ වරායයන් ලෙස භාවිතා කරන විට සියලුම ඒවීආර් වරායන්හි සත්ය කියවීමේ-වෙනස් කිරීමේ-ලිවීමේ ක්රියාකාරිත්වය ඇත. මෙයින් අදහස් කරන්නේ එස්බීඅයි සහ සීබීඅයි උපදෙස් සමඟ නොදැනුවත්වම වෙනත් පින් වල දිශාව වෙනස් නොකර එක් වරාය පින් එකක දිශාව වෙනස් කළ හැකි බවයි. ඩ්රයිව් අගය වෙනස් කිරීමේදී (ප්රතිදානය ලෙස වින්යාස කර ඇත්නම්) හෝ ඇදගෙන යාමේ ප්රතිරෝධක සක්රීය/අක්රීය කිරීමේදී (ආදානය ලෙස සකසා ඇත්නම්) එය අදාළ වේ. සෑම ප්රතිදාන බෆරයකම ඉහළ සින්ක් සහ ප්රභව හැකියාවන් සහිත සමමිතික ධාවක ලක්ෂණ ඇත. පයින් ඩ්රයිවර් LED ප්රදර්ශක සෘජුවම ධාවනය කිරීමට තරම් ශක්තිමත් ය. සියලුම වරාය අල්මාරි වලට සැපයුම් පරිමාවක් සහිත තනි තනිව තෝරා ගත හැකි ඇදගෙන යාමේ ප්රතිරෝධක ඇතtagඊ වෙනස් නොවන ප්රතිරෝධය. සියලුම I/O පින් වල දක්වා ඇති පරිදි VCC සහ Ground යන දෙකටම ආරක්ෂණ ඩයෝඩ ඇත රූපය 10-1. වෙත යොමු කරන්න 161 වන පිටුවේ “විදුලි ලක්ෂණ” සම්පූර්ණ පරාමිතීන් ලැයිස්තුවක් සඳහා.
රූපය 10-1. I/O Pin Equivalent Skematic
මෙම කොටසේ ඇති සියලුම රෙජිස්ටර් සහ බිට් යොමු කිරීම් සාමාන්ය ආකාරයෙන් ලියා ඇත. කුඩා අකුර “x” වරාය සඳහා වන ඉලක්කම් සංකේතය ද කුඩා අකුර “එන්” බිට් අංකය ද නියෝජනය කරයි. කෙසේ වෙතත්, වැඩසටහනක රෙජිස්ටරය හෝ බිට් භාවිතා කරන විට නිශ්චිත පෝරමය භාවිතා කළ යුතුය. හිටපු අයටample, බිට් අංක සඳහා PORTB3. B වරායේ 3, මෙහි සාමාන්යයෙන් PORTxn ලෙස ලේඛන ගත කෙරේ. භෞතික I/O රෙජිස්ටර් සහ බිට් ස්ථාන එහි දක්වා ඇත “රෙජිස්ටර් විස්තරය” සක්රීයයි 64 පිටුව.
සෑම වරායක් සඳහාම I / O මතක ලිපින ස්ථාන තුනක් වෙන් කර ඇති අතර, දත්ත ලේඛනය සඳහා එකක් - PORTx, දත්ත දිශා ලේඛනය - DDRx, සහ වරාය ආදාන පින් - PINx. වරාය ආදාන පින් I / O ස්ථානය කියවීමට පමණක් වන අතර දත්ත ලේඛනය සහ දත්ත දිශාන ලේඛනය කියවීමට / ලිවීමට හැකිය. කෙසේ වෙතත්, PINx රෙජිස්ටරයේ තාර්කික එකක් සිට ටිකක් දක්වා ලිවීම, දත්ත ලේඛනයේ අනුරූප බිටු ටොගල් කිරීමට හේතු වේ. ඊට අමතරව, MCUCR හි ඇති Pull-up Disable - PUD bit සකසා ඇති විට සියලුම වරායන්හි සියලුම අල්ෙපෙනති සඳහා අදින්න ක්රියාකාරිත්වය අක්රීය කරයි.
සාමාන්ය ඩිජිටල් I / O ලෙස I / O වරාය භාවිතා කිරීම විස්තර කර ඇත 53 වන පිටුවේ “සාමාන්ය ඩිජිටල් I / O ලෙස වරාය”. බොහෝ වරාය අල්ෙපෙනති උපාංගයේ පර්යන්ත ලක්ෂණ සඳහා විකල්ප කාර්යයන් සමඟ බහුකාර්ය කර ඇත. එක් එක් විකල්ප ශ්රිතය වරාය පින් සමඟ අන්තර් ක්රියා කරන ආකාරය විස්තර කර ඇත 57 වන පිටුවේ “විකල්ප වරාය කාර්යයන්”. විකල්ප කාර්යයන් පිළිබඳ සම්පූර්ණ විස්තරයක් සඳහා තනි මොඩියුල අංශ වෙත යොමු වන්න.
සමහර වරාය අල්ෙපෙනතිවල විකල්ප ක්රියාකාරිත්වය සක්රීය කිරීම සාමාන්ය ඩිජිටල් I / O ලෙස වරායේ අනෙක් අල්ෙපෙනති භාවිතා කිරීමට බලපාන්නේ නැති බව සලකන්න.
සාමාන්ය ඩිජිටල් I / O ලෙස වරාය
වරාය යනු විකල්ප අභ්යන්තර අදින්නන් සහිත ද්වි-දිශානුගත I / O වරායන් ය. රූපය 10-2 එක් I / O-port පින් එකක ක්රියාකාරී විස්තරයක් පෙන්වයි, මෙහි සාමාන්යයෙන් Pxn ලෙස හැඳින්වේ.
රූපය 10-2. සාමාන්ය ඩිජිටල් I/O(1)
පින් වින්යාස කිරීම
සෑම වරාය පින් එකකම ලියාපදිංචි බිටු තුනකින් සමන්විත වේ: DDxn, PORTxn, සහ PINxn. හි පෙන්වා ඇති පරිදි “රෙජිස්ටර් විස්තරය” සක්රීයයි 64 පිටුව, DDxn බිටු DDRx I / O ලිපිනයටද, PORTxn බිටු PORTx I / O ලිපිනයටද, PINxn බිටු PINx I / O ලිපිනයටද ප්රවේශ වේ.
DDRx ලේඛනයේ ඇති DDxn බිට් මෙම පින් එකෙහි දිශාව තෝරා ගනී. DDxn තාර්කික එකක් ලියා ඇත්නම්, Pxn ප්රතිදාන පින් ලෙස වින්යාස කර ඇත. DDxn තාර්කික ශුන්ය ලෙස ලියා ඇත්නම්, Pxn ආදාන පින් ලෙස වින්යාස කර ඇත.
පින් ආදාන පින් ලෙස වින්යාස කර ඇති විට PORTxn තාර්කික එකක් ලෙස ලියා ඇත්නම්, අදින්න ප්රතිරෝධකය සක්රීය වේ. අදින්න ප්රතිරෝධකය ක්රියා විරහිත කිරීම සඳහා, PORTxn තාර්කික ශුන්යය ලිවිය යුතුය, නැතහොත් පින් එක ප්රතිදාන පින් ලෙස වින්යාස කළ යුතුය. ඔරලෝසු ක්රියාත්මක නොවුනත්, යළි පිහිටුවීමේ තත්වය සක්රිය වූ විට වරාය අල්මාරි ත්රිත්ව ප්රකාශ කර ඇත.
පින් එක ප්රතිදාන පින් ලෙස වින්යාස කරන විට PORTxn තාර්කික එකක් ලියා තිබේ නම්, වරාය පින් එක ඉහළට (එකක්) ධාවනය වේ. පින් ප්රතිදාන පින් ලෙස වින්යාස කරන විට PORTxn තාර්කික ශුන්ය ලෙස ලියා තිබේ නම්, වරාය පින් අඩු (ශුන්ය) ලෙස ධාවනය වේ.
පින් ටොගල කිරීම
PINxn වෙත තාර්කික එකක් ලිවීම DDRxn හි අගය මත ස්වාධීනව PORTxn හි අගය ටොගල් කරයි. වරාය තුළ එක් බිට් ටොගල් කිරීමට එස්බීඅයි උපදෙස් භාවිතා කළ හැකි බව සලකන්න.
ආදානය සහ ප්රතිදානය අතර මාරුවීම
ත්රි-රාජ්ය ({DDxn, PORTxn} = 0b00) සහ ප්රතිදානය ඉහළ ({DDxn, PORTxn} = 0b11) අතර මාරු වන විට, අදින්න-අප් සක්රීය {DDxn, PORTxn} = 0b01) හෝ අඩු ප්රතිදානය සහිත අන්තර් මධ්යස්ථ තත්වයක් ({DDxn, PORTxn} = 0b10) සිදුවිය යුතුය. සාමාන්යයෙන්, ඉහළ සම්බාධක පරිසරයක් ශක්තිමත් ඉහළ ධාවකයක් සහ ඇදගෙන යාමක් අතර වෙනස නොදකින බැවින්, අදින්න-අප් සක්රීය තත්වය සම්පූර්ණයෙන්ම පිළිගත හැකිය. මෙය එසේ නොවේ නම්, MCUCR ලේඛනයේ ඇති PUD bit එක සියලුම ports වල සියලුම pull-ups අක්රිය කිරීමට සැකසිය හැක.
අදින්න සහ ප්රතිදානය අඩු වීම සමඟ ආදානය අතර මාරුවීම එකම ගැටළුව ජනනය කරයි. අතරමැදි පියවරක් ලෙස පරිශීලකයා ත්රි-රාජ්යය ({DDxn, PORTxn} = 0b00) හෝ ප්රතිදාන ඉහළ තත්වය ({DDxn, PORTxn} = 0b10) භාවිතා කළ යුතුය.
වගුව 10-1 පින් අගය සඳහා පාලන සං als ා සාරාංශ කරයි.
වගුව 10-1. වරාය පින් සැකසුම්
DDxn | PORTxn | PUD
(MCUCR හි) |
I/O | අදින්න-අප් | අදහස් දක්වන්න |
0 | 0 | X | ආදානය | නැත | ත්රි-රාජ්ය (Hi-Z) |
0 | 1 | 0 | ආදානය | ඔව් | දිග නම් Pxn ධාරාව ප්රභව කරයි. පහලට අදින්න. |
0 | 1 | 1 | ආදානය | නැත | ත්රි-රාජ්ය (Hi-Z) |
1 | 0 | X | ප්රතිදානය | නැත | නිමැවුම් අඩු (බේසම) |
1 | 1 | X | ප්රතිදානය | නැත | නිමැවුම් ඉහළ (ප්රභවය) |
පින් අගය කියවීම
දත්ත දිශානත බිට් DDxn සැකසීමෙන් ස්වාධීනව, වරාය පින් එක PINxn Register bit හරහා කියවිය හැකිය. හි පෙන්වා ඇති පරිදි රූපය 10-2, PINxn Register bit සහ ඊට පෙර ඇති අගුල සමමුහුර්තකරණයෙන් සමන්විත වේ. අභ්යන්තර ඔරලෝසුවේ මායිම අසල භෞතික පින් අගය වෙනස් කරන්නේ නම්, පාරදෘශ්යතාව වළක්වා ගැනීමට මෙය අවශ්ය වේ, නමුත් එය ප්රමාදයක් ද හඳුන්වා දෙයි. රූපය 10-3 බාහිරව යොදන ලද පින් අගයක් කියවන විට සමමුහුර්තකරණයේ කාල සටහනක් පෙන්වයි. උපරිම සහ අවම ප්රචාරණ ප්රමාදයන් පිළිවෙලින් tpd,max සහ tpd,min ලෙස දැක්වේ.
පද්ධති ඔරලෝසුවේ පළමු වැටීමෙන් ටික කලකට පසු ආරම්භ වන ඔරලෝසු කාලය සලකා බලන්න. “SYNC LATCH” සං .ාවේ සෙවනැලි කලාපය පෙන්නුම් කරන පරිදි ඔරලෝසුව අඩු වූ විට අගුල වසා ඇති අතර ඔරලෝසුව ඉහළ මට්ටමක පවතින විට විනිවිද යයි. පද්ධති ඔරලෝසුව අඩු වූ විට සං value ා අගය අගුළු දමා ඇත. එය ධනාත්මක ඔරලෝසු අද්දර PINxn ලේඛනයට ඇතුළත් කර ඇත. Tpd, max සහ tpd, min යන ඊතල දෙකෙන් දැක්වෙන පරිදි, ප්රකාශයේ වේලාව අනුව පින් එකෙහි තනි සං signal ා සංක්රාන්තිය ඔරලෝසු කාල සීමාව ½ සහ 1½ අතර ප්රමාද වේ.
මෘදුකාංග පවරා ඇති පින් අගය නැවත කියවීමේදී, දක්වා ඇති පරිදි නොප් උපදෙස් ඇතුළත් කළ යුතුය රූපය 10-4. පිටත උපදෙස් ඔරලෝසුවේ ධනාත්මක අද්දර “සින්ක් ලැච්” සං signal ාව සකසයි. මෙම අවස්ථාවෙහිදී, සමමුහුර්තකරණය හරහා tpd ප්රමාදය එක් පද්ධති ඔරලෝසු කාල පරිච්ඡේදයකි.
පහත දැක්වෙන කේතය example මඟින් port B pins 0 සහ 1 high, 2 සහ 3 low ලෙස සකසන ආකාරය පෙන්වා දෙන අතර, port pin 4 වෙත පවරා ඇති pull-up එකක් සමඟින් port pins 5 සිට 4 දක්වා ආදානය ලෙස අර්ථ දක්වන්න. කලින් සාකච්ඡා කළ පරිදි, සමහර පින් සඳහා මෑතකදී පවරා ඇති අගය නැවත කියවීමට හැකි වන පරිදි nop උපදෙස් ඇතුළත් වේ.
එකලස් කිරීමේ කේතය Example(1) |
…
; පුල්-අප් නිර්වචනය කර ඉහළ ප්රතිදානයන් සකසන්න ; Port pins සඳහා දිශාවන් නිර්වචනය කරන්න ldi r16,(1<<PB4)|(1<<PB1)|(1<<PB0) ldi r17,(1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0) PORTB,r16 වෙතින් DDRB,r17 පිටතට ; සමමුහුර්තකරණය සඳහා nop ඇතුල් කරන්න නැත ; වරාය කටු කියවන්න r16,PINB හි … |
සටහන: එකලස් කිරීමේ වැඩසටහන සඳහා, දිශා බිටු නිවැරදිව සකසන තෙක්, බිට් 0 සහ 1 අඩු ලෙස අර්ථ දැක්වීම සහ බිටු 4 නැවත අර්ථ දැක්වීම දක්වා, 2, 3 සහ 0 පින්ස් මත අදින්න-අප් සිට කාලය අවම කිරීම සඳහා තාවකාලික රෙජිස්ටර් දෙකක් භාවිතා කරයි. 1 ශක්තිමත් ඉහළ රියදුරන් ලෙස.
සී කේතය Example |
අත්සන් නොකළ char i;
… /* පුල්-අප් නිර්වචනය කර ඉහළ ප්රතිදානයන් සකසන්න */ /* port pins සඳහා දිශාවන් නිර්වචනය කරන්න */ PORTB = (1< DDRB = (1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0); /* සමමුහුර්තකරණය සඳහා nop ඇතුල් කරන්න*/ _නොප් (); /* වරාය කටු කියවන්න */ i = PINB; … |
ඩිජිටල් ආදානය සක්රිය සහ නිදි ප්රකාර
හි පෙන්වා ඇති පරිදි රූපය 10-2, ඩිජිටල් ආදාන සංඥා cl විය හැකampschmitt-trigger හි ආදානයේදී බිමට ed. රූපයේ දැක්වෙන SLEEP සංඥාව, සමහර ආදාන සංඥා පාවෙමින් තිබේ නම් හෝ VCC/2 ට ආසන්න ප්රතිසම සංඥා මට්ටමක් තිබේ නම්, අධි බල පරිභෝජනයෙන් වැළකීම සඳහා MCU Sleep Controller විසින් Power-down ආකාරයෙන් සකසා ඇත.
බාහිර බාධා පයින් ලෙස සක්රිය කර ඇති වරාය අල්මාරි සඳහා SLEEP අභිබවා ඇත. බාහිර බාධා ඉල්ලීම සක්රීය කර නොමැති නම්, මෙම අල්ෙපෙනති සඳහා SLEEP ද සක්රීය වේ. විස්තර කර ඇති පරිදි SLEEP වෙනත් විවිධ විකල්ප ක්රියාකාරකම් මගින් අභිබවා යයි 57 වන පිටුවේ “විකල්ප වරාය කාර්යයන්”.
බාහිර බාධාව සක්රීය කර නොමැති අතර “ඉහළ එන දාරය, වැටෙන දාරය, හෝ පින් මත කිසියම් තාර්කික වෙනසක්” ලෙස වින්යාස කර ඇති අසමමුහුර්ත බාහිර බාධා කිරීමේ පින් එකක තාර්කික ඉහළ මට්ටමක් (“එකක්”) තිබේ නම්, ඊට අනුරූප බාහිර බාධා ධජය ඉහත සඳහන් කළ Sleep මාදිලියෙන් නැවත ආරම්භ කරන විට, cl ලෙස සකසන්නampමෙම නිද්රා මාදිලිය තුළ සිටීම ඉල්ලන ලද තර්කනයේ වෙනසක් ඇති කරයි.
සම්බන්ධ නොවූ අල්ෙපෙනති
සමහර අල්ෙපෙනති භාවිතා නොකෙරේ නම්, මෙම අල්ෙපෙනතිවල නිශ්චිත මට්ටමක් ඇති බව සහතික කිරීම රෙකමදාරු කරනු ලැබේ. ඉහත විස්තර කර ඇති පරිදි ගැඹුරු නිදි ප්රකාරයේදී බොහෝ ඩිජිටල් යෙදවුම් අක්රීය කර ඇතත්, ඩිජිටල් යෙදවුම් සක්රීය කර ඇති අනෙකුත් සියලුම ක්රමවල වත්මන් පරිභෝජනය අඩු කිරීම සඳහා පාවෙන යෙදවුම් වළක්වා ගත යුතුය (යළි පිහිටුවීම, ක්රියාකාරී ප්රකාරය සහ නිෂ්ක්රීය ප්රකාරය).
භාවිතයට නොගත් පින් එකක නිශ්චිත මට්ටමක් සහතික කිරීම සඳහා සරලම ක්රමය වන්නේ අභ්යන්තර අදින්න සක්රීය කිරීමයි. මෙම අවස්ථාවෙහිදී, යළි පිහිටුවීමේදී අදින්න-අප් අක්රිය වනු ඇත. යළි පිහිටුවීමේදී අඩු බලශක්ති පරිභෝජනය වැදගත් නම්, බාහිර අදින්න හෝ පුල්ඩවුන් භාවිතා කිරීම රෙකමදාරු කරනු ලැබේ. භාවිතයට නොගත් කටු සෘජුවම VCC හෝ GND වෙත සම්බන්ධ කිරීම නිර්දේශ නොකරයි, මන්ද යත්, පින් එක අහම්බෙන් ප්රතිදානයක් ලෙස වින්යාස කර ඇත්නම් අධික ධාරා ඇති විය හැකි බැවිනි.
විකල්ප වරාය කාර්යයන්
සාමාන්ය ඩිජිටල් I / Os වීමට අමතරව බොහෝ වරාය අල්මාරිවල විකල්ප කාර්යයන් ඇත. රූපය 10-5 වරාය පින් පාලනය කරන සං from ා පාලනය කරන ආකාරය පෙන්වයි රූපය 10-2 විකල්ප ශ්රිත මගින් අභිබවා යා හැක. අතිච්ඡාදනය වන සං als ා සියලුම වරාය අල්මාරිවල නොතිබිය හැකි නමුත්, AVR මයික්රොකොන්ට්රෝලර් පවුලේ සියලුම වරාය අල්ෙපෙනති සඳහා අදාළ වන සාමාන්ය විස්තරයක් ලෙස රූපය සේවය කරයි.
වගුව 10-2. විකල්ප කාර්යයන් සඳහා අභිබවා යන සංඥා පිළිබඳ සාමාන්ය විස්තරය
සංඥා නම | සම්පූර්ණ නම | විස්තරය |
PUOE | අදින්න පෙරළීම සක්රීය කරන්න | මෙම සං signal ාව සකසා ඇත්නම්, අදින්න සක්රීය කිරීම PUOV සං .ාව මගින් පාලනය වේ. මෙම සං signal ාව නිෂ්කාශනය කර ඇත්නම්, ඇදගෙන යාම සක්රීය වේ
{DDxn, PORTxn, PUD} = 0b010. |
PUOV | අදින්න අගය ඉක්මවා යන්න | PUOE සකසා ඇත්නම්, DDxn, PORTxn, සහ PUD රෙජිස්ටර් බිටු සැකසීම නොසලකා PUOV සැකසූ විට / ඉවත් කළ විට අදින්න සක්රීය කර ඇත. |
DDOE | දත්ත දිශාව අභිබවා යාම සක්රීය කරන්න | මෙම සං signal ාව සකසා ඇත්නම්, ප්රතිදාන ධාවක සක්රීය කිරීම DDOV සං .ාව මගින් පාලනය වේ. මෙම සං signal ාව හිස් කර ඇත්නම්, ප්රතිදාන ධාවකය DDxn රෙජිස්ටර් බිට් මඟින් සක්රීය කර ඇත. |
DDOV | දත්ත දිශාව අගය ඉක්මවා යයි | DDOE සකසා ඇත්නම්, DDxn රෙජිස්ටර් බිට් සැකසුම නොසලකා DDOV සකසා ඇති විට / නිෂ්කාශනය කරන විට ප්රතිදාන ධාවක සක්රීය / අක්රීය කර ඇත. |
PVOE | වරාය අගය අභිබවා යාම සක්රීය කරන්න | මෙම සං signal ාව සකසා නිමැවුම් ධාවකය සක්රීය කර ඇත්නම්, වරායේ අගය PVOV සං .ාව මගින් පාලනය වේ. PVOE නිෂ්කාශනය කර ප්රතිදාන ධාවකය සක්රීය කර ඇත්නම්, වරායේ අගය PORTxn රෙජිස්ටර් බිට් මඟින් පාලනය වේ. |
PVOV | වරාය අගය අභිබවා යන අගය | PVOE සකසා ඇත්නම්, PORTxn රෙජිස්ටර් බිට් සැකසීම නොසලකා වරායේ අගය PVOV ලෙස සකසා ඇත. |
පීටීඕඊ | වරාය ටොගල් අභිබවා යාම සක්රීය කරන්න | PTOE සකසා ඇත්නම්, PORTxn Register bit ප්රතිලෝමව පවතී. |
DIEOE | ඩිජිටල් ආදානය සක්රීය කරන්න සක්රීය කරන්න | මෙම බිට් එක සකසා ඇත්නම්, ඩිජිටල් ආදාන සක්රීය කිරීම DIEOV සං .ාව මගින් පාලනය වේ. මෙම සං signal ාව නිෂ්කාශනය කර ඇත්නම්, ඩිජිටල් ආදාන සක්රීය කිරීම MCU තත්වය අනුව තීරණය වේ (සාමාන්ය ප්රකාරය, නින්ද ප්රකාරය). |
DIEOV | ඩිජිටල් ආදානය අතිච්ඡාදනය අගය සක්රීය කරන්න | DIEOE සකසා ඇත්නම්, MCU තත්වය (සාමාන්ය මාදිලිය, නින්ද ප්රකාරය) නොසලකා DIEOV සැකසූ විට / ඉවත් කළ විට ඩිජිටල් ආදානය සක්රීය / අක්රීය කර ඇත. |
DI | ඩිජිටල් ආදානය | විකල්ප කාර්යයන් සඳහා ඩිජිටල් ආදානය මෙයයි. රූපයේ දැක්වෙන පරිදි, සං ch ාව ෂ්මිට්-ප්රේරකයේ ප්රතිදානයට සම්බන්ධ නමුත් සමමුහුර්තකරණයට පෙර. ඩිජිටල් ආදානය ඔරලෝසු ප්රභවයක් ලෙස භාවිතා නොකරන්නේ නම්, විකල්ප ශ්රිතය සහිත මොඩියුලය එහි සමමුහුර්තකරණය භාවිතා කරයි. |
AIO | ඇනලොග් ආදානය / ප්රතිදානය | විකල්ප කාර්යයන් සඳහා / සිට ඇනලොග් ආදානය / ප්රතිදානය මෙයයි. සං signal ාව කෙලින්ම පෑඩයට සම්බන්ධ කර ඇති අතර එය ද්වි-දිශානුගතව භාවිතා කළ හැකිය. |
පහත දැක්වෙන අනුකොටස් එක් එක් වරාය සඳහා වන විකල්ප ශ්රිතයන් කෙටියෙන් විස්තර කරන අතර අතිච්ඡාදනය වන සං als ා විකල්ප ශ්රිතයට සම්බන්ධ කරයි. වැඩි විස්තර සඳහා විකල්ප ක්රියාකාරී විස්තරය වෙත යොමු වන්න.
වරායේ විකල්ප කාර්යයන් B
විකල්ප ශ්රිතයක් සහිත වරාය බී අල්ෙපෙනති දක්වා ඇත වගුව 10-3.
වගුව 10-3. Port B Pins විකල්ප කාර්යයන්
වරාය පින් | විකල්ප කාර්යය |
PB5 | ![]() නැවත සකසන්න: පින් නැවත සකසන්න dW: debugWIRE I / O ADC0: ADC ආදාන නාලිකාව 0 PCINT5: පින් වෙනස් කිරීමේ බාධා, මූලාශ්රය 5 |
PB4 | XTAL2: ක්රිස්ටල් ඔස්කිලේටර් ප්රතිදානය CLKO: පද්ධති ඔරලෝසු ප්රතිදානය ADC2: ADC ආදාන නාලිකාව 2
OC1B: ටයිමර් / කවුන්ටරය 1 තරඟ B ප්රතිදානය සංසන්දනය කරන්න PCINT4: පින් වෙනස් කිරීමේ බාධා 0, මූලාශ්රය 4 |
PB3 | XTAL1: Crystal Oscillator ආදානය CLKI: බාහිර ඔරලෝසු ආදානය ADC3: ADC ආදාන නාලිකාව 3
OC1B: අනුපූරක ටයිමර් / කවුන්ටරය 1 තරඟය B ප්රතිදානය සංසන්දනය කරන්න PCINT3: පින් වෙනස් කිරීමේ බාධා 0, ප්රභවය 3 |
PB2 | SCK: අනුක්රමික ඔරලෝසු ආදානය ADC1: ADC ආදාන නාලිකාව 1
T0: ටයිමර් / කවුන්ටරය 0 ඔරලෝසු ප්රභවය USCK: යූඑස්අයි ඔරලෝසුව (වයර් ප්රකාර තුනක්) එස්සීඑල්: යූඑස්අයි ඔරලෝසුව (වයර් ප්රකාර දෙක) INT0: බාහිර බාධා 0 ආදානය |
PB1 | MISO: SPI මාස්ටර් දත්ත ආදානය / වහල් දත්ත ප්රතිදානය AIN1: ඇනලොග් සංසන්දකය, සෘණ ආදානය OC0B: ටයිමර් / කවුන්ටරය සංසන්දනය කරන්න B ප්රතිදානය OC0A: ටයිමර් / කවුන්ටරය 1 සංසන්දනය කරන්න ප්රතිදානය කරන්න DO: USI දත්ත ප්රතිදානය (වයර් ප්රකාර තුන) PCINT1: පින් වෙනස් කිරීමේ බාධාව 1, මුලාශ්රය 0 |
PB0 | MOSI :: SPI මාස්ටර් දත්ත ප්රතිදානය / වහල් දත්ත ආදානය AIN0: ඇනලොග් සංසන්දකය, ධනාත්මක ආදානය
OC0A: Timer/Counter0 සසඳන්න Match A ප්රතිදානය OC1A: අනුපූරක ටයිමර් / කවුන්ටරය 1 සංසන්දනය කරන්න ප්රතිදානය DI: USI දත්ත ආදානය (වයර් ප්රකාර තුනක්) SDA: USI දත්ත ආදානය (වයර් ප්රකාර දෙකක්) AREF: බාහිර ඇනලොග් යොමුව PCINT0: පින් වෙනස් කිරීමේ බාධා 0, මූලාශ්ර 0 |
වරාය බී, බිට් 5 - රීසෙට් / ඩීඩබ්ලිව් / ඒඩීසී 0 / පීසීඅයිටී 5
නැවත සැකසීම: බාහිර යළි පිහිටුවීමේ ආදානය අඩු මට්ටමක පවතින අතර වැඩසටහන්ගත නොකිරීමෙන් (“1”) RSTDISBL ෆියුස් සක්රීය කර ඇත. Pullup සක්රිය කර ඇති අතර RESET pin ලෙස පින් භාවිතා කරන විට ප්රතිදාන ධාවක සහ ඩිජිටල් ආදානය අක්රිය කරනු ලැබේ.
dW: debugWIRE Enable (DWEN) ෆියුස් ක්රමලේඛනය කර අගුළු බිටු ක්රමලේඛනය කර නොමැති විට, ඉලක්කගත උපාංගය තුළ ඇති නිදොස් කිරීමේ පද්ධතිය සක්රීය වේ. රීසෙට් පෝට් පින් එක වයර්-ඇන්ඩ් (විවෘත කාණු) ද්වි-දිශානුගත අයි / ඕ පින් ලෙස අදින්න සක්රීය කර ඇති අතර ඉලක්කය සහ ඉමුලේටරය අතර සන්නිවේදන දොරටුව බවට පත්වේ.
ADC0: ඇනලොග් සිට ඩිජිටල් පරිවර්තකය, චැනල් 0.
PCINT5: පින් වෙනස් කිරීමේ බාධා ප්රභවය 5.
වරාය B, බිට් 4 - XTAL2 / CLKO / ADC2 / OC1B / PCINT4
XTAL2: චිප් ඔරලෝසු ඔස්කිලේටර් පින් 2. අභ්යන්තර ක්රමාංකනය කළ හැකි ආර්සී ඔස්කිලේටර් සහ බාහිර ඔරලෝසුව හැර අනෙකුත් සියලුම චිප් ඔරලෝසු ප්රභවයන් සඳහා ඔරලෝසු පින් ලෙස භාවිතා කරයි. ඔරලෝසු පින් ලෙස භාවිතා කරන විට, පින් එක I / O පින් ලෙස භාවිතා කළ නොහැක. චිප් ඔරලෝසු ප්රභවයක් ලෙස අභ්යන්තර ක්රමාංකනය කළ හැකි ආර්සී ඔස්කිලේටර් හෝ බාහිර ඔරලෝසුව භාවිතා කරන විට, පීබී 4 සාමාන්ය අයි / ඕ පින් ලෙස සේවය කරයි.
CLKO: වෙන් කළ පද්ධති ඔරලෝසුව PB4 පින් එකෙහි ප්රතිදානය විය හැකිය. PORTB4 සහ DDB4 සැකසුම් නොසලකා CKOUT ෆියුස් ක්රමලේඛනය කර ඇත්නම් බෙදුණු පද්ධති ඔරලෝසුව ප්රතිදානය වනු ඇත. එය නැවත සැකසීමේදී ප්රතිදානය වනු ඇත.
ADC2: ඇනලොග් සිට ඩිජිටල් පරිවර්තකය, චැනල් 2.
OC1B: ප්රතිදානය සංසන්දනය කිරීමේ ප්රතිදානය: ප්රතිදානය (DDB4 කට්ටලය) ලෙස වින්යාස කර ඇති විට PB1 පින් ටයිමර් / කවුන්ටරය 4 සංසන්දනය කිරීම සඳහා බාහිර ප්රතිදානයක් ලෙස සේවය කළ හැකිය. OC1B pin යනු PWM මාදිලියේ ටයිමර් ශ්රිතය සඳහා වන ප්රතිදාන පින් වේ.
PCINT4: පින් වෙනස් කිරීමේ බාධා ප්රභවය 4.
වරාය බී, බිට් 3 - XTAL1 / CLKI / ADC3 / OC1B / PCINT3
XTAL1: චිප් ඔරලෝසු ඔස්කිලේටර් පින් 1. අභ්යන්තර ක්රමාංකනය කළ හැකි ආර්සී දෝලනය හැර අනෙකුත් සියලුම චිප් ඔරලෝසු ප්රභව සඳහා භාවිතා වේ. ඔරලෝසු පින් ලෙස භාවිතා කරන විට, පින් එක I / O පින් ලෙස භාවිතා කළ නොහැක.
CLKI: බාහිර ඔරලෝසු ප්රභවයකින් ඔරලෝසු ආදානය, බලන්න 26 වන පිටුවේ “බාහිර ඔරලෝසුව”.
ADC3: ඇනලොග් සිට ඩිජිටල් පරිවර්තකය, චැනල් 3.
OC1B: ප්රතිලෝම ප්රතිදානය තරඟ ප්රතිදානය සංසන්දනය කරන්න: ප්රතිදානය (ඩීඩීබී 3 කට්ටලය) ලෙස වින්යාසගත කරන විට පීබී 1 පින් ටයිමර් / කවුන්ටරය 3 සංසන්දනාත්මක ගැලපුම් බී සඳහා බාහිර ප්රතිදානයක් ලෙස සේවය කළ හැකිය. OC1B පින් යනු PWM මාදිලියේ ටයිමර් ශ්රිතය සඳහා ප්රතිලෝම ප්රතිදාන පින් වේ.
PCINT3: පින් වෙනස් කිරීමේ බාධා ප්රභවය 3.
වරාය බී, බිට් 2 - SCK / ADC1 / T0 / USCK / SCL / INT0 / PCINT2
SCK: මාස්ටර් ඔරලෝසු ප්රතිදානය, SPI නාලිකාව සඳහා වහල් ඔරලෝසු ආදාන පින්. එස්පීඅයි වහලෙකු ලෙස සක්රිය කර ඇති විට, ඩීඩීබී 2 සැකසුම නොසලකා මෙම පින් එක ආදානය ලෙස සකසා ඇත. එස්පීඅයි මාස්ටර් ලෙස සක්රීය කළ විට, මෙම පින් එකෙහි දත්ත දිශාව ඩීඩීපීබී 2 මගින් පාලනය වේ. එස්පීඅයි විසින් ආදානය කිරීමට පින් බල කරන විට, අදින්න තවමත් PORTB2 බිට් මගින් පාලනය කළ හැකිය.
ADC1: ඇනලොග් සිට ඩිජිටල් පරිවර්තකය, චැනල් 1.
T0: ටයිමර් / කවුන්ටරය 0 කවුන්ටරය.
USCK: ත්රී-වයර් මාදිලිය විශ්ව අනුක්රමික අතුරුමුහුණත.
SCL: ද්වි-වයර් මාදිලිය USI ද්වි-වයර් මාදිලිය සඳහා අනුක්රමික ඔරලෝසුව.
INT0: බාහිර බාධා ප්රභවය 0.
PCINT2: පින් වෙනස් කිරීමේ බාධා ප්රභවය 2.
වරාය බී, බිට් 1 - MISO / AIN1 / OC0B / OC1A / DO / PCINT1
MISO: මාස්ටර් දත්ත ආදානය, SPI නාලිකාව සඳහා වහල් දත්ත ප්රතිදාන පින්. එස්පීඅයි මාස්ටර් ලෙස සක්රිය කර ඇති විට, ඩීඩීබී 1 සැකසුම නොසලකා මෙම පින් එක ආදානය ලෙස සකසා ඇත. එස්පීඅයි වහලෙකු ලෙස සක්රිය කර ඇති විට, මෙම පින් එකෙහි දත්ත දිශාව ඩීඩීබී 1 මගින් පාලනය වේ. එස්පීඅයි විසින් ආදානය කිරීමට පින් බල කරන විට, අදින්න තවමත් PORTB1 බිට් මගින් පාලනය කළ හැකිය.
AIN1: ඇනලොග් සංසන්දක සෘණ ආදානය. ඩිජිටල් වරාය ක්රියාකාරිත්වය ඇනලොග් සංසන්දකයාගේ ක්රියාකාරිත්වයට බාධා නොකිරීම සඳහා අභ්යන්තර අදින්න ස්විචය සමඟ ආදාන පින් ලෙස වින්යාස කරන්න.
OC0B: ප්රතිදානය සංසන්දනය කරන්න ප්රතිදානය. PB1 පින් එක ටයිමර් / කවුන්ටරය 0 සංසන්දනාත්මක තරගය සඳහා බාහිර නිමැවුමක් ලෙස සේවය කළ හැකිය. මෙම ශ්රිතය සඳහා PB1 පින් ප්රතිදානය (DDB1 කට්ටලය (එකක්)) ලෙස වින්යාසගත කළ යුතුය. OC0B පින් යනු PWM මාදිලියේ ටයිමර් ශ්රිතය සඳහා වන ප්රතිදාන පින් ය.
OC1A: ප්රතිදානය සංසන්දනය කිරීමේ ප්රතිදානය: ප්රතිදානය (DDB1 කට්ටලය) ලෙස වින්යාස කරන විට PB1 පින් ටයිමර් / කවුන්ටරය 1 සංසන්දනය කිරීම සඳහා බාහිර ප්රතිදානයක් ලෙස සේවය කළ හැකිය. OC1A pin යනු PWM මාදිලියේ ටයිමර් ශ්රිතය සඳහා වන ප්රතිදාන පින් වේ.
DO: ත්රි-වයර් මාදිලිය විශ්ව අනුක්රමික අතුරුමුහුණත් දත්ත ප්රතිදානය. ත්රි-වයර් මාදිලිය දත්ත ප්රතිදානය PORTB1 අගය ඉක්මවා යන අතර දත්ත දිශානත බිට් DDB1 සකසා ඇති විට එය වරායට ගෙන යනු ලැබේ (එකක්). දිශාව ආදානය කර PORTB1 සකසා ඇත්නම් (එකක්) PORTB1 තවමත් අදින්න සක්රීය කරයි.
PCINT1: පින් වෙනස් කිරීමේ බාධා ප්රභවය 1.
වරාය B, Bit 0 - MOSI / AIN0 / OC0A / OC1A / DI / SDA / AREF / PCINT0
MOSI: SPI මාස්ටර් දත්ත ප්රතිදානය, SPI නාලිකාව සඳහා වහල් දත්ත ආදානය. SPI වහලෙකු ලෙස සක්රිය කර ඇති විට, DDB0 සැකසුම නොසලකා මෙම පින් එක ආදානය ලෙස සකසා ඇත. SPI මාස්ටර් ලෙස සක්රිය කළ විට, මෙම පින් එකෙහි දත්ත දිශාව DDB0 මගින් පාලනය වේ. එස්පීඅයි විසින් ආදානය කිරීමට පින් බල කරන විට, අදින්න තවමත් PORTB0 බිට් මගින් පාලනය කළ හැකිය.
AIN0: ඇනලොග් සංසන්දකය ධනාත්මක ආදානය. ඩිජිටල් වරාය ක්රියාකාරිත්වය ඇනලොග් සංසන්දකයාගේ ක්රියාකාරිත්වයට බාධා නොකිරීමට අභ්යන්තර අදින්න ස්විචය සමඟ ආදාන පින් ලෙස වින්යාස කරන්න.
OC0A: නිමැවුම් සංසන්දනය ගැලපුම් ප්රතිදානය. ප්රතිදානය (DDB0 කට්ටලය (එකක්)) ලෙස වින්යාස කරන විට PB0 පින් එකට ටයිමර් / කවුන්ටරය 0 සංසන්දනය කරන්න තරඟය සඳහා බාහිර ප්රතිදානයක් ලෙස සේවය කළ හැකිය. OC0A pin යනු PWM මාදිලියේ ටයිමර් ශ්රිතය සඳහා වන ප්රතිදාන පින් වේ.
OC1A: ප්රතිලෝම ප්රතිදානය සංසන්දනය කිරීමේ ප්රතිදානය: ප්රතිදානය (DDB0 කට්ටලය) ලෙස වින්යාස කර ඇති විට PB1 පින් ටයිමර් / කවුන්ටරය 0 සංසන්දනය කිරීම සඳහා බාහිර ප්රතිදානයක් ලෙස සේවය කළ හැකිය. OC1A pin යනු PWM මාදිලියේ ටයිමර් ශ්රිතය සඳහා ප්රතිලෝම ප්රතිදාන පින් වේ.
SDA: ද්වි-වයර් මාදිලිය අනුක්රමික අතුරුමුහුණත් දත්ත.
අරීෆ්: ඒඩීසී සඳහා බාහිර ප්රතිසම සඳහන. පයින් බාහිර යොමු කිරීමක් ලෙස භාවිතා කරන විට හෝ අභ්යන්තර වෙළුම් භාවිතා කරන විට පීබී 0 හි පුල්අප් සහ ප්රතිදාන ධාවක අක්රීය කෙරේtagඊ අරෙෆ් පින් එකේ බාහිර ධාරිත්රකය සමඟ යොමු කිරීම.
DI: USI ත්රී වයර් මාදිලියේ දත්ත ආදානය. USI ත්රී-වයර් මාදිලිය සාමාන්ය වරාය කාර්යයන් අභිබවා නොයයි, එබැවින් DI ක්රියා කිරීම සඳහා ආදානය ලෙස පින් වින්යාස කළ යුතුය.
PCINT0: පින් වෙනස් කිරීමේ බාධා ප්රභවය 0.
වගුව 10-4 සහ වගුව 10-5 වරාය බී හි විකල්ප කාර්යයන් පෙන්වා ඇති අතිච්ඡාදන සං als ා සමඟ සම්බන්ධ කරන්න රූපය 10-5 මත 58 පිටුව.
වගුව 10-4. PB හි විකල්ප ක්රියාකාරකම් සඳහා අභිබවා යන සංඥා[5:3]
සංඥා නම | PB5 / RESET / ADC0 / PCINT5 | PB4/ADC2/XTAL2/ OC1B/PCINT4 | PB3/ADC3/XTAL1/ OC1B/PCINT3 |
PUOE | ![]() |
0 | 0 |
PUOV | 1 | 0 | 0 |
DDOE | RSTDISBL(1) W ඩ්වෙන්(1) | 0 | 0 |
DDOV | debugWire සම්ප්රේෂණය | 0 | 0 |
PVOE | 0 | OC1B සක්රීය කරන්න | ![]() OC1B සක්රීය කරන්න |
PVOV | 0 | OC1B | OC1B |
පීටීඕඊ | 0 | 0 | 0 |
DIEOE | ![]() RSTDISBL(1) + (PCINT5 • PCIE + ADC0D) |
PCINT4 • PCIE + ADC2D | PCINT3 • PCIE + ADC3D |
DIEOV | ADC0D | ADC2D | ADC3D |
DI | PCINT5 ආදානය | PCINT4 ආදානය | PCINT3 ආදානය |
AIO | RESET ආදානය, ADC0 ආදානය | ADC2 ආදානය | ADC3 ආදානය |
සටහන: ෆියුස් "0" (වැඩසටහන්ගත කර ඇති) විට.
වගුව 10-5. PB හි විකල්ප ක්රියාකාරකම් සඳහා අභිබවා යන සංඥා[2:0]
සංඥා නම | 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 + OC1A සක්රීය කරන්න + USI_THREE_WIRE | ![]() OC0A සක්රීය කරන්න + OC1A සක්රීය කරන්න + (USI_TWO_WIRE DDB0) |
PVOV | 0 | OC0B + OC1A + කරන්න | ![]() OC0A + OC1A |
පීටීඕඊ | USITC | 0 | 0 |
DIEOE | PCINT2 • PCIE + ADC1D + USISIE | PCINT1 • PCIE + AIN1D | PCINT0 • PCIE + AIN0D + USISIE |
DIEOV | ADC1D | AIN1D | AIN0D |
DI | T0 / USCK / SCL / INT0 /
PCINT2 ආදානය |
PCINT1 ආදානය | DI / SDA / PCINT0 ආදානය |
AIO | ADC1 ආදානය | ඇනලොග් සංසන්දක සෘණ ආදානය | ඇනලොග් සංසන්දකය ධනාත්මක ආදානය |
විස්තරය ලියාපදිංචි කරන්න
MCUCR - MCU පාලන ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | BODS | PUD | SE | SM1 | SM0 | බොඩ්ස් | ISC01 | ISC00 | MCUCR |
කියවන්න/ලියන්න | R | R/W | R/W | R/W | R/W | R | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
බිට් 6 - PUD: අදින්න අක්රීය කරන්න
මෙම බිට් එකකට ලියන විට, අදින්නන් සක්රීය කිරීම සඳහා DDxn සහ PORTxn රෙජිස්ටර් වින්යාස කර තිබුණද I / O වරායන්හි අදින්නන් අක්රීය වේ ({DDxn, PORTxn} = 0b01). බලන්න 54 වන පිටුවේ “පින් වින්යාස කිරීම” මෙම අංගය පිළිබඳ වැඩි විස්තර සඳහා.
PORTB - වරාය බී දත්ත ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x18 | – | – | PORTB5 | PORTB4 | PORTB3 | PORTB2 | PORTB1 | PORTB0 | වරාය |
කියවන්න/ලියන්න | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
ඩීඩීආර්බී - පෝට් බී දත්ත දිශානති ලේඛනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x17 | – | – | DDB5 | DDB4 | DDB3 | DDB2 | DDB1 | DDB0 | DDRB |
කියවන්න/ලියන්න | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
PINB - වරාය බී ආදාන පින් ලිපිනය
ටිකක් | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x16 | – | – | PINB5 | PINB4 | PINB3 | PINB2 | PINB1 | PINB0 | පින් |
කියවන්න/ලියන්න | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
ආරම්භක අගය | 0 | 0 | N/A | N/A | N/A | N/A | N/A | N/A |
PWM සමඟ 8-බිට් ටයිමර් / කවුන්ටරය 0
විශේෂාංග
ස්වාධීන නිමැවුම් දෙකක් ඒකක සංසන්දනය කරන්න
ද්විත්ව ස්වාරක්ෂක ප්රතිදානය ලේඛකයන් සංසන්දනය කරන්න
සංසන්දනය කිරීම සඳහා ටයිමරය හිස් කරන්න (ස්වයංක්රීයව රීලෝඩ් කරන්න)
ග්ලීච් ෆ්රී, අදියර නිවැරදි ස්පන්දන පළල මොඩියුලේටරය (පීඩබ්ලිව්එම්)
විචල්ය PWM කාල සීමාව
සංඛ්යාත උත්පාදක යන්ත්රය
ස්වාධීන බාධා කිරීම් ප්රභව තුනක් (TOV0, OCF0A, සහ OCF0B)
ඉවරයිview
ටයිමර් / කවුන්ටර් 0 යනු පොදු අරමුණු 8-බිට් ටයිමර් / කවුන්ටර මොඩියුලයකි, ස්වාධීන නිමැවුම් සංසන්දනාත්මක ඒකක දෙකක් සහ පීඩබ්ලිව්එම් සහාය ඇතිව. එය නිවැරදි වැඩසටහන් ක්රියාත්මක කිරීමේ වේලාව (සිදුවීම් කළමනාකරණය) සහ තරංග උත්පාදනය සඳහා ඉඩ ලබා දේ.
බිටු 8 ටයිමර් / කවුන්ටරයේ සරල කළ බ්ලොක් රූප සටහනක් මෙහි දක්වා ඇත රූපය 11-1. I / O අල්ෙපෙනති සත්ය ස්ථානගත කිරීම සඳහා, බලන්න 25 වන පිටුවේ “Pinout ATtiny45 / 85/2”. CPU වෙත ප්රවේශ විය හැකි I / O බිටු සහ I / O අල්ෙපෙනති ඇතුළුව තද අකුරින් දක්වා ඇත. උපාංග-විශේෂිත I / O ලේඛනය සහ බිට් ස්ථාන ලැයිස්තුගත කර ඇත 77 වන පිටුවේ “විස්තරය ලියාපදිංචි කරන්න”.
Timer/Counter (TCNT0) සහ Output Compare Registers (OCR0A සහ OCR0B) බිටු 8 රෙජිස්ටර් වේ. බාධා කිරීමේ ඉල්ලීම (රූපයේ Int.Req ලෙස කෙටි කර ඇත) සංඥා සියල්ල ටයිමර් බාධාකාරී කොඩි ලේඛනයේ (TIFR) දෘශ්යමාන වේ. සියලුම බාධා කිරීම් තනි තනිව Timer Interrupt Mask Register (TIMSK) සමඟ ආවරණය කර ඇත. TIFR සහ TIMSK රූපයේ දක්වා නැත.
ටයිමරය/කවුන්ටරය අභ්යන්තරව, ප්රෙස්කේලර් හරහා හෝ T0 පින් මත බාහිර ඔරලෝසු ප්රභවයක් මඟින් ඔරලෝසු කළ හැක. Clock Select logic block මඟින් එහි අගය වැඩි කිරීමට (හෝ අඩු කිරීමට) ටයිමරය/කවුන්ටරය භාවිතා කරන ඔරලෝසු මූලාශ්රය සහ දාරය පාලනය කරයි. ඔරලෝසු මූලාශ්රයක් තෝරා නොමැති විට ටයිමරය/කවුන්ටරය අක්රිය වේ. Clock Select තර්කයෙන් ලැබෙන ප්රතිදානය ටයිමර් ඔරලෝසුව (clkT0) ලෙස හැඳින්වේ.
ද්විත්ව ස්වාරක්ෂක ප්රතිදාන සංසන්දනාත්මක ලේඛණ (OCR0A සහ OCR0B) සෑම විටම ටයිමර් / කවුන්ටරයේ අගය සමඟ සැසඳේ. සංසන්දනයේ ප්රති result ලය වේව්ෆෝම් උත්පාදක යන්ත්රයට ප්රතිදාන සංසන්දනාත්මක අල්ෙපෙනති (OC0A සහ OC0B) මත පීඩබ්ලිව්එම් හෝ විචල්ය නිදහස් සංඛ්යාත ප්රතිදානයක් ජනනය කිරීමට භාවිතා කළ හැකිය. 69 වන පිටුවේ “ප්රතිදාන සංසන්දනාත්මක ඒකකය” බලන්න. විස්තර සඳහා. සංසන්දනය කිරීමේ තරඟය මඟින් ප්රතිදාන සංසන්දනය බාධා ඉල්ලීමක් ජනනය කිරීම සඳහා භාවිතා කළ හැකි සංසන්දනාත්මක ධජය (OCF0A හෝ OCF0B) ද සකසනු ඇත.
අර්ථ දැක්වීම්
මෙම කොටසේ බොහෝ රෙජිස්ටර් සහ බිට් යොමු කිරීම් සාමාන්ය ස්වරූපයෙන් ලියා ඇත. කුඩා අකුරක් “n” ටයිමර් / කවුන්ටර අංකය ප්රතිස්ථාපනය කරයි, මේ අවස්ථාවේ දී 0. කුඩා අකුරක් “x” ප්රතිදාන සංසන්දනාත්මක ඒකකය ප්රතිස්ථාපනය කරයි, මේ අවස්ථාවේ දී ඒකකය සංසන්දනය කරන්න හෝ ඒකකය සංසන්දනය කරන්න. කෙසේ වෙතත්, ලේඛනය භාවිතා කරන විට හෝ බිට් අර්ථ දක්වයි වැඩසටහනක දී, ටයිමර් / කවුන්ටර් 0 කවුන්ටර අගයට ප්රවේශ වීම සඳහා නිවැරදි පෝරමය භාවිතා කළ යුතුය, එනම් TCNT0 යනාදිය.
හි අර්ථ දැක්වීම් වගුව 11-1 ලේඛනය පුරාම පුළුල් ලෙස භාවිතා වේ.
වගුව 11-1. අර්ථ දැක්වීම්
ස්ථාවර | විස්තරය |
පහළ | 0x00 බවට පත්වන විට කවුන්ටරය BOTTOM වෙත ළඟා වේ |
උපරිම | කවුන්ටරය 0xFF (දශම 255) බවට පත්වන විට එහි උපරිමයට ළඟා වේ. |
ඉහළ | ගණන් කිරීමේ අනුපිළිවෙලෙහි ඉහළම අගයට සමාන වන විට කවුන්ටරය TOP වෙත ළඟා වේ. TOP අගය 0xFF (MAX) ස්ථාවර අගය හෝ OCR0A ලේඛනයේ ගබඩා කර ඇති අගය ලෙස පැවරිය හැකිය. පැවරුම මෙහෙයුම් ආකාරය මත රඳා පවතී |
ටයිමර් / කවුන්ටර් ප්රෙස්කලර් සහ ඔරලෝසු ප්රභවයන්
ටයිමර් / කවුන්ටරය අභ්යන්තර හෝ බාහිර ඔරලෝසු ප්රභවයකින් ඔරලෝසුවක් ලබා ගත හැකිය. ඔරලෝසු ප්රභවය තෝරාගනු ලබන්නේ ඔරලෝසු තේරීමේ තර්කනයෙනි, එය ටයිමර් / කවුන්ටරය 0 පාලන ලේඛනයේ (ටීසීසීආර් 0 බී) පිහිටා ඇති ඔරලෝසු තේරීම (ඇ) බිටු මගින් පාලනය වේ.
Prescaler සමඟ අභ්යන්තර ඔරලෝසු ප්රභවය
Timer/Counter0 පද්ධති ඔරලෝසුව මඟින් සෘජුවම ඔරලෝසු කළ හැක (CS0[2:0] = 1 සැකසීමෙන්). පද්ධතියේ ඔරලෝසු සංඛ්යාතයට (fCLK_I/O) සමාන උපරිම ටයිමරය/කවුන්ටර ඔරලෝසු සංඛ්යාතයක් සමඟින් මෙය වේගවත්ම ක්රියාකාරිත්වය සපයයි. විකල්පයක් ලෙස, පූර්ව පරිමාණයෙන් ටැප් හතරෙන් එකක් ඔරලෝසු ප්රභවයක් ලෙස භාවිතා කළ හැක. පූර්ව පරිමාණ ඔරලෝසුවෙහි සංඛ්යාතය එකක් තිබේ
පෙර පාසල් නැවත පිහිටුවීම
ප්රෙස්කාලරය නොමිලේ ක්රියාත්මක වන අතර, එය ටයිමර්/කවුන්ටර 0 හි ඔරලෝසුව තෝරා ගැනීමේ තර්කනයෙන් ස්වාධීනව ක්රියාත්මක වේ. ටයිමර්/කවුන්ටරයේ ඔරලෝසුව තෝරා ගැනීමෙන් පෙරකාලිකයාට බලපෑමක් සිදු නොවන හෙයින්, කල් තබා ඇති ඔරලෝසුවක් භාවිතා කරන තත්ත්වයන් සඳහා පූර්ව කාලීන තත්ත්වය බලපානු ඇත. එක් හිටපුampපූර්ව කාලීන කෞතුක වස්තුවක් නම්, ටයිමරය/කවුන්ටරය පෙරකාලකය මඟින් සක්රීය කර ඔරලෝසුවේ තැබීමයි (6> සීඑස් 0 [2: 0]> 1). ටයිමරය සක්රිය කළ විට සිට පළමු ගණන් කිරීම දක්වා වූ පද්ධති ඔරලෝසු චක්ර ගණන 1 සිට N+1 දක්වා වූ පද්ධති ඔරලෝසු චක්ර දක්වා විය හැකි අතර, එන් යනු පූර්ව පරිමාණ බෙදුම්කරුට සමාන වේ (8, 64, 256, හෝ 1024).
ක්රමලේඛ ක්රියාත්මක කිරීම සඳහා ටයිමර් / කවුන්ටරය සමමුහුර්ත කිරීම සඳහා ප්රෙස්කලර් යළි පිහිටුවීම භාවිතා කළ හැකිය.
බාහිර ඔරලෝසු ප්රභවය
T0 පින් එකට යොදන බාහිර ඔරලෝසු ප්රභවයක් ටයිමරය/කවුන්ටර ඔරලෝසුව (clkT0) ලෙස භාවිතා කළ හැක. T0 පින් එක sampපින් සමමුහුර්ත කිරීමේ තර්කනය මඟින් සෑම පද්ධති ඔරලෝසු චක්රයක්ම වරක් මෙහෙයවීය. සමමුහුර්ත (යampඊයම්) සංඥා පසුව සම්මත වේ
දාර අනාවරකය හරහා. රූපය 11-2 T0 සමමුහුර්තකරණය සහ දාර අනාවරක තර්කනයේ ක්රියාකාරී සමාන බ්ලොක් රූප සටහනක් පෙන්වයි. රෙජිස්ටර් අභ්යන්තර පද්ධති ඔරලෝසුවේ (clkI/O) ධන දාරයේ ඔරලෝසු කර ඇත. අභ්යන්තර පද්ධති ඔරලෝසුවේ ඉහළ කාල පරිච්ඡේදයේදී අගුල විනිවිද පෙනෙන වේ.
දාර අනාවරකය එය අනාවරණය කරන එක් එක් ධනාත්මක (CS0[0:2] = 0) හෝ සෘණ (CS7[0:2] = 0) දාරය සඳහා එක් clkT6 ස්පන්දනයක් ජනනය කරයි.
ඕනෑම ස්පන්දන පළල මොඩියුලේෂන් (පීඩබ්ලිව්එම්) මාතයක් භාවිතා කරන විට OCR0x රෙජිස්ටර් ද්විත්ව බෆර් කර ඇත. සාමාන්ය හා පැහැදිලි ටයිමර් ඔන් සසඳන (සීටීසී) මෙහෙයුම් ක්රම සඳහා, ද්විත්ව බෆරින් අක්රීය කර ඇත. ද්විත්ව බෆරින් OCR0x සංසන්දනය කිරීමේ ලේඛණ යාවත්කාලීන කිරීමේ ගණන් කිරීමේ අනුක්රමයේ ඉහළ හෝ පහළ සමමුහුර්ත කරයි. සමමුහුර්තකරණය මගින් අමුතු-දිග, සමමිතික නොවන PWM ස්පන්දන ඇතිවීම වළක්වන අතර එමඟින් ප්රතිදානය දෝෂ රහිත වේ.
OCR0x රෙජිස්ටර් ප්රවේශය සංකීර්ණ බවක් පෙනෙන්නට තිබුණත් මෙය එසේ නොවේ. ද්විත්ව බෆරින් සක්රිය කර ඇති විට, CPU හට OCR0x ස්වාරක්ෂක ලේඛනයට ප්රවේශය ඇති අතර ද්විත්ව බෆරින් අක්රීය වුවහොත් CPU සෘජුවම OCR0x වෙත ප්රවේශ වේ.
බල ප්රතිදානය සංසන්දනය කරන්න
පීඩබ්ලිව්එම් නොවන තරංග ආකෘති උත්පාදන ක්රම වලදී, බල නිමැවුම් සංසන්දනය (FOC0x) බිට් එකට ලිවීමෙන් සංසන්දකයාගේ ගැලපුම් ප්රතිදානය බල කළ හැකිය. සංසන්දනය සඳහා බල කිරීම OCF0x ධජය සකසන්නේ නැත, හෝ ටයිමරය නැවත පූරණය කරන්නේ නැත, නමුත් OC0x පින් යාවත්කාලීන වන්නේ සැබෑ සංසන්දනාත්මක ගැලපීමක් සිදු වූවාක් මෙනි. හෝ ටොගල් කර ඇත).
TCNT0 ලියන්න අනුව තරඟ අවහිර කිරීම සසඳා බලන්න
TCNT0 ලේඛනයට සියලුම CPU ලිවීමේ මෙහෙයුම්, ටයිමරය නැවැත්වූ විට පවා, ඊළඟ ටයිමර් ඔරලෝසු චක්රයේ සිදුවන ඕනෑම සංසන්දනාත්මක තරඟයක් අවහිර කරනු ඇත. ටයිමර් / කවුන්ටරය ඔරලෝසුව සක්රිය කර ඇති විට බාධා කිරීම් අවුලුවාලීමෙන් තොරව OCR0x TCNT0 හා සමාන අගයකට ආරම්භ කිරීමට මෙම අංගය ඉඩ දෙයි.
නිමැවුම් සංසන්දනාත්මක ඒකකය භාවිතා කිරීම
ඕනෑම ක්රියාකාරී ආකාරයකින් TCNT0 ලිවීම එක් කාල ඔරලෝසු චක්රයක් සඳහා සියලු සංසන්දනාත්මක තරඟ අවහිර කරනු ඇති බැවින්, ප්රතිදාන සංසන්දනාත්මක ඒකකය භාවිතා කරන විට TCNT0 වෙනස් කිරීමේදී අවදානම් ඇත, ටයිමර් / කවුන්ටරය ක්රියාත්මක වේද නැද්ද යන්න ස්වාධීනව. TCNT0 වෙත ලියා ඇති අගය OCR0x අගයට සමාන නම්, සංසන්දනය කිරීම මඟ හැරෙනු ඇත, එහි ප්රති ing ලයක් ලෙස වැරදි තරංග උත්පාදනය සිදු වේ. ඒ හා සමානව, කවුන්ටරය පහළට ගණන් කරන විට TCNT0 අගය BOTTOM ට සමාන ලෙස ලියන්න එපා.
වරාය පින් ප්රතිදානය සඳහා දත්ත දිශා ලේඛනය සැකසීමට පෙර OC0x සැකසීම සිදු කළ යුතුය. OC0x අගය සැකසීමේ පහසුම ක්රමය නම් බල ප්රදාන සංසන්දනය (FOC0x) ස්ට්රෝබ් බිටු සාමාන්ය ප්රකාරයේදී භාවිතා කිරීමයි. තරංග ආකෘති උත්පාදන ක්රම අතර වෙනස් වන විට පවා OC0x ලේඛකයන් ඒවායේ අගයන් තබා ගනී.
සංසන්දනාත්මක අගය සමඟ COM0x [1: 0] බිටු දෙගුණයක් බෆර් නොවන බව මතක තබා ගන්න. COM0x [1: 0] බිටු වෙනස් කිරීම වහාම ක්රියාත්මක වේ.
තරඟ නිමැවුම් ඒකකය සසඳා බලන්න
ප්රතිදාන මාදිලිය සංසන්දනය කරන්න (COM0x [1: 0]) බිටු වලට කාර්යයන් දෙකක් ඇත. Waveform Generator ඊළඟ සංසන්දනාත්මක තරඟයේදී ප්රතිදාන සංසන්දනය (OC0x) තත්වය නිර්වචනය කිරීම සඳහා COM1x [0: 0] බිටු භාවිතා කරයි. එසේම, COM0x [1: 0] බිටු OC0x pin ප්රතිදාන ප්රභවය පාලනය කරයි. රූපය 11-6 COM0x [1: 0] බිට් සැකසුම මගින් බලපෑමට ලක් වූ තර්කනයේ සරල ක්රමලේඛයක් පෙන්වයි. රූපයේ ඇති I / O රෙජිස්ටර්, I / O බිටු සහ I / O අල්මාරි තද අකුරින් දක්වා ඇත. COM0x [1: 0] බිටු මගින් බලපෑමට ලක්වූ සාමාන්ය I / O වරාය පාලන ලේඛනයේ (DDR සහ PORT) කොටස් පමණක් පෙන්වයි. OC0x තත්වය ගැන සඳහන් කිරීමේදී, යොමු කිරීම අභ්යන්තර OC0x ලේඛනය සඳහා මිස OC0x පින් සඳහා නොවේ. පද්ධති යළි පිහිටුවීම සිදුවුවහොත්, OC0x ලේඛනය “0” වෙත නැවත සකසනු ලැබේ.
OC0A / OC0B I / O පින් එකට සම්බන්ධ වූ විට, COM0A [1: 0] / COM0B [1: 0] බිටු වල ක්රියාකාරිත්වය රඳා පවතින්නේ WGM0 [2: 0] බිට් සැකසුම මත ය. වගුව 11-2 WGM0 [1: 0] බිටු සාමාන්ය හෝ සීටීසී මාදිලියකට (පීඩබ්ලිව්එම් නොවන) සකසා ඇති විට COM0x [2: 0] බිට් ක්රියාකාරිත්වය පෙන්වයි.
වගුව 11-2. ප්රතිදාන මාදිලිය, PWM නොවන මාදිලිය සසඳන්න
COM0A1 COM0B1 | COM0A0 COM0B0 | විස්තරය |
0 | 0 | සාමාන්ය වරාය ක්රියාකාරිත්වය, OC0A / OC0B විසන්ධි කර ඇත. |
0 | 1 | සංසන්දනාත්මක තරගය මත OC0A / OC0B ටොගල කරන්න |
1 | 0 | සංසන්දනය කිරීමේදී OC0A / OC0B හිස් කරන්න |
1 | 1 | සංසන්දනාත්මක තරගය මත OC0A / OC0B සකසන්න |
වගුව 11-3 WGM0 [1: 0] බිටු වේගවත් PWM ප්රකාරයට සකසා ඇති විට COM0x [2: 0] බිට් ක්රියාකාරිත්වය පෙන්වයි.
වගුව 11-3. ප්රතිදාන මාදිලිය, වේගවත් PWM මාදිලිය සසඳන්න(1)
COM0A1 COM0B1 | COM0A0 COM0B0 | විස්තරය |
0 | 0 | සාමාන්ය වරාය ක්රියාකාරිත්වය, OC0A / OC0B විසන්ධි කර ඇත. |
0 | 1 | වෙන් කර ඇත |
1 | 0 | සංසන්දනාත්මක තරගය මත OC0A / OC0B හිස් කරන්න, BOTTOM හි OC0A / OC0B සකසන්න (ප්රතිලෝම නොවන මාදිලිය) |
1 | 1 | සංසන්දනාත්මක තරගය මත OC0A / OC0B සකසන්න, BOTTOM හි OC0A / OC0B ඉවත් කරන්න (ප්රතිලෝම ප්රකාරය) |
සටහන: OCR0A හෝ OCR0B TOP සමාන වන විට සහ COM0A1/COM0B1 සකසා ඇති විට විශේෂ අවස්ථාවක් සිදු වේ. මෙම අවස්ථාවේදී, සංසන්දනාත්මක ගැලපීම නොසලකා හරිනු ලැබේ, නමුත් කට්ටලය හෝ පැහැදිලි කිරීම පතුලේ සිදු කෙරේ. බලන්න 73 වන පිටුවේ “වේගවත් පීඩබ්ලිව්එම් ප්රකාරය” වැඩි විස්තර සඳහා.
වගුව 11-4 WGM0 [1: 0] බිටු නිවැරදි PWM ප්රකාරයට සැකසූ විට COM0x [2: 0] බිට් ක්රියාකාරිත්වය පෙන්වයි.
වගුව 11-4. ප්රතිදාන මාදිලිය, අදියර නිවැරදි PWM මාදිලිය සසඳන්න(1)
COM0A1 COM0B1 | COM0A0 COM0B0 | විස්තරය |
0 | 0 | සාමාන්ය වරාය ක්රියාකාරිත්වය, OC0A / OC0B විසන්ධි කර ඇත. |
0 | 1 | වෙන් කර ඇත |
1 | 0 | ගණනය කිරීමේදී සංසන්දනය කිරීමේදී OC0A / OC0B ඉවත් කරන්න. පහළට ගණන් කිරීමේදී සංසන්දනය කිරීම මත OC0A / OC0B සකසන්න. |
1 | 1 | ඉහළ ගණන් කිරීමේදී සංසන්දනය කිරීම මත OC0A / OC0B සකසන්න. පහළට ගණන් කිරීමේදී සංසන්දනය කිරීම මත OC0A / OC0B ඉවත් කරන්න. |
සටහන: 1. OCR0A හෝ OCR0B TOP සමාන වන විට සහ COM0A1/COM0B1 සකසා ඇති විට විශේෂ අවස්ථාවක් සිදු වේ. මෙම අවස්ථාවේදී, Compare Match නොසලකා හරිනු ලැබේ, නමුත් කට්ටලය හෝ පැහැදිලි කිරීම TOP හි සිදු කෙරේ. බලන්න 74 වන පිටුවේ “නිවැරදි නිවැරදි පීඩබ්ලිව්එම් ප්රකාරය” වැඩි විස්තර සඳහා.
බිටු 3: 2 - Res: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
බිටු 1: 0 - WGM0 [1: 0]: තරංග ආකෘති උත්පාදන ප්රකාරය
TCCR02B ලේඛනයේ ඇති WGM0 බිට් සමඟ ඒකාබද්ධව, මෙම බිටු මඟින් කවුන්ටරයේ ගණන් කිරීමේ අනුක්රමය, උපරිම (TOP) කවුන්ටර අගය සඳහා ප්රභවය සහ කුමන ආකාරයේ තරංග උත්පාදනය භාවිතා කළ යුතුද යන්න පාලනය කරයි වගුව 11-5. ටයිමර් / කවුන්ටර ඒකකය මඟින් සහාය දක්වන මෙහෙයුම් ක්රම: සාමාන්ය ප්රකාරය (කවුන්ටරය), සංසන්දනය සඳහා පැහැදිලි ටයිමරය (සීටීසී) ප්රකාරය සහ ස්පන්දන පළල මොඩියුලේෂන් (පීඩබ්ලිව්එම්) ආකාර දෙකක් (බලන්න) “මෙහෙයුම් ආකාර” 71 පිටුවේ).
වගුව 11-5. Waveform Generation Mode බිට් විස්තරය
මාදිලිය | ඩබ්ලිව්ජීඑම් 02 | ඩබ්ලිව්ජීඑම් 01 | ඩබ්ලිව්ජීඑම් 00 | ටයිමර් / කවුන්ටරයේ මෙහෙයුම් ආකාරය | ඉහළ | OCRx යාවත්කාලීන කිරීම | TOV ධජය සකසා ඇත |
0 | 0 | 0 | 0 | සාමාන්යයි | 0xFF | වහාම | උපරිම(1) |
1 | 0 | 0 | 1 | පීඩබ්ලිව්එම්, අදියර නිවැරදි | 0xFF | ඉහළ | පහළ(2) |
2 | 0 | 1 | 0 | CTC | OCRA | වහාම | උපරිම(1) |
3 | 0 | 1 | 1 | වේගවත් PWM | 0xFF | පහළ(2) | උපරිම(1) |
4 | 1 | 0 | 0 | වෙන් කර ඇත | – | – | – |
5 | 1 | 0 | 1 | පීඩබ්ලිව්එම්, අදියර නිවැරදි | OCRA | ඉහළ | පහළ(2) |
6 | 1 | 1 | 0 | වෙන් කර ඇත | – | – | – |
7 | 1 | 1 | 1 | වේගවත් PWM | OCRA | පහළ(2) | ඉහළ |
බිට් 7 - FOC0A: බල ප්රතිදානය A සංසන්දනය කරන්න
FOC0A බිට් සක්රීය වන්නේ WGM බිටු PWM නොවන මාදිලියක් නියම කළ විට පමණි.
කෙසේ වෙතත්, අනාගත උපාංග සමඟ ගැළපුම සහතික කිරීම සඳහා, PWM ප්රකාරයේදී ක්රියාත්මක වන විට TCCR0B ලියා ඇති විට මෙම බිට් බිංදුවට සැකසිය යුතුය. FOC0A බිට් එකට තාර්කික එකක් ලිවීමේදී, තරංග ආකෘති උත්පාදන ඒකකය මත ක්ෂණික සංසන්දනාත්මක තරඟයක් බල කෙරෙයි. OC0A ප්රතිදානය එහි COM0A [1: 0] බිටු සැකසුම අනුව වෙනස් වේ. FOC0A බිට් එක ආ ro ාතයක් ලෙස ක්රියාත්මක වන බව සලකන්න. එබැවින් COM0A [1: 0] බිටු වල ඇති අගය බලහත්කාරයෙන් සංසන්දනය කිරීමේ බලපෑම තීරණය කරයි.
FOC0A ස්ට්රෝබ් එකක් කිසිදු බාධාවක් ජනනය නොකරනු ඇත, තවද CTR මාදිලියේ ටයිමරය OCR0A TOP ලෙස භාවිතා නොකරයි. FOC0A බිට් සෑම විටම ශුන්ය ලෙස කියවනු ලැබේ.
බිට් 6 - FOC0B: බල ප්රතිදානය B සංසන්දනය කරන්න
FOC0B බිට් සක්රීය වන්නේ WGM බිටු PWM නොවන මාදිලියක් නියම කළ විට පමණි.
කෙසේ වෙතත්, අනාගත උපාංග සමඟ ගැළපුම සහතික කිරීම සඳහා, PWM ප්රකාරයේදී ක්රියාත්මක වන විට TCCR0B ලියා ඇති විට මෙම බිට් බිංදුවට සැකසිය යුතුය. FOC0B බිට් එකට තාර්කික එකක් ලිවීමේදී, තරංග ආකෘති උත්පාදන ඒකකය මත ක්ෂණික සංසන්දනාත්මක තරඟයක් බල කෙරෙයි. OC0B ප්රතිදානය එහි COM0B [1: 0] බිටු සැකසුම අනුව වෙනස් වේ. FOC0B බිට් එක ආ ro ාතයක් ලෙස ක්රියාත්මක වන බව සලකන්න. එබැවින් බලහත්කාරයෙන් සැසඳීමේ බලපෑම තීරණය කරන්නේ COM0B [1: 0] බිටු වල ඇති අගයයි.
FOC0B ආ roke ාතයක් කිසිදු බාධාවක් ජනනය නොකරනු ඇත, එසේම CTR මාදිලියේ ටයිමරය OCR0B TOP ලෙස භාවිතා නොකරයි.
FOC0B බිට් සෑම විටම ශුන්ය ලෙස කියවනු ලැබේ.
බිටු 5: 4 - Res: වෙන් කළ බිටු
මෙම බිටු ATtiny25 / 45/85 හි වෙන් කර ඇති බිටු වන අතර එය සැමවිටම ශුන්ය ලෙස කියවනු ඇත.
Bit 3 - WGM02: Waveform Generation Mode
විස්තරය බලන්න 0 වන පිටුවේ “TCCR77A - ටයිමර් / කවුන්ටර පාලන ලේඛනය”.
බිටු 2: 0 - CS0 [2: 0]: ඔරලෝසු තෝරන්න
ඔරලෝසු තේරීමේ බිටු තුන ටයිමර් / කවුන්ටරය භාවිතා කළ යුතු ඔරලෝසු ප්රභවය තෝරා ගනී.
වගුව 11-6. ඔරලෝසුව බිට් විස්තරය තෝරන්න
CS02 | CS01 | CS00 | විස්තරය |
0 | 0 | 0 | ඔරලෝසු ප්රභවයක් නොමැත (ටයිමර් / කවුන්ටරය නතර විය) |
0 | 0 | 1 | clkI/O/(prescaling නැත) |
0 | 1 | 0 | clkI/O/8 (prescaler වෙතින්) |
0 | 1 | 1 | clkI/O/64 (prescaler වෙතින්) |
1 | 0 | 0 | clkI/O/256 (prescaler වෙතින්) |
1 | 0 | 1 | clkI/O/1024 (prescaler වෙතින්) |
1 | 1 | 0 | T0 පින් මත බාහිර ඔරලෝසු ප්රභවය. වැටෙන අද්දර ඔරලෝසුව. |
1 | 1 | 1 | T0 පින් මත බාහිර ඔරලෝසු ප්රභවය. නැගී එන අද්දර ඔරලෝසුව. |
ටයිමර් / කවුන්ටරය 0 සඳහා බාහිර පින් මාතයන් භාවිතා කරන්නේ නම්, පින් ප්රතිදානය ලෙස වින්යාස කර තිබුණද T0 පින් එකෙහි සංක්රාන්තිය කවුන්ටරය ඔරලෝසුවක් වනු ඇත. මෙම අංගය ගණනය කිරීම මෘදුකාංග පාලනය කිරීමට ඉඩ දෙයි.
කවුන්ටර හා ඒකක සංසන්දනය කරන්න
ටයිමර් / කවුන්ටර් 1 සාමාන්ය මෙහෙයුම අසමමුහුර්ත මාදිලියේ විස්තර කර ඇති අතර සමමුහුර්ත මාදිලියේ ක්රියාකාරිත්වය සඳහන් වන්නේ මෙම ක්රම දෙක අතර වෙනස්කම් තිබේ නම් පමණි. රූපය 12-2 ටයිමර් / කවුන්ටරය 1 සමමුහුර්ත කිරීමේ රෙජිස්ටර් බ්ලොක් රූප සටහන සහ රෙජිස්ටර් අතර සමමුහුර්ත කිරීමේ ප්රමාදයන් පෙන්වයි. සියලුම ඔරලෝසු විස්තර විස්තර රූපයේ දක්වා නොමැති බව සලකන්න. ටයිමර් / කවුන්ටර් 1 රෙජිස්ටර් අගයන් ප්රතිවිරුද්ධ ක්රියාකාරිත්වයට බලපෑම් කිරීමට පෙර ආදාන සමමුහුර්තකරණ ප්රමාදයට හේතු වන අභ්යන්තර සමමුහුර්ත ලේඛණ හරහා ගමන් කරයි. TCCR1, GTCCR, OCR1A, OCR1B, සහ OCR1C යන ලේඛණ ලේඛනය ලිවීමෙන් පසු නැවත කියවිය හැකිය. ආදාන සහ ප්රතිදාන සමමුහුර්තකරණය හේතුවෙන් ටයිමර් / කවුන්ටරය 1 (ටීසීඑන්ටී 1) ලේඛනය සහ කොඩි (ඕසීඑෆ් 1 ඒ, ඕසීඑෆ් 1 බී සහ TOV1) සඳහා කියවීමේ ආපසු අගයන් ප්රමාද වේ.
ටයිමර් / කවුන්ටර් 1 හි ඉහළ විභේදනයක් සහ අඩු කල් තබා ගැනීමේ අවස්ථා සහිත ඉහළ නිරවද්යතාවයකින් යුත් භාවිතයක් ඇත. 8 MHz (හෝ අඩු වේගයේ 64 MHz) දක්වා ඔරලෝසු වේගය භාවිතා කරමින් නිවැරදි, අධිවේගී, 32-බිටු ස්පන්දන පළල මොඩියුලේටර දෙකකටද එය සහාය විය හැකිය. මෙම ප්රකාරයේදී, ටයිමර් / කවුන්ටරය 1 සහ ප්රතිදාන සංසන්දනාත්මක ලේඛණ අතිච්ඡාදනය නොවන ප්රතිලෝම හා ප්රතිලෝම ප්රතිදානයන් සහිත ද්විත්ව ස්ථාවර PWM ලෙස සේවය කරයි. වෙත යොමු වන්න 86 පිටුව මෙම ශ්රිතය පිළිබඳ සවිස්තරාත්මක විස්තරයක් සඳහා. ඒ හා සමානව, ඉහළ කල් තබා ගැනීමේ අවස්ථා මෙම ඒකකය අඩු වේගයේ ක්රියාකාරිත්වයන් සඳහා හෝ කලාතුරකින් සිදුවන කාල නියමයන් සඳහා ප්රයෝජනවත් වේ.
රූපය 12-2. ටයිමර්/කවුන්ටරය 1 සමමුහුර්ත කිරීමේ රෙජිස්ටර් බ්ලොක් රූප සටහන.
ටයිමර් / කවුන්ටරය 1 සහ පෙර සැකසුම්කරු ඕනෑම ඔරලෝසු ප්රභවයකින් CPU ධාවනය කිරීමට ඉඩ දෙන අතර පෙර සැකසුම්කරු 64 MHz (හෝ අඩු වේගයේ 32 MHz) PCK ඔරලෝසුව අසමමුහුර්ත ප්රකාරයේදී ක්රියාත්මක වේ.
පද්ධති ඔරලෝසු සංඛ්යාතය PCK සංඛ්යාතයෙන් තුනෙන් එකකට වඩා අඩු විය යුතු බව සලකන්න. පද්ධති ඔරලෝසුව ඉහළ මට්ටමක පවතින විට අසමමුහුර්ත ටයිමර් / කවුන්ටරය 1 හි සමමුහුර්තකරණ යාන්ත්රණයට අවම වශයෙන් පීසීකේ දාර දෙකක් අවශ්ය වේ. පද්ධති ඔරලෝසුවේ සංඛ්යාතය ඉතා වැඩි නම්, එය දත්ත හෝ පාලන අගයන් නැති වීමේ අවදානමකි.
පසුව එන රූපය 12-3 ටයිමර් / කවුන්ටරය 1 සඳහා බ්ලොක් රූප සටහන පෙන්වයි.
වගුව 12-1. PWM ප්රකාරයේදී සසඳා බලන්න මාදිලිය තෝරන්න
COM1x1 | COM1x0 | නිමැවුම් සංසන්දනය කිරීමේදී බලපාන ආකාරය |
0 | 0 | OC1x සම්බන්ධ නොවේ. OC1x සම්බන්ධ නොවේ. |
0 | 1 | සංසන්දනය කිරීමේදී OC1x නිෂ්කාශනය විය. TCNT1 = $ 00 විට සකසන්න. OC1x සැසඳීමේ තරගය සකසා ඇත. TCNT1 = $ 00 විට ඉවත් කර ඇත. |
1 | 0 | සංසන්දනය කිරීමේදී OC1x නිෂ්කාශනය විය. TCNT1 = $ 00 විට සකසන්න. OC1x සම්බන්ධ නොවේ. |
1 | 1 | OC1x සැසඳීමේ තරගය සකසන්න. TCNT1 = $ 00 විට ඉවත් කර ඇත. OC1x සම්බන්ධ නොවේ. |
ADC ලක්ෂණ
වගුව 21-8. ADC ලක්ෂණ, තනි අවසන් නාලිකා. TA = -40 ° C සිට +85 ° C
සංකේතය | පරාමිතිය | තත්ත්වය | අවම | ටයිප් කරන්න | උපරිම | ඒකක |
විභේදනය | 10 | බිටු | ||||
නිරපේක්ෂ නිරවද්යතාවය (අයිඑන්එල්, ඩීඑන්එල්, සහ ප්රමාණකරණය, වාසි සහ ඕෆ්සෙට් දෝෂ ඇතුළුව) | VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 200 kHz |
2 | එල්.එස්.බී | |||
VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 1 MHz |
3 | එල්.එස්.බී | ||||
VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 200 kHz ශබ්දය අඩු කිරීමේ ප්රකාරය |
1.5 | එල්.එස්.බී | ||||
VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 1 MHz ශබ්දය අඩු කිරීමේ ප්රකාරය |
2.5 | එල්.එස්.බී | ||||
සමෝධානික රේඛීය නොවන (අයිඑන්එල්) (ඕෆ්සෙට් කිරීමෙන් පසු නිරවද්යතාවය සහ ක්රමාංකනය ලබා ගැනීම) | VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 200 kHz |
1 | එල්.එස්.බී | |||
ආන්තර රේඛීය නොවන (DNL) | VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 200 kHz |
0.5 | එල්.එස්.බී | |||
ලබා ගැනීමේ දෝෂයකි | VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 200 kHz |
2.5 | එල්.එස්.බී | |||
ඕෆ්සෙට් දෝෂයකි | VREF = 4V, VCC = 4V,
ADC ඔරලෝසුව = 200 kHz |
1.5 | එල්.එස්.බී | |||
පරිවර්තන කාලය | නොමිලේ ධාවනය පරිවර්තනය | 14 | 280 | .S | ||
ඔරලෝසු සංඛ්යාතය | 50 | 1000 | kHz | |||
VIN | ආදාන වෙළුමtage | GND | VREF | V | ||
ආදාන කලාප පළල | 38.4 | kHz | ||||
AREF | බාහිර යොමු වෙළුමtage | 2.0 | VCC | V | ||
VINT | අභ්යන්තර වෙළුමtagඊ යොමු | 1.0 | 1.1 | 1.2 | V | |
අභ්යන්තර 2.56V යොමුව (1) | VCC > 3.0V | 2.3 | 2.56 | 2.8 | V | |
RREF | 32 | kΩ | ||||
වැස්ස | ඇනලොග් ආදාන ප්රතිරෝධය | 100 | MΩ | |||
ADC ප්රතිදානය | 0 | 1023 | එල්.එස්.බී |
සටහන: 1. අගයන් මාර්ගෝපදේශ පමණි.
වගුව 21-9. ADC ලක්ෂණ, අවකල නාලිකා (Unipolar Mode). TA = -40 ° C සිට +85 ° C
සංකේතය | පරාමිතිය | තත්ත්වය | අවම | ටයිප් කරන්න | උපරිම | ඒකක |
විභේදනය | වාසි = 1x | 10 | බිටු | |||
වාසි = 20x | 10 | බිටු | ||||
නිරපේක්ෂ නිරවද්යතාවය (අයිඑන්එල්, ඩීඑන්එල් සහ
ප්රමාණකරණය, වාසි සහ ඕෆ්සෙට් දෝෂ) |
වාසි = 1x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
10.0 | එල්.එස්.බී | |||
වාසි = 20x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
20.0 | එල්.එස්.බී | ||||
සමෝධානික රේඛීය නොවන (අයිඑන්එල්) (ඕෆ්සෙට් සහ වාසි ක්රමාංකනයෙන් පසු නිරවද්යතාවය) | වාසි = 1x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
4.0 | එල්.එස්.බී | |||
වාසි = 20x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
10.0 | එල්.එස්.බී | ||||
ලබා ගැනීමේ දෝෂයකි | වාසි = 1x | 10.0 | එල්.එස්.බී | |||
වාසි = 20x | 15.0 | එල්.එස්.බී | ||||
ඕෆ්සෙට් දෝෂයකි | වාසි = 1x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
3.0 | එල්.එස්.බී | |||
වාසි = 20x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
4.0 | එල්.එස්.බී | ||||
පරිවර්තන කාලය | නොමිලේ ධාවනය පරිවර්තනය | 70 | 280 | .S | ||
ඔරලෝසු සංඛ්යාතය | 50 | 200 | kHz | |||
VIN | ආදාන වෙළුමtage | GND | VCC | V | ||
VDIFF | ආදාන ආන්තරික වෙළුමtage | VREF / ලාභය | V | |||
ආදාන කලාප පළල | 4 | kHz | ||||
AREF | බාහිර යොමු වෙළුමtage | 2.0 | VCC - 1.0 | V | ||
VINT | අභ්යන්තර වෙළුමtagඊ යොමු | 1.0 | 1.1 | 1.2 | V | |
අභ්යන්තර 2.56V යොමුව (1) | VCC > 3.0V | 2.3 | 2.56 | 2.8 | V | |
RREF | යොමු ආදාන ප්රතිරෝධය | 32 | kΩ | |||
වැස්ස | ඇනලොග් ආදාන ප්රතිරෝධය | 100 | MΩ | |||
ADC පරිවර්තන ප්රතිදානය | 0 | 1023 | එල්.එස්.බී |
සටහන: අගයන් මාර්ගෝපදේශ පමණි.
වගුව 21-10. ADC ලක්ෂණ, අවකල නාලිකා (Bipolar Mode). TA = -40 ° C සිට +85 ° C
සංකේතය | පරාමිතිය | තත්ත්වය | අවම | ටයිප් කරන්න | උපරිම | ඒකක |
විභේදනය | වාසි = 1x | 10 | බිටු | |||
වාසි = 20x | 10 | බිටු | ||||
නිරපේක්ෂ නිරවද්යතාවය (අයිඑන්එල්, ඩීඑන්එල් සහ
ප්රමාණකරණය, වාසි සහ ඕෆ්සෙට් දෝෂ) |
වාසි = 1x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
8.0 | එල්.එස්.බී | |||
වාසි = 20x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
8.0 | එල්.එස්.බී | ||||
සමෝධානික රේඛීය නොවන (අයිඑන්එල්) (ඕෆ්සෙට් සහ වාසි ක්රමාංකනයෙන් පසු නිරවද්යතාවය) | වාසි = 1x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
4.0 | එල්.එස්.බී | |||
වාසි = 20x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
5.0 | එල්.එස්.බී | ||||
ලබා ගැනීමේ දෝෂයකි | වාසි = 1x | 4.0 | එල්.එස්.බී | |||
වාසි = 20x | 5.0 | එල්.එස්.බී | ||||
ඕෆ්සෙට් දෝෂයකි | වාසි = 1x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
3.0 | එල්.එස්.බී | |||
වාසි = 20x
VREF = 4V, VCC = 5V ADC ඔරලෝසුව = 50 - 200 kHz |
4.0 | එල්.එස්.බී | ||||
පරිවර්තන කාලය | නොමිලේ ධාවනය පරිවර්තනය | 70 | 280 | .S | ||
ඔරලෝසු සංඛ්යාතය | 50 | 200 | kHz | |||
VIN | ආදාන වෙළුමtage | GND | VCC | V | ||
VDIFF | ආදාන ආන්තරික වෙළුමtage | VREF / ලාභය | V | |||
ආදාන කලාප පළල | 4 | kHz | ||||
AREF | බාහිර යොමු වෙළුමtage | 2.0 | VCC - 1.0 | V | ||
VINT | අභ්යන්තර වෙළුමtagඊ යොමු | 1.0 | 1.1 | 1.2 | V | |
අභ්යන්තර 2.56V යොමුව (1) | VCC > 3.0V | 2.3 | 2.56 | 2.8 | V | |
RREF | යොමු ආදාන ප්රතිරෝධය | 32 | kΩ | |||
වැස්ස | ඇනලොග් ආදාන ප්රතිරෝධය | 100 | MΩ | |||
ADC පරිවර්තන ප්රතිදානය | -512 | 511 | එල්.එස්.බී |
උපදෙස් කට්ටල සාරාංශය
සිහිවටන | මෙහෙයුම් | විස්තරය | මෙහෙයුම | කොඩි | # ඔරලෝසු |
ගණිත හා ලොජික් උපදෙස් | |||||
එකතු කරන්න | පාර, ආර් | රෙජිස්ටර් දෙකක් එකතු කරන්න | Rd ← Rd + Rr | Z, C, N, V, H. | 1 |
ADC | පාර, ආර් | රෙජිස්ටර් දෙකක් රැගෙන යන්න | Rd ← Rd + Rr + C | Z, C, N, V, H. | 1 |
ADIW | ආර්ඩීඑල්, කේ | වචනයට ක්ෂණික එකතු කරන්න | Rdh:Rdl ← Rdh:Rdl + K | Z, C, N, V, S. | 2 |
SUB | පාර, ආර් | රෙජිස්ටර් දෙකක් අඩු කරන්න | පාර ← පාර – Rr | Z, C, N, V, H. | 1 |
මම උඩට ගියා | ආර්.ඩී., කේ | නිරන්තරයෙන් ලේඛනයෙන් අඩු කරන්න | පාර ← පාර – කේ | Z, C, N, V, H. | 1 |
එස්.බී.සී | පාර, ආර් | රෙජිස්ටර් දෙකක් රැගෙන යන්න | Rd ← Rd – Rr – C | Z, C, N, V, H. | 1 |
SBCI | ආර්.ඩී., කේ | රෙජි වෙතින් කැරි කොන්ස්ටන්ට් සමඟ අඩු කරන්න. | Rd ← Rd – K – C | Z, C, N, V, H. | 1 |
එස්.බී.ඩබ්ලිව් | ආර්ඩීඑල්, කේ | වචනයෙන් ක්ෂණිකව අඩු කරන්න | Rdh:Rdl ← Rdh:Rdl – K | Z, C, N, V, S. | 2 |
සහ | පාර, ආර් | තාර්කික සහ ලේඛණ | Rd ← Rd ∙ Rr | ඉසෙඩ්, එන්, වී | 1 |
ANDI | ආර්.ඩී., කේ | තාර්කික සහ රෙජිස්ටර් සහ නිරන්තර | පාර ← පාර ∙ කේ | ඉසෙඩ්, එන්, වී | 1 |
OR | පාර, ආර් | තාර්කික හෝ ලේඛණ | Rd ← Rd v Rr | ඉසෙඩ්, එන්, වී | 1 |
ORI | ආර්.ඩී., කේ | තාර්කික හෝ ලේඛනය සහ ස්ථාවර | පාර ← Rd v K | ඉසෙඩ්, එන්, වී | 1 |
EOR | පාර, ආර් | විශේෂිත හෝ රෙජිස්ටර් | පාර ← පාර ⊕ Rr | ඉසෙඩ්, එන්, වී | 1 |
COM | Rd | කෙනෙකුගේ අනුපූරකය | පාර ← 0xFF − Rd | ඉසෙඩ්, සී, එන්, වී | 1 |
එන්ඊජී | Rd | දෙකේ අනුපූරකය | පාර ← 0x00 − පාර | Z, C, N, V, H. | 1 |
එස්.බී.ආර් | ආර්.ඩී., කේ | ලේඛනයේ බිට් (ය) සකසන්න | පාර ← Rd v K | ඉසෙඩ්, එන්, වී | 1 |
CBR | ආර්.ඩී., කේ | ලේඛනයේ බිට් (ය) ඉවත් කරන්න | Rd ← Rd ∙ (0xFF – K) | ඉසෙඩ්, එන්, වී | 1 |
INC | Rd | වැඩි කිරීම | පාර ← Rd + 1 | ඉසෙඩ්, එන්, වී | 1 |
DEC | Rd | අඩුවීම | පාර ← පාර − 1 | ඉසෙඩ්, එන්, වී | 1 |
ටීඑස්ටී | Rd | ශුන්ය හෝ us ණ සඳහා පරීක්ෂණය | පාර ← පාර ∙ පාර | ඉසෙඩ්, එන්, වී | 1 |
CLR | Rd | ලේඛනය හිස් කරන්න | පාර ← පාර ⊕ පාර | ඉසෙඩ්, එන්, වී | 1 |
SER | Rd | ලේඛනය සකසන්න | පාර ← 0xFF | කිසිවක් නැත | 1 |
ශාඛා උපදෙස් | |||||
ආර්.ජේ.එම්.පී. | k | සාපේක්ෂ පැනීම | PC ← PC + k + 1 | කිසිවක් නැත | 2 |
අයිජේඑම්පී | (Z) වෙත වක්ර පැනීම | PC ← Z | කිසිවක් නැත | 2 | |
RCALL | k | සාපේක්ෂ සබ්ට්රවුටින් ඇමතුම | PC ← PC + k + 1 | කිසිවක් නැත | 3 |
මම අමතන්නම් | (Z) වෙත වක්ර ඇමතුම | PC ← Z | කිසිවක් නැත | 3 | |
RET | සබ්ට්රවුටින් නැවත පැමිණීම | PC ← ස්ටැක් | කිසිවක් නැත | 4 | |
RETI | බාධා නැවත පැමිණීම | PC ← ස්ටැක් | I | 4 | |
CPSE | Rd, Rr | සංසන්දනය කරන්න, සමාන නම් මඟ හරින්න | නම් (Rd = Rr) PC ← PC + 2 හෝ 3 | කිසිවක් නැත | 1/2/3 |
CP | Rd, Rr | සසඳන්න | පාර - Rr | Z, N, V, C, H. | 1 |
CPC | Rd, Rr | කැරි සමඟ සසඳන්න | Rd - Rr - C | Z, N, V, C, H. | 1 |
සීපීඅයි | ආර්.ඩී., කේ | රෙජිස්ටර් ක්ෂණික සමඟ සසඳන්න | පාර - කේ | Z, N, V, C, H. | 1 |
SBRC | ආර්, ප | බිට් ඉන් රෙජිස්ටර් හිස් නම් මඟ හරින්න | නම් (Rr(b)=0) PC ← PC + 2 හෝ 3 | කිසිවක් නැත | 1/2/3 |
එස්.බී.ආර්.එස් | ආර්, ප | බිට් ඉන් රෙජිස්ටර් සකසා ඇත්නම් මඟ හරින්න | නම් (Rr(b)=1) PC ← PC + 2 හෝ 3 | කිසිවක් නැත | 1/2/3 |
එස්.බී.අයි.සී. | පී, ප | I / O ලේඛනයේ බිට් ඉවත් කර ඇත්නම් මඟ හරින්න | නම් (P(b)=0) PC ← PC + 2 හෝ 3 | කිසිවක් නැත | 1/2/3 |
එස්බීඅයිඑස් | පී, ප | I / O ලේඛනයේ බිට් සකසා ඇත්නම් මඟ හරින්න | නම් (P(b)=1) PC ← PC + 2 හෝ 3 | කිසිවක් නැත | 1/2/3 |
බී.ආර්.බී.එස් | එස්, කේ | තත්ව ධජ කට්ටලය නම් ශාඛාව | (SREG(s) = 1) නම් PC←PC+k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.බී.සී. | එස්, කේ | තත්ව ධජය ඉවත් කර ඇත්නම් ශාඛාව | (SREG(s) = 0) නම් PC←PC+k + 1 | කිසිවක් නැත | 1/2 |
බ්රෙක් | k | ශාඛාව සමාන නම් | (Z = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බ්රන් | k | සමාන නොවේ නම් ශාඛාව | (Z = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
BRCS | k | කැරි සෙට් නම් ශාඛාව | (C = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
BRCC | k | කැරි නිෂ්කාශනය කළහොත් ශාඛාව | (C = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.එස්.එච් | k | එකම හෝ වැඩි නම් ශාඛාව | (C = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
BRLO | k | පහළ නම් ශාඛාව | (C = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.එම්.අයි | k | Us ණ නම් ශාඛාව | (N = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.පී.එල් | k | ප්ලස් නම් ශාඛාව | (N = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
BRGE | k | ශාඛාව වඩා විශාල හෝ සමාන නම්, අත්සන් කර ඇත | (N ⊕ V= 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.එල්.ටී. | k | ශාඛාව ශුන්යයට වඩා අඩු නම්, අත්සන් කර ඇත | (N ⊕ V= 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.එච්.එස් | k | අඩක් රැගෙන යන කොඩි කට්ටලයක් නම් ශාඛාව | (H = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.එච්.සී. | k | අඩක් රැගෙන යන ධජය ඉවත් කර ඇත්නම් ශාඛාව | (H = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.ටී.එස් | k | ටී ධජය සකසා ඇත්නම් ශාඛාව | (T = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
BRTC | k | ටී ධජය ඉවත් කර ඇත්නම් ශාඛාව | (T = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.වී.එස් | k | පිටාර ධජය සකසා ඇත්නම් ශාඛාව | (V = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බී.ආර්.වී.සී. | k | පිටාර ධජය හිස් කර ඇත්නම් ශාඛාව | (V = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
කෙටි | k | බාධා කිරීම් සක්රීය නම් ශාඛාව | (I = 1) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බ්රිඩ් | k | බාධා කළහොත් ශාඛාව | (I = 0) නම් PC ← PC + k + 1 | කිසිවක් නැත | 1/2 |
බිට් සහ බිට්-ටෙස්ට් උපදෙස් | |||||
SBI | පී, ප | I / O ලේඛනයේ බිට් සකසන්න | I/O(P,b) ← 1 | කිසිවක් නැත | 2 |
CBI | පී, ප | I / O ලේඛනයේ බිට් හිස් කරන්න | I/O(P,b) ← 0 | කිසිවක් නැත | 2 |
LSL | Rd | තාර්කික මාරුව වමට | Rd(n+1) ← Rd(n), Rd(0) ← 0 | ඉසෙඩ්, සී, එන්, වී | 1 |
එල්එස්ආර් | Rd | තාර්කික මාරුව දකුණ | Rd(n) ← Rd(n+1), Rd(7) ← 0 | ඉසෙඩ්, සී, එන්, වී | 1 |
රෝල් | Rd | කැරි හරහා වමට කරකවන්න | Rd(0)←C,Rd(n+1)← Rd(n),C←Rd(7) | ඉසෙඩ්, සී, එන්, වී | 1 |
ROR | Rd | කැරි හරහා දකුණට කරකවන්න | Rd(7)←C,Rd(n)← Rd(n+1),C←Rd(0) | ඉසෙඩ්, සී, එන්, වී | 1 |
ASR | Rd | අංක ගණිත මාරුව දකුණ | Rd(n) ← Rd(n+1), n=0..6 | ඉසෙඩ්, සී, එන්, වී | 1 |
සිහිවටන | මෙහෙයුම් | විස්තරය | මෙහෙයුම | කොඩි | # ඔරලෝසු |
SWAP | Rd | නිබ්ල්ස් මාරු කරන්න | Rd(3..0)←Rd(7..4),Rd(7..4)←Rd(3..0) | කිසිවක් නැත | 1 |
BSET | s | කොඩි කට්ටලය | SREG(s) ← 1 | SREG (ය) | 1 |
BCLR | s | ධජය පැහැදිලිය | SREG(s) ← 0 | SREG (ය) | 1 |
BST | ආර්, ප | බිට් වෙළඳසැල ලේඛනයේ සිට ටී | T ← Rr(b) | T | 1 |
BLD | පාර, ප | ටී සිට රෙජිස්ටරය දක්වා බිට් පැටවීම | Rd(b) ← ටී | කිසිවක් නැත | 1 |
SEC | කැරි සකසන්න | C ← 1 | C | 1 | |
CLC | කැරි ඉවත් කරන්න | C ← 0 | C | 1 | |
SEN | සෘණ ධජය සකසන්න | N ← 1 | N | 1 | |
CLN | සෘණ ධජය හිස් කරන්න | N ← 0 | N | 1 | |
SEZ | ශුන්ය ධජය සකසන්න | Z ← 1 | Z | 1 | |
CLZ | ශුන්ය ධජය හිස් කරන්න | Z ← 0 | Z | 1 | |
SEI | Global Interrupt Enable | I ← 1 | I | 1 | |
CLI | ගෝලීය බාධා අක්රීය කරන්න | I ← 0 | I | 1 | |
SES | අත්සන් කළ පරීක්ෂණ ධජය සකසන්න | S ← 1 | S | 1 | |
CLS | අත්සන් කළ පරීක්ෂණ ධජය හිස් කරන්න | S ← 0 | S | 1 | |
SEV | ට්වෝස් අනුපූරක පිටාර ගැලීම සකසන්න. | V ← 1 | V | 1 | |
CLV | ද්විත්ව දෙකේ අනුපූරක පිටාර ගැලීම | V ← 0 | V | 1 | |
සකසන්න | SREG හි T සකසන්න | T ← 1 | T | 1 | |
CLT | SREG හි ටී ඉවත් කරන්න | T ← 0 | T | 1 | |
සෙහ් | SREG හි අඩක් රැගෙන යාමේ ධජය සකසන්න | H ← 1 | H | 1 | |
CLH | SREG හි අඩක් රැගෙන යාමේ ධජය ඉවත් කරන්න | H ← 0 | H | 1 | |
දත්ත හුවමාරු උපදෙස් | |||||
MOV | පාර, ආර් | ලේඛකයන් අතර ගෙන යන්න | පාර ← Rr | කිසිවක් නැත | 1 |
MOVW | පාර, ආර් | රෙජිස්ටර් වචනය පිටපත් කරන්න | Rd+1:Rd ← Rr+1:Rr | කිසිවක් නැත | 1 |
LDI | ආර්.ඩී., කේ | වහාම පටවන්න | පාර ← කේ | කිසිවක් නැත | 1 |
LD | Rd, X. | වක්රව පූරණය කරන්න | පාර ← (X) | කිසිවක් නැත | 2 |
LD | Rd, X + | වක්ර සහ පශ්චාත් ඉන්කෝපරේෂන් පටවන්න. | පාර ← (X), X ← X + 1 | කිසිවක් නැත | 2 |
LD | Rd, - X. | වක්ර සහ පූර්ව දෙසැම්බරයේ පැටවීම. | X ← X – 1, Rd ← (X) | කිසිවක් නැත | 2 |
LD | ආර්.ඩී., වයි | වක්රව පූරණය කරන්න | පාර ← (Y) | කිසිවක් නැත | 2 |
LD | Rd, Y + | වක්ර සහ පශ්චාත් ඉන්කෝපරේෂන් පටවන්න. | පාර ← (Y), Y ← Y + 1 | කිසිවක් නැත | 2 |
LD | පාර, - වයි | වක්ර සහ පූර්ව දෙසැම්බරයේ පැටවීම. | Y ← Y – 1, Rd ← (Y) | කිසිවක් නැත | 2 |
LDD | Rd, Y + q | විස්ථාපනය සමඟ වක්රව පටවන්න | පාර ← (Y + q) | කිසිවක් නැත | 2 |
LD | Rd, Z. | වක්රව පූරණය කරන්න | පාර ← (Z) | කිසිවක් නැත | 2 |
LD | Rd, Z + | වක්ර සහ පශ්චාත් ඉන්කෝපරේෂන් පටවන්න. | Rd ← (Z), Z ← Z+1 | කිසිවක් නැත | 2 |
LD | පාර, -Z | වක්ර සහ පූර්ව දෙසැම්බරයේ පැටවීම. | Z ← Z – 1, Rd ← (Z) | කිසිවක් නැත | 2 |
LDD | Rd, Z + q | විස්ථාපනය සමඟ වක්රව පටවන්න | පාර ← (Z + q) | කිසිවක් නැත | 2 |
LDS | පාර, කේ | SRAM වෙතින් සෘජුවම පටවන්න | පාර ← (k) | කිසිවක් නැත | 2 |
ST | එක්ස්, ආර් | වක්රව ගබඩා කරන්න | (X) ← Rr | කිසිවක් නැත | 2 |
ST | X +, Rr | වක්ර සහ පශ්චාත් ඉන්කෝපරේෂන් ගබඩා කරන්න. | (X) ← Rr, X ← X + 1 | කිසිවක් නැත | 2 |
ST | - එක්ස්, ආර් | වක්ර සහ පූර්ව දෙසැම්බර් ගබඩා කරන්න. | X ← X – 1, (X) ← Rr | කිසිවක් නැත | 2 |
ST | වයි, ආර් | වක්රව ගබඩා කරන්න | (Y) ← Rr | කිසිවක් නැත | 2 |
ST | Y +, Rr | වක්ර සහ පශ්චාත් ඉන්කෝපරේෂන් ගබඩා කරන්න. | (Y) ← Rr, Y ← Y + 1 | කිසිවක් නැත | 2 |
ST | - වයි, ආර් | වක්ර සහ පූර්ව දෙසැම්බර් ගබඩා කරන්න. | Y ← Y – 1, (Y) ← Rr | කිසිවක් නැත | 2 |
ලිංගාශ්රිත රෝග | Y + q, Rr | විස්ථාපනය සමඟ වක්රව ගබඩා කරන්න | (Y + q) ← Rr | කිසිවක් නැත | 2 |
ST | ඉසෙඩ්, ආර් | වක්රව ගබඩා කරන්න | (Z) ← Rr | කිසිවක් නැත | 2 |
ST | Z +, ආර් | වක්ර සහ පශ්චාත් ඉන්කෝපරේෂන් ගබඩා කරන්න. | (Z) ← Rr, Z ← Z + 1 | කිසිවක් නැත | 2 |
ST | -Z, ආර් | වක්ර සහ පූර්ව දෙසැම්බර් ගබඩා කරන්න. | Z ← Z – 1, (Z) ← Rr | කිසිවක් නැත | 2 |
ලිංගාශ්රිත රෝග | Z + q, Rr | විස්ථාපනය සමඟ වක්රව ගබඩා කරන්න | (Z + q) ← Rr | කිසිවක් නැත | 2 |
STS | k, ආර් | SRAM වෙත සෘජුවම ගබඩා කරන්න | (k) ← Rr | කිසිවක් නැත | 2 |
LPM | වැඩසටහන් මතකය පූරණය කරන්න | R0 ← (Z) | කිසිවක් නැත | 3 | |
LPM | Rd, Z. | වැඩසටහන් මතකය පූරණය කරන්න | පාර ← (Z) | කිසිවක් නැත | 3 |
LPM | Rd, Z + | වැඩසටහන් මතකය පැටවීම සහ පශ්චාත් ඉන්කෝපරේෂන් | Rd ← (Z), Z ← Z+1 | කිසිවක් නැත | 3 |
එස්පීඑම් | වැඩසටහන් මතකය ගබඩා කරන්න | (z) ← R1:R0 | කිසිවක් නැත | ||
IN | ආර්.ඩී., පී | වරායේ | පාර ← පී | කිසිවක් නැත | 1 |
පිටතට | පී, ආර් | පිටත වරාය | P ← Rr | කිසිවක් නැත | 1 |
තල්ලු කරන්න | Rr | තොගයේ රෙජිස්ටර් තල්ලු කරන්න | ස්ටැක් ← Rr | කිසිවක් නැත | 2 |
POP | Rd | තොගයෙන් පොප් ලේඛනය | පාර ← ස්ටැක් | කිසිවක් නැත | 2 |
MCU පාලන උපදෙස් | |||||
නැත | මෙහෙයුමක් නැත | කිසිවක් නැත | 1 | ||
නිදාගන්න | නිදාගන්න | (නින්දේ ක්රියාකාරිත්වය සඳහා නිශ්චිත descr බලන්න) | කිසිවක් නැත | 1 | |
ඩබ්ලිව්ඩීආර් | වොච්ඩෝග් යළි පිහිටුවන්න | (WDR / Timer සඳහා නිශ්චිත descr බලන්න) | කිසිවක් නැත | 1 | |
BREAK | කඩන්න |
වේගය (MHz) (1) | සැපයුම් වෙළුමtagඊ (වී) | උෂ්ණත්ව පරාසය | පැකේජය (2) | ඇණවුම් කේතය (3) |
10 | 1.8 - 5.5 | කාර්මික
(-40 ° C සිට +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 | කාර්මික
(-40 ° C සිට +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 |
සටහන්: 1. වේගය සහ එදිරිව සැපයුම සඳහාtagඊ, කොටස බලන්න 21.3 163 වන පිටුවේ “වේගය”.
සියලුම පැකේජ පීබී රහිත, හේලයිඩ් රහිත සහ සම්පූර්ණයෙන්ම හරිත වන අතර ඒවා උපද්රවකාරී ද්රව්ය සීමා කිරීම සඳහා වූ යුරෝපීය නියෝගයට (RoHS) අනුකූල වේ.
කේත දර්ශක
H: NiPdAu ඊයම් නිමාව
යූ: මැට් ටින්
R: ටේප් සහ රීල්
මෙම උපාංග වේෆර් ආකාරයෙන් සැපයිය හැකිය. සවිස්තරාත්මක ඇණවුම් තොරතුරු සහ අවම ප්රමාණ සඳහා කරුණාකර ඔබේ දේශීය Atmel විකුණුම් කාර්යාලය අමතන්න.
එරටා
දෝෂ ATtiny25
මෙම කොටසේ ඇති සංශෝධන ලිපිය ATtiny25 උපාංගයේ සංශෝධනයට යොමු වේ.
Rev D - F.
දන්නා දෝෂයක් නොමැත.
Rev B - C.
අඩු සැපයුම් පරිමාවකදී ඊප්රෝම් කියවීම අසමත් විය හැකියtagඊ / අඩු ඔරලෝසු සංඛ්යාතය
අඩු සැපයුම් පරිමාවකදී ඊප්රෝම් කියවීම අසමත් විය හැකියtagඊ / අඩු ඔරලෝසු සංඛ්යාතය
අඩු ඔරලෝසු සංඛ්යාත වලින් සහ/හෝ අඩු සැපයුම් පරිමාවකින් ඊප්රෝම් කියවීමට උත්සාහ කිරීමtagවලංගු නොවන දත්ත වලට හේතු විය හැක.
ගැටළුව නිවැරදි කිරීම / වැඩ කිරීම
ඔරලෝසු සංඛ්යාතය 1MHz ට අඩු වූ විට සහ සැපයුම් පරිමාව EEPROM භාවිතා නොකරන්නtagඊ 2V ට අඩුයි. ක්රියාකාරී සංඛ්යාතය 1MHz ට වඩා ඉහළ නැංවිය නොහැකි නම්, පරිමාව සපයන්නtagඊ 2V ට වඩා වැඩි විය යුතුය. ඒ හා සමානව, සැපයුම නම් වෙළුමtage 2V ට වඩා ඉහළ නැංවිය නොහැක එවිට මෙහෙයුම් සංඛ්යාතය 1MHz ට වඩා වැඩි විය යුතුය.
මෙම ලක්ෂණය උෂ්ණත්වය මත රඳා පවතින බව දන්නා නමුත් එය සංලක්ෂිත නොවේ. කාමර උෂ්ණත්වය සඳහා පමණක් මාර්ගෝපදේශ ලබා දී ඇත.
ගරු ඒ
එස් නොවේampLED.
දෝෂ ATtiny45
මෙම කොටසේ ඇති සංශෝධන ලිපිය ATtiny45 උපාංගයේ සංශෝධනයට යොමු වේ.
Rev F - G.
දන්නා දෝෂයක් නොමැත
Rev D - E.
අඩු සැපයුම් පරිමාවකදී ඊප්රෝම් කියවීම අසමත් විය හැකියtagඊ / අඩු ඔරලෝසු සංඛ්යාතය
අඩු සැපයුම් පරිමාවකදී ඊප්රෝම් කියවීම අසමත් විය හැකියtagඊ / අඩු ඔරලෝසු සංඛ්යාතය
අඩු ඔරලෝසු සංඛ්යාත වලින් සහ/හෝ අඩු සැපයුම් පරිමාවකින් ඊප්රෝම් කියවීමට උත්සාහ කිරීමtagවලංගු නොවන දත්ත වලට හේතු විය හැක.
ගැටළුව නිවැරදි කිරීම / වැඩ කිරීම
ඔරලෝසු සංඛ්යාතය 1MHz ට අඩු වූ විට සහ සැපයුම් පරිමාව EEPROM භාවිතා නොකරන්නtagඊ 2V ට අඩුයි. ක්රියාකාරී සංඛ්යාතය 1MHz ට වඩා ඉහළ නැංවිය නොහැකි නම්, පරිමාව සපයන්නtagඊ 2V ට වඩා වැඩි විය යුතුය. ඒ හා සමානව, සැපයුම නම් වෙළුමtage 2V ට වඩා ඉහළ නැංවිය නොහැක එවිට මෙහෙයුම් සංඛ්යාතය 1MHz ට වඩා වැඩි විය යුතුය.
මෙම ලක්ෂණය උෂ්ණත්වය මත රඳා පවතින බව දන්නා නමුත් එය සංලක්ෂිත නොවේ. කාමර උෂ්ණත්වය සඳහා පමණක් මාර්ගෝපදේශ ලබා දී ඇත.
Rev B - C.
පීඑල්එල් අගුළු දැමීම නොවේ
යෙදුම් කේතයෙන් කියවන EEPROM ලොක් බිට් ප්රකාරය 3 හි ක්රියා නොකරයි
අඩු සැපයුම් පරිමාවකදී ඊප්රෝම් කියවීම අසමත් විය හැකියtagඊ / අඩු ඔරලෝසු සංඛ්යාතය
ටයිමර් කවුන්ටරය 1 OC1B- XOC1B හි PWM නිමැවුම් උත්පාදනය නිවැරදිව ක්රියා නොකරයි
පීඑල්එල් අගුළු දැමීම නොවේ
6.0 MHz ට අඩු සංඛ්යාතවලදී, PLL අගුළු නොදමනු ඇත
ගැටළු නිරාකරණය / වැඩ කිරීම
පීඑල්එල් භාවිතා කරන විට, 6.0 MHz හෝ ඊට වැඩි වේගයකින් ධාවනය කරන්න.
යෙදුම් කේතයෙන් කියවන EEPROM ලොක් බිට් ප්රකාරය 3 හි ක්රියා නොකරයි
මතක අගුළු බිටු LB2 සහ LB1 3 මාදිලියට ක්රමලේඛනය කළ විට, EEPROM කියවීම යෙදුම් කේතයෙන් ක්රියා නොකරයි.
ගැටලුව නිවැරදි කිරීම / වැඩ කිරීම
යෙදුම් කේතය EEPROM වෙතින් කියවීමට අවශ්ය වූ විට ලොක් බිට් ආරක්ෂණ ප්රකාරය 3 සකසන්න එපා.
අඩු සැපයුම් පරිමාවකදී ඊප්රෝම් කියවීම අසමත් විය හැකියtagඊ / අඩු ඔරලෝසු සංඛ්යාතය
අඩු ඔරලෝසු සංඛ්යාත වලින් සහ/හෝ අඩු සැපයුම් පරිමාවකින් ඊප්රෝම් කියවීමට උත්සාහ කිරීමtagවලංගු නොවන දත්ත වලට හේතු විය හැක.
ගැටළුව නිවැරදි කිරීම / වැඩ කිරීම
ඔරලෝසු සංඛ්යාතය 1MHz ට අඩු වූ විට සහ සැපයුම් පරිමාව EEPROM භාවිතා නොකරන්නtagඊ 2V ට අඩුයි. ක්රියාකාරී සංඛ්යාතය 1MHz ට වඩා ඉහළ නැංවිය නොහැකි නම්, පරිමාව සපයන්නtagඊ 2V ට වඩා වැඩි විය යුතුය. ඒ හා සමානව, සැපයුම නම් වෙළුමtage 2V ට වඩා ඉහළ නැංවිය නොහැක එවිට මෙහෙයුම් සංඛ්යාතය 1MHz ට වඩා වැඩි විය යුතුය.
මෙම ලක්ෂණය උෂ්ණත්වය මත රඳා පවතින බව දන්නා නමුත් එය සංලක්ෂිත නොවේ. කාමර උෂ්ණත්වය සඳහා පමණක් මාර්ගෝපදේශ ලබා දී ඇත.
OC1B - XOC1B හි ටයිමර් කවුන්ටරය 1 PWM නිමැවුම් උත්පාදනය නිවැරදිව ක්රියා නොකරයි
ටයිමර් කවුන්ටරය 1 පීඩබ්ලිව්එම් ප්රතිදානය OC1B-XOC1B නිවැරදිව ක්රියා නොකරයි. පාලක බිටු, COM1B1 සහ COM1B0 පිළිවෙලින් COM1A1 සහ COM1A0 ලෙස එකම ආකාරයෙන් පවතින විට පමණක්, OC1B-XOC1B පිටතට දැමීම නිවැරදිව ක්රියා කරයි.
ගැටලුව නිවැරදි කිරීම / වැඩ කිරීම
එකම විසඳුම වන්නේ COM1A [1: 0] සහ COM1B [1: 0] පාලන බිටු වල එකම පාලන සැකසුම භාවිතා කිරීමයි, දත්ත පත්රිකාවේ 14- 4 වගුව බලන්න. Tiny45 rev D සඳහා ගැටළුව විසඳා ඇත.
ගරු ඒ
බලශක්ති පරිභෝජනය අඩු කිරීම
තනි බාධා කිරීම් වලට පිවිසෙන විට DebugWIRE සන්නිවේදනය නැති කරයි
පීඑල්එල් අගුළු දැමීම නොවේ
යෙදුම් කේතයෙන් කියවන EEPROM ලොක් බිට් ප්රකාරය 3 හි ක්රියා නොකරයි
අඩු සැපයුම් පරිමාවකදී ඊප්රෝම් කියවීම අසමත් විය හැකියtagඊ / අඩු ඔරලෝසු සංඛ්යාතය
බලශක්ති පරිභෝජනය අඩු කිරීම
අවස්ථා තුනක් අධික ලෙස විදුලිය පරිභෝජනය අඩු කරයි. මේවා:
බාහිර ඔරලෝසුවක් ෆියුස් මගින් තෝරාගනු ලැබේ, නමුත් I / O PORT තවමත් ප්රතිදානයක් ලෙස සක්රීය කර ඇත.
විදුලිය විසන්ධි කිරීමට පෙර EEPROM කියවනු ලැබේ.
VCC වෝල්ට් 4.5 හෝ ඊට වැඩි ය.
වියාචනය: මෙම ලේඛනයේ තොරතුරු Atmel නිෂ්පාදන සම්බන්ධව සපයනු ලැබේ. මෙම ලේඛනය මගින් හෝ Atmel නිෂ්පාදන විකිණීම සම්බන්ධයෙන් එස්ටොපල් මගින් හෝ වෙනත් ආකාරයකින් කිසිදු බුද්ධිමය දේපල අයිතියක් සඳහා ප්රකාශිත හෝ ඇඟවුම් කර ඇති බලපත්රයක් ලබා නොදේ. ATMEL හි පිහිටා ඇති විකුණුම් නියමයන් සහ කොන්දේසි වල දක්වා ඇති පරිදි හැර WEBSITE, ATMEL කිසිඳු වගකීමක් උපකල්පනය නොකරන අතර ඕනෑම ප්රකාශිත, ව්යවස්ථාපිත හෝ ව්යවස්ථාපිත වගකීමක් ප්රතික්ෂේප කරයි කිසිදු අවස්ථාවක ඕනෑම කිසිදු සෘජු, වක්ර, අ n ාන, විශේෂ හෝ ආනුෂංගික හානි සඳහා අන්තර්ගතයක් බැඳී නොසිටිනු ඇත මෙම ලේඛනය, එවැනි හානි සිදුවීමේ හැකියාව පිළිබඳව ATMEL වෙත උපදෙස් දී ඇතත්.
Atmel මෙම ලේඛනයේ අන්තර්ගතයේ නිරවද්යතාවය හෝ සම්පූර්ණත්වය සම්බන්ධයෙන් කිසිදු නියෝජනයක් හෝ වගකීමක් ලබා නොදෙන අතර දැනුම්දීමකින් තොරව ඕනෑම වේලාවක පිරිවිතරයන් සහ නිෂ්පාදන විස්තර සඳහා වෙනස්කම් කිරීමට අයිතිය රඳවා තබා ගනී. මෙහි අඩංගු තොරතුරු යාවත්කාලීන කිරීමට Atmel කිසිදු කැපවීමක් නොකරයි. විශේෂයෙන් වෙනත් ආකාරයකින් සපයා නොමැති නම්, Atmel නිෂ්පාදන මෝටර් රථ යෙදුම් සඳහා සුදුසු නොවන අතර ඒවා භාවිතා නොකළ යුතුය. Atmel නිෂ්පාදන ජීවිතයට සහය දැක්වීමට හෝ පවත්වා ගැනීමට අදහස් කරන යෙදුම්වල සංරචක ලෙස භාවිතා කිරීමට අදහස් කර, අවසර ලබා දී හෝ සහතික කර නොමැත.