Atmel 8-bit AVR مایکرو کنټرولر د 2/4/8K بایټس په سیسټم کې د پروګرام وړ فلش سره
ځانګړتیاوې
- لوړ فعالیت، د ټیټ ځواک AVR® 8-بټ مایکرو کنټرولر
- د RISC پرمختللي جوړښت
- 120 پیاوړي لارښوونې - د ډیری ساعت واحد سایټ اجرا کول
- 32 x 8 د کار عمومي ثبت کاري هدف
- په بشپړه توګه جامد عملیات
- غیر خوځنده برنامه او د معلوماتو یادونه
- په سیسټم کې د برنامې وړ برنامه حافظه فلش 2/4 / 8K بایټس
- استقامت: 10,000 سایکلونه ولیکئ / پاک کړئ
- 128/256/512 بایټس په سیسټم کې د برنامې وړ EEPROM
- استقامت: 100,000 سایکلونه ولیکئ / پاک کړئ
- 128/256/512 بایټس داخلي SRAM
- د ځان پروګرام کولو فلش برنامې او EEPROM ډیټا امنیت لپاره د برنامې لاک
د پردې ځانګړتیاوې
- 8-بټ ټیمر / د پریسکلر او دوه PWM چینلونو سره کاونټر
- 8-بټ لوړ سرعت ټایمر / د جلا پرسکیالر سره کاونټر
- 2 د لوړې فریکوینسي PWM پایلو د جلا محصول محصول سره راجسترونه پرتله کړئ
- د برنامه کیدونکي مړینې وخت جنریټر
- USI - د پیل شوي حالت کشف کونکي سره نړیوال سریال انٹرفیس
- 10-bit ADC
4 ختم شوي چینلونه
د برنامې لاسته راوړنې سره د 2 امتیازي ADC چینل جوړو (1x ، 20x)
د حرارت درجه اندازه کول
د برنامه کېدونکي څار ټیمر د آنلاین چپ چپ جلا کولو سره
پر چپ انلاګ پرتله کونکی
د مایکرو کنټرولر ځانګړتیاوې
debugWIRE پر چپ ډیبګ سیسټم
د SPI پورټ له لارې په سیسټم کې د برنامې وړ
بهرني او داخلي مداخلې سرچینې
د ټیټ بریښنا ایډی ، د ADC شور کمول ، او د بریښنا ښکته حالتونه
د ځواک په کچه د ریسیټ سرکټ
د برنامه وړ د کشف کولو جریان
د داخلي کیلیبریټ اوسیدونکي
I / O او بسته
شپږ د برنامې وړ I / O لاینونه
8 پن پن PDIP ، 8 پن پن SOIC ، 20- پیډ QFN / MLF ، او 8 پن TSSOP (یوازې ATtiny45 / V)
د عملیاتو Voltage
- 1.8 - 5.5V د ATtiny25V / 45V / 85V لپاره
- د ایټیني 2.7/5.5/25 لپاره 45 - 85V
د سرعت درجه
- ATtiny25V / 45V / 85V: 0 - 4 MHz @ 1.8 - 5.5V ، 0 - 10 MHz @ 2.7 - 5.5V
- ایټینی 25/45/85: 0 - 10 میګاهرتز @ 2.7 - 5.5V ، 0 - 20 MHz @ 4.5 - 5.5V
د تودوخې درجې درجې
د ټیټ بریښنا مصرف
چارند حالت:
1 میګاهرتز ، 1.8V: 300 .A
د بریښنا ښکته اکر:
د تشکیلاتو پین
پنټ ایټیني 25/45/85
پین توضیحات
VCC: د عرضې حجمtage.
GND: ځمکه.
پورټ B (PB5:PB0): پورټ B د 6-bit دوه طرفه I/O پورټ دی چې د داخلي پل اپ مقاومت کونکو سره (د هر بټ لپاره غوره شوی). د پورټ B محصول بفرونه د لوړ سنک او سرچینې ظرفیت سره سمیټریک ډرایو ځانګړتیاوې لري. د انپټونو په توګه، د پورټ بی پنونه چې په بهر کې ټیټ راښکته شوي وي که چیرې د پل اپ مقاومت کونکي فعال شي نو د جریان سرچینه به وي. د پورټ بی پنونه په درې اړخیزه توګه بیان شوي کله چې د بیا تنظیم حالت فعال شي، حتی که ساعت نه وي.
پورټ بی د ATtiny25 / 45/85 مختلف بیلابیل ځانګړتیاوې دندې هم وړاندې کوي لکه څنګه چې لیست شوي
په ATtiny25 کې ، د برنامې وړ I / O بندرګاه PB3 او PB4 (پنونه 2 او 3) د ATtiny15 سره د شاتګ مطابقت مالتړ لپاره د ATtiny15 مطابقت حالت کې تبادله کیږي.
RESET: ان پټ بیا تنظیم کړئ. د نبض د لږترلږه اوږدوالي څخه د اوږدې مودې لپاره پدې پن کې ټیټه کچه به یو ری سیٹ رامینځته کړي ، حتی که ساعت نه وي روان وي او په دې شرط چې د ری سیٹ پن غیر فعال شوی نه وي. د نبض لږترلږه اوږدوالی په کې ورکړل شوی جدول 21-4 په 165 پاڼه کې. لنډ دالونه د بیا جوړونې تضمین ندي.
د رییس پن هم د (ضعیف) I / O پن په توګه کارول کیدی شي.
اوورview
د اټټین 25/45/85 د ټیټ ځواک CMOS 8-بټ مایکرو کنټرولر دی چې د AVR پرمختللي RISC جوړښت پراساس دی. د یو ساعت ساعت په جریان کې د قوي لارښوونو پلي کولو سره ، ATtiny25 / 45/85 په هر میګاهټز کې 1 MIP ته رسیدو لارې لاسته راوړي چې د سیسټم ډیزاینر ته اجازه ورکوي چې د بریښنا مصرف په پرتله د پروسس سرعت اصلاح کړي.
بلاک ډایگرام
د AVR کور د 32 عمومي مقصد کار کولو راجسټریشنونو سره بډایه لارښود ترتیب کوي. ټول 32 ثبتونه په مستقیم ډول د ارثیماتیک منطق څانګې (ALU) سره تړلي دي ، چې په یو واحد لارښود کې دوه خپلواکه ثبتونه د یو ساعت په جریان کې اجرا شوي ته اجازه ورکوي. پایله شوې معمار خورا کوډ موثره دی پداسې حال کې چې د دودیزو CISC مایکرو کنټرولرانو څخه لس چنده ګړندی له لارې لاسته راوړنې ترلاسه کوي.
ایټینی 25/45/85 لاندې ب providesې وړاندې کوي: د ان سیسټم برنامه وړ فلش 2/4 / 8K بایټس ، 128/256/512 بایټ EEPROM ، 128/256/256 بائټ SRAM ، 6 عمومي مقصد I / O لاینونه ، 32 عمومي د کار کولو راجسټرېشنونه ، یو 8 بټ ټیمر / د پرتله کولو حالتونو سره کاونټر ، یو 8 بټ لوړ سرعت ټایمر / کاونټر ، یونیورسل سریال انټررفیس ، داخلي او بهرني مداخلې ، د 4 چینل ، 10 بټ ADC ، د داخلي سره د برنامه کیدونکي څار ټیمر اوریدونکی ، او درې د سافټویر انتخاب وړ بریښنا خوندي کولو حالتونه. idle حالت CPU ته مخه کوي پداسې حال کې چې SRAM ، ټیمر / کاونټر ، ADC ، انلاګ پرتله کونکي ، او مداخلې سیسټم خپل فعالیت ته دوام ورکوي. د بریښنا ښکته اکر د راجستر کانټینټونه خوندي کوي ، تر راتلونکی مداخلې یا هارډویر ریسیټ پورې ټولې چپ فعالیتونه غیر فعال کوي. د ADC شور کمولو حالت د ADC پرته CPU او ټول I / O ماډلونه ودروي ، ترڅو د ADC تبادلو پرمهال د تبادلې شور کم کړي.
وسیله د اتمیل لوړ کثافت غیر متناسب حافظه ټیکنالوژۍ په کارولو سره رامینځته شوې. د آن چپ ISP فلش د SPI سیریل انٹرفیس له لارې د برنامه حافظه په انیس سیسټم کې د برنامه کولو ته اجازه ورکوي ، د غیر متوازن حافظې برنامه کونکي لخوا یا د آن چپ بوټ کوډ له لارې چې د AVR کور کې پرمخ ځي.
د ATtiny25 / 45/85 AVR د برنامو او سیسټم پراختیایی توکو بشپړ بشپړ مالتړ سره ملاتړ کیږي پدې کې شامل دي: C مخلصین ، د مایکرو راټولونکي ، د برنامې ډیبګر / سمیلیټرې او ارزونې کټونه.
د سرچینو په اړه
د انکشافی وسیلو ، غوښتنلیک نوټونو او ډیټا شیټونو پراخه مجموعه د ډاونلوډ لپاره شتون لري http://www.atmel.com/avr.
کوډ Examples
دا اسناد ساده کوډ لري examples چې په لنډه توګه ښیې چې څنګه د وسیلې مختلف برخو کارول کیږي. دا کوډونه examples فرض کړئ چې د برخې ځانګړي سرلیک file د تالیف کولو دمخه شامل دی. خبر اوسئ چې ټول C کمپیلر پلورونکي په سرلیک کې د بټ تعریفونه نه لري files او په C کې د مداخلې اداره کول د کمپیلر پورې اړه لري. مهرباني وکړئ د نورو جزیاتو لپاره د C کمپیلر اسنادو سره تایید کړئ.
د I / O راجستر لپاره چې په پراخه شوې I / O نقشه کې موقعیت لري ، "IN" ، "OUT" ، "SBIS" ، "SBIC" ، "CBI" ، او "SBI" لارښوونې باید د داسې لارښوونو سره بدلې شي چې اوږد I ته لاسرسي ته اجازه ورکړي. / O. په عمومي ډول ، دا معنی لري "LDS" او "STS" د "SBRS" ، "SBRC" ، "SBR" ، او "CBR" سره یوځای کیږي. په یاد ولرئ چې ټول د AVR وسیلو کې غزول شوی I / O نقشه شامل نه ده.
د ظرفیت لمس حس کول
د Atmel QTouch کتابتون په Atmel AVR مایکرو کانټرولرونو کې د ټچ حساس انٹرفیسونو لپاره د کارولو لپاره ساده حل چمتو کوي. د QTouch کتابتون کې د QTouch® او QMatrix® استملاک میتودونو ملاتړ شامل دی.
د ټچ سینسینګ په اسانۍ سره د QTouch کتابتون سره وصل کولو سره او د ټچ چینلونو او سینسر تعریف کولو لپاره د کتابتون د غوښتنلیک برنامې انټرفیس (API) کارولو سره په هر غوښتنلیک کې په اسانۍ سره اضافه کیدی شي. غوښتنلیک بیا API ته غږ کوي ترڅو د چینل معلومات بیرته ترلاسه کړي او د ټچ سینسر حالت وټاکي.
د QTouch کتابتون وړیا دی او له اتمیل څخه ډاونلوډ کیدی شي webسایټ د نورو معلوماتو او پلي کولو توضیحاتو لپاره ، د QTouch کتابتون کارونکي لارښود ته مراجعه وکړئ - د اتمیل څخه هم شتون لري webسایټ
د معلوماتو ساتل
د اعتبار وړتیا پایلې ښیې چې د اټکل شوي معلوماتو ساتلو ناکامي کچه د 1 کلونو په اوږدو کې د 20 پی پی ایم څخه خورا لږ په 85 ° C یا 100 کلونو کې 25 ° C ده.
د AVR CPU کور
پیژندنه
دا برخه په عمومي ډول د AVR اصلي معمار بحث کوي. د CPU اصلي اصلي دنده د فساد برنامه پلي کول یقیني کول دي. CPU باید د دې لپاره وړ وي چې یادونو ته لاسرسی ولري ، محاسبې ترسره کړي ، د پردې کنټرول کړي ، او مداخلې اداره کړي.
معماري اوورview
د فعالیت او موازي اعظمي کولو لپاره ، AVR د هارورډ جوړښت کاروي - د برنامو او معلوماتو لپاره جلا یادونو او بسونو سره. د برنامې حافظه کې لارښوونې د یو واحد کچې پایپایین کولو سره پلي کیږي. پداسې حال کې چې یو لارښود اجرا کیږي ، بل لارښود د برنامې حافظې څخه دمخه راوړل شوی. دا مفهوم لارښوونې وړ کوي چې په هر ساعت ساعت کې اعدام شي. د برنامې حافظه په سیسټم کې د پروګرامام وړ فلش حافظه ده.
د چټک لاسرسي راجستر File د 32 x 8-bit عمومي هدف کاري راجسترونه لري چې د یو ساعت دورې لاسرسي وخت سره. دا د واحد سایکل ریاضي منطقي واحد (ALU) عملیاتو ته اجازه ورکوي. په عادي ALU عملیاتو کې، دوه عملیات د راجستر څخه تولید کیږي File، عملیات اجرا کیږي، او پایله بیرته په راجستر کې زیرمه کیږي File- په یو ساعت دوران کې.
د 32 راجسترونو څخه 16 د ډیټا اسپیس ایڈریس کولو لپاره د 16 XNUMX بټ غیر مستقیم پته راجستر نښو په توګه کارول کیدی شي - د اغیزمن پته محاسبې وړ کول. د دې پته نښه کونکو څخه یو هم د فلش برنامې حافظه کې د جدولونو لیدو لپاره د پتې نښه کولوونکي په توګه کارول کیدی شي. دا د فعالیت اضافه راجسټرې د XNUMX بټ X- ، Y- ، او Z - راجستر دي ، چې پدې برخه کې وروسته تشریح شوي.
ALU د راجسټرونو یا د ثابت او راجسټټر ترمینځ حسابي او منطق عملیاتو ملاتړ کوي. د راجستر واحد عملیات هم په ALU کې ترسره کیدی شي. د ارسطو له عملیاتو وروسته ، د حالت راجسټریشن تازه کیږي ترڅو د عملیاتو د پایلو په اړه معلومات منعکس کړي.
د برنامې جریان د مشروط او غیر مشروط کود او تلیفون لارښوونو لخوا چمتو شوی ، د مستقیم ټولې پتې ځای په نښه کولو وړ. ډیری د AVR لارښوونې د 16 بټ ټکي یو ب formatه ب haveه لري ، مګر دلته د 32 بټ لارښوونې هم شتون لري.
د مداخلو او سبروټین تلیفونونو په جریان کې ، د راستنیدو پته برنامه کاونټر (PC) په سټیک کې ذخیره کیږي. سټیک په مؤثره توګه په عمومي ډیټا SRAM کې تخصیص شوی ، او په پایله کې د سټ اندازه یوازې د ټول SRAM اندازې او د SRAM کارول محدوده ده. ټول کارونکي برنامې باید SP د ریسیټ په ورځني ډول پیل کړي (مخکې له دې چې فرعي یا معمولات یا مداخلې ترسره شي). د سټیک نښه (SP) د I / O ځای کې د لاسرسي وړ لوستل / لوستل کیږي. د ډیټا SRAM په اسانۍ سره د پنځه مختلف مخاطب حالتونو له لارې د AVR معمار کې ملاتړ کیدلی شي.
د AVR جوړښت کې د حافظې ځایونه ټول خطي او منظم د حافظې نقشې دي.
یو انعطاف وړ مداخله انډول د I / O ځای کې د کنټرول راجسټرې لري د حالت په راجسټر کې د اضافي نړیوال مداخلت وړ بټ سره. ټولې مداخلې د مداخلې ویکټر جدول کې یو جلا مداخله ویکتور لري. مداخلې د دوی مداخل شوي ویکٹر موقعیت سره سم لومړیتوب لري. د مداخلې ویکتور پته ټیټ ، لوړ لومړیتوب.
د I/O حافظې ځای د CPU پردیو دندو لپاره 64 پتې لري لکه د کنټرول راجستر، SPI، او نورو I/O دندو. د I/O حافظې ته مستقیم لاسرسی موندلی شي ، یا د ډیټا ځای موقعیتونو په توګه د راجسټر څخه تعقیب کیدی شي File, 0x20 – 0x5F.
ALU - د ریاضیاتو منطق واحد
د لوړ فعالیت AVR ALU د 32 عمومي مقصد کار کولو ټول راجسترونو سره مستقیم اړیکه کې فعالیت کوي. د یو ساعت ساعت په جریان کې ، د عمومي موخو راجسټرو یا د راجستر او سمدستي ترمینځ حسابي عملیات ترسره کیږي. د ALU عملیات په دریو اصلي کټګوریو ویشل شوي دي - ریاضي ، منطقي او د بټ افعال. د معمارۍ ځینې تطبیقونه یو قوي ضربه برابروي چې دواړه یې لاسلیک شوي / لاسلیک شوي ضرب او مختلف شکل ملاتړ کوي. د تفصيلي وضاحت لپاره د "لارښوونې سیټ" برخې وګورئ.
د حالت ثبتول
د حیثیت راجسټرې د وروستي اعدام شوي ریاضیاتو لارښود پایلې په اړه معلومات لري. دا معلومات د شرایطي عملیاتو ترسره کولو لپاره د برنامه جریان بدلولو لپاره کارول کیدی شي. په یاد ولرئ چې د حالت راجسټریشن د ALU عملیاتو وروسته تازه کیږي ، لکه څنګه چې د لارښوونې سیټ حواله کې ذکر شوي. دا به په ډیری قضیو کې د وقف شوي پرتله کولو لارښوونو کارولو اړتیا لرې کړي ، په پایله کې د ګړندي او ډیر کمپیکټ کوډ.
د حالت راجسټریشن په اوتومات ډول نه ساتل کیږي کله چې یو وقفې ورځنۍ ته داخلیږي او کله چې له مداخل څخه بیرته راستنیدو ته راستون کیږي. دا باید د سافټویر لخوا اداره شي.
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: نړیوال مداخله وړ
د مداخلې د فعالولو لپاره باید د نړیوال مداخلې وړ بیټ باید تنظیم شي. د انفرادي مداخلې وړ کنټرول بیا په جلا کنټرول راجسټرونو کې ترسره کیږي. که چیرې د نړیوالې مداخلې وړ راجسټرې پاکه شي ، نو هیڅ یو مداخله د انفرادي مداخلې وړ سیټنګونو څخه خپلواک نه وړل کیږي. I-bit د مداخلې پیښې وروسته د هارډویر لخوا پاک شوی ، او د RETI لارښوونې لخوا ترتیب شوی ترڅو وروسته مداخلې فعال کړي. I-bit هم د SEI او CLI لارښوونو سره د غوښتنلیک لخوا تنظیم او پاک کیدی شي ، لکه څنګه چې د لارښود سیټ حواله کې بیان شوي.
بټ 6 - ټ: د کاپي ذخیره
د بټ کاپي لارښوونې BLD (Bit LoaD) او BST (Bit store) د عملیات شوي بټ لپاره T-bit د سرچینې یا منزل په توګه کاروي. په راجستر کې د راجستر څخه یو څه File د BST لارښوونې لخوا په T کې کاپي کیدی شي، او په T کې یو څه په راجستر کې په راجستر کې کاپي کیدی شي File د BLD لارښوونې لخوا.
Bit 5 - H: د نیم ساعت بیرغ
د نیمه کیري ب Flagه H په ځینو ارثیمیک عملیاتو کې د نیمایي کیري اشاره کوي. نیمه کیري د BCD ریاضي کې ګټوره ده. د تفصيلي معلوماتو لپاره د "لارښوونې تنظیم توضیح" وګورئ.
بټ 4 – S: نښه بټ، S = N ⊕ V
S-bit تل ځانګړي یا د منفي بیرغ N او د دوه بشپړ شوي جریان بيرغ V ترمنځ وي. د تفصيلي معلوماتو لپاره د "لارښوونې سیټ توضیحات" وګورئ.
بټ 3 - وی: د دوه بشپړ بشپړ جریان بیرغ
د دوه بشپړ شوي فلج وی د دوه بشپړونکی ریاضی ملاتړ کوي. د تفصيلي معلوماتو لپاره د "لارښوونې تنظیم توضیح" وګورئ.
Bit 2 - N: منفي بیرغ
د منفي بیرغ N د ریاضیاتو یا منطق عملیاتو کې منفي پایله په ګوته کوي. د تفصيلي معلوماتو لپاره د "لارښوونې تنظیم توضیح" وګورئ.
بټ 1 - زیډ: د صفر بیرغ
د صفر پرچم Z د ریاضیاتو یا منطق عملیاتو کې د صفر پایلې په ګوته کوي. د تفصيلي معلوماتو لپاره د "لارښوونې تنظیم توضیح" وګورئ.
Bit 0 - C: بیرغ پورته کړئ
د کیري فلیګ سي د ریاضي یا منطق عملیاتو کې وړتیا په ګوته کوي. د تفصيلي معلوماتو لپاره د "لارښوونې تنظیم توضیح" وګورئ.
د عمومي هدف راجستر File
نوم لیکنه File د AVR لوړ شوي RISC لارښوونې سیټ لپاره مطلوب دی. د اړتیا وړ فعالیت او انعطاف د ترلاسه کولو لپاره، لاندې داخلې/آؤټ پوټ سکیمونه د راجستر لخوا ملاتړ کیږي File:
د 8 بټ آوټ اپریډ او یو 8-بټ پایله آخذه
دوه د 8 بټ آوټاپ آپریډونه او د یو 8-بټ پایله پایلې
دوه د 8 بټ آوټاپ آپریډونه او د یو 16-بټ پایله پایلې
د 16 بټ آوټ اپریډ او یو 16-بټ پایله آخذه
شکل 4-2 په CPU کې د 32 عمومي مقصد کار کولو راجسترونو جوړښت ښیې.
لکه څنګه چې ښودل شوي شکل 4-2، هر راجستر ته د ډیټا حافظې پته هم ټاکل شوې ، دوی مستقیم د کارونکي ډیټا سپیس لومړی 32 ځایونو ته نقشه کوي. که څه هم په فزیکي توګه د SRAM ځایونو په توګه نه پلي کیږي، دا د حافظې اداره راجسترونو ته د لاسرسي په برخه کې لوی انعطاف چمتو کوي، ځکه چې د X-، Y- او Z-پوائنټر راجسترونه په هر ډول راجستر کې د شاخص لپاره تنظیم کیدی شي. file.ډیری لارښوونې په راجستر کې فعالیت کوي File ټولو راجسترونو ته مستقیم لاس رسی لري، او ډیری یې د یو واحد سایکل لارښوونې دي.
د ایکس راجستر ، Y راجستر ، او Z - ثبت کړئ
R26..R31 راجستر کونکي د دوی عمومي مقصد کارولو کې ځینې اضافه فعالیتونه لري. دا راجسټرې د معلوماتو ځای ته د غیر مستقیم پته کولو لپاره د 16-بټ پتې نښه دي. درې غیر مستقیم پته راجسټر کوي X ، Y ، او Z تعریف شوي لکه څنګه چې تشریح شوي شکل 4-3.
په بیلابیلو پته حالتونو کې دا پته راجستر د ټاکل شوي بې ځایه کیدنې ، اتوماتیک ډیروالي ، او اتومات کموالي په توګه دندې لري (د لارښوونو لپاره د لارښوونې سیټ ریفرنس وګورئ).
د دلۍ نښه
سټیکټ عموما د لنډمهاله معلوماتو ذخیره کولو لپاره کارول کیږي ، د محلي تغیراتو ذخیره کولو لپاره او د مداخلو او سبروټین تلیفونونو وروسته بیرته راستنیدو پتې ذخیره کولو لپاره. د سټک پوینټر راجسټرې تل د سټیک سر ته اشاره کوي. په یاد ولرئ چې سټیک د لوړ حافظې ځایونو څخه ټیټ حافظې ځایونو ته د ودې په توګه پلي کیږي. دا پدې معنی ده چې د سټیک PUSH کمانډ د سټیک پوټینټر کموي.
د سټیک پوینټر ډاټا SRAM سټیک ساحې ته ګوته نیسي چیرې چې سبروټین او مداخله لرونکي سټیکونه موقعیت لري. په ارقامو SRAM کې د دې زېرمې ځای باید د برنامې لخوا تعریف شي مخکې لدې چې کوم فرعي کرښه تلیفونونه پلي شي یا مداخلې وړ شي. د سټیک پوینټر باید د 0x60 پورته ټکي ته تنظیم شي. د سټیک پوینټر د یو لخوا کم شوی کله چې ډاټا د PUSH لارښوونې سره په سټیک کې فشار کیږي ، او دا د دوه لخوا کم شوی کله چې د راستنیدو پته د سبروټین تلیفون یا مداخلې سره په سټیک کې فشار کیږي. د سټیک پوینټر د یو لخوا وده شوی کله چې ډاټا د POP لارښوونې سره د سټیک څخه پاپ شوی ، او دا د دوه لخوا زیاتوالیږي کله چې ډیټا د سټروټین RET څخه بیرته راستنیدو یا د مداخلې RETI څخه بیرته راستنیدو سره د سټیک څخه پاپ شوی.
د AVR سټیک پوینټر د I / O ځای کې د دوه 8 بټ راجسترونو په توګه پلي کیږي. د واقعیتونو څخه کاریدل د بټونو شمیر پلي کول دي. په یاد ولرئ چې د AVR جوړښت په ځینو پلي کولو کې د معلوماتو ځای دومره کوچنی دی چې یوازې SPL ته اړتیا لري. پدې حالت کې ، د SPH راجستر به شتون ونلري.
SPH او SPL - د پوټکي راجستر ثبت
بټ | 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 مفهوم. دا د پایپ لاین کولو بنسټیز مفهوم دی چې تر 1 MIPS پورې په هر میګا هرټز کې ترالسه کوي د هر لګښت، د هر ساعت فعالیت، او د بریښنا واحد فعالیت لپاره ورته ځانګړې پایلې لري.
شکل 4-5. د واحد سایکل ALU عملیات
بیا تنظیم او مداخله اداره کول
AVR ډیری بیلابیل مداخلې سرچینې چمتو کوي. دا مداخلې او د جلا ریسټ ویکتور هر یو د برنامه حافظې ځای کې د برنامې جلا جلا ویکتور لري. ټولې مداخلې د انفرادي وړ وړ بټونو ته ټاکل شوي دي چې د وضعیت راجستر کې د نړیوال مداخلت وړ بټ سره یوځای باید منطق لیکل شي ترڅو د مداخلې وړ کولو لپاره.
د برنامو حافظې ځای کې ټیټ پته د ډیفالټ لخوا د ریسیټ او مداخلې ویکتورونو په توګه ټاکل شوي. د ویکټرانو بشپړ لیست په کې ښودل شوی په 48 XNUMX پا onه کې “مداخلې”. لیست د مختلف مداخلو لومړیتوب کچه هم ټاکي. پته ټیټه کچه د لومړیتوب کچه ده. RESET لوړه لومړیتوب لري ، او بل INT0 دی - د بهرني مداخلې غوښتنه 0.
کله چې یو مداخله پیښیږي ، د نړیوال مداخله توان I-bit پاک شوی او ټولې مداخلې غیر فعال دي. د کارونکي نرم وسیله کولی شي I-bit ته منطق ولیکي ترڅو د ځړول شوي مداخلو وړ کړي. ټول فعال شوي مداخلې بیا د اوسني مداخلې روټین مداخله کولی شي. I-bit په اوتومات ډول تنظیم شوی کله چې د مداخلې لارښوونې څخه بیرته راستنیدنه - RETI - اجرا کیږي.
اساسا دوه ډوله مداخلې شتون لري. لومړی ډول د پیښې پواسطه محرک شوی چې د مداخلې بيرغ ټاکي. د دې مداخلو لپاره ، د برنامه کاینټر د مداخلې اداره کولو معمول پلي کولو لپاره ریښتیني مداخلې ویکتور ته ویکتور شوی ، او هارډویر ورته مداخله پرچم پاکوي. مداخله ب Flaې د پرچم بټ موقعیت ته د منطق لیکلو سره هم پاک کیدی شي. که چیرې یو مداخله وضعیت پیښ شي پداسې حال کې چې د اړونده مداخلې وړ بټ پاک شوی وي ، د مداخلې ب Flagه به تر هغه وخته پورې تنظیم شي او یاد وساتل شي تر هغه چې وقفه فعاله نه وي ، یا بیرغ د سافټویر لخوا پاک شوی وي. په ورته ډول ، که چیرې یو یا ډیر مداخلې شرایط واقع شي پداسې حال کې چې د نړیوال مداخلت وړ بټ پاک شوی وي ، نو د اړوندو مداخلو ب Flagه به ترتیب او یاد شي ترڅو د نړیوال مداخلت وړ بټ ترتیب نه شي ، او بیا به د لومړیتوب په ترتیب سره اجرا شي.
دوهم ډول مداخلې به تر هغه وخته پورې حرکت وکړي چې د مداخلې وضعیت شتون ولري. دا مداخلې په وقتي ډول د مداخلې بيرغونه نه لري. که د مداخلې وړ کیدو دمخه مداخله وضعیت ورک شي ، مداخله به محرک نشي.
کله چې AVR له مداخلي څخه وځي ، دا به تل اصلي برنامې ته راستون شي او مخکې له دې چې د کوم ناڅرګند مداخلې خدمت وشي ، یو بل لارښود اجرا کړي.
په یاد ولرئ چې د وضعیت راجسټریشن کله چې مداخله شوې معمول ته د ننوتلو پرمهال په اوتومات ډول نه ساتل کیږي ، او نه کله چې له مداخلې معمول څخه راستنیدو کې بیرته راستنیدل کیږي. دا باید د سافټویر لخوا اداره شي.
کله چې د مداخلو غیر فعالولو لپاره د CLI لارښوونې وکاروئ، مداخلې به سمدلاسه غیر فعال شي. د CLI لارښوونې وروسته به هیڅ ډول مداخله نه اجرا کیږي، حتی که دا د CLI لارښوونې سره یو ځای پیښ شي. لاندې پخوانيample ښیي چې دا څنګه کارول کیدی شي د EEPROM لیکلو ترتیب په وخت کې د مداخلې مخه ونیسي.
د مجلس کوډ Example |
په r16، SREG کې؛ د SREG ارزښت ذخیره کړئ
cli ; د مهال ویش په جریان کې مداخلې غیر فعال کړئ sbi EECR, EEMPE ; د EEPROM لیکل پیل کړئ sbi EECR, EEPE بهر SREG, r16 ; د SREG ارزښت بحال کړئ (I-bit) |
د سي کوډ Example |
char cSREG;
cSREG = SREG; /* د SREG ارزښت پلورنځي */ /* د مهال ویش په جریان کې مداخلې غیر فعال کړئ */ _ سي ایل آی ()؛ EECR |= (1< EECR | = (1 < SREG = cSREG; /* د SREG ارزښت بحال کړئ (I-bit) */ |
کله چې د مداخلو فعالولو لپاره د SEI لارښوونې وکاروئ، د SEI لاندې لارښوونې به د هر ډول پاتې مداخلې دمخه اجرا شي، لکه څنګه چې په دې مخ کې ښودل شوي.ample.
د مجلس کوډ Example |
sei ; د نړیوال مداخلې فعالول تنظیم کړئ
خوب خوب ته ننوتئ، د مداخلې په انتظار ؛ یادونه: د هرې منتظرۍ دمخه به خوب ته ننوځي ؛ مداخله کول |
د سي کوډ Example |
_SEI(); /* د نړیوال مداخلې فعالول تنظیم کړئ */
خوب /* خوب ته ننوځي، د مداخلې په انتظار*/ / * یادونه: د هرې پاتې مداخلې څخه مخکې خوب ته ننوځي * / |
مداخلې غبرګون وخت
د ټولو فعال شوي AVR مداخلو لپاره د وقتي اجرا کولو غبرګون څلور ساعته دورې لږترلږه دی. د څلور ساعتو دورانونو څخه وروسته د برنامه ویکتور پته د اصلي مداخلې اداره کولو معمول لپاره اجرا کیږي. د دې څلور ساعته دورې دورې په جریان کې ، د برنامه کاونټر په دلۍ کې فشار شوی. ویکتور معمولا د مداخلې معمول ته کود دی ، او دا کود درې ساعته دورې نیسي. که چیرې د څو دورې لارښوونې پلي کولو پرمهال مداخله واقع شي ، نو دا لارښود د مخه د مداخلې د خدمت کولو دمخه تکمیل کیږي. که چیرې مداخله واقع شي کله چې MCU د خوب حالت کې وي ، د وقفې اجرا کولو غبرګون وخت د څلورو ساعتونو دورې لخوا ډیریږي. دا زیاتوالی د ټاکل شوي خوب حالت څخه د پیل وخت سربیره راځي.
د مداخلې اداره کولو معمول څخه بیرته راستنیدنه څلور ساعته دورې اخلي. د دې څلور ساعتونو دورانونو په جریان کې ، د برنامه کاونټر (دوه بایټونه) له سټیک څخه پوپ شوی ، د سټیک پوټینټر د دوه لخوا وده شوی ، او په SREG کې I-bit ترتیب شوی.
د AVR یادونه
دا برخه په ATtiny25 / 45/85 کې مختلف یادونه بیانوي. د AVR جوړښت دوه اصلي حافظې ځایونه لري ، د معلوماتو حافظه او د برنامې حافظه ځای. سربیره پردې ، ATtiny25 / 45/85 د ډیټا ذخیره کولو لپاره د EEPROM حافظه ب .ه کوي. د حافظې ټولې درې ځایونه خطي او منظم دي.
په سیسټم کې د بیا پروګرام وړ وړ فلش برنامې یادداشت
په ATtiny25 / 45/85 کې د 2/4 / 8K بایټونه په ان سیپ کې په سیسټم کې د برنامه کولو لپاره د فلش حافظه له سره تنظیم کیږي. له هغه ځایه چې د AVR ټولې لارښوونې 16 یا 32 بیټونه پراخه دي ، فلش د 1024/2048/4096 x 16 په توګه تنظیم شوی.
د فلش حافظه لږترلږه 10,000،25 لیکلو / پاکولو دورونو برداشت لري. د ATtiny45 / 85/10 برنامه کاونټ (PC) د 11/12/1024 ټوټې پراخ دی ، پدې توګه د 2048/4096/XNUMX برنامې حافظې ځایونو ته خطاب کوي. "د یادونې برنامه - مخ "په 147 پا .ه" د SPI پنونو په کارولو سره د فلش ډیټا سریال ډاونلوډ کې تفصيلي توضیحات لري.
ثابت میزونه د ټول برنامې حافظې پته ځای کې تخصیص کیدی شي (LPM - د برنامه برنامې یادداشت لارښود توضیحات وګورئ).
شکل 5-1. د پروګرام د حافظې نقشه
د ارام ډیټا یادداشت
شکل 5-2 ښیې چې څنګه د ATtiny25 / 45/85 SRAM حافظه تنظیم شوې.
د ټیټ 224/352/607 ډیټا حافظې ځایونه دواړه راجسټر ته پته لري File، د I/O حافظه او داخلي ډاټا SRAM. لومړی 32 ځایونه د راجستر پته File، راتلونکی 64 ځایونه معیاري I/O حافظه ، او وروستي 128/256/512 ځایونه داخلي ډیټا SRAM ته ګوته نیسي.
د ډیټا حافظې پوښښ لپاره پنځه مختلف ادرس موډلونه: مستقیم، غیر مستقیم د بې ځایه کیدو سره، غیر مستقیم، غیر مستقیم د مخکی کمښت سره، او غیر مستقیم د وروسته زیاتوالی سره. په راجستر کې Fileد R26 څخه تر R31 پورې راجسترونه د غیر مستقیم ادرس پوائنټر راجسترونه ځانګړتیاوي.
مستقیم پته د ټول معلوماتو ځای ته رسي.
د بې ځایه کیدنې حالت سره غیر مستقیم د Y- یا Z- راجستر لخوا ورکړل شوي بیس پتې څخه 63 پته ځایونو ته رسي.
کله چې د راجسټر غیر مستقیم پتې حالتونه د اتومات ډول دمخه کمولو او وروسته اضافه کولو سره وکاروئ ، پته د X ، Y ، او Z راجستر کوي یا کم شوي.
د 32 عمومي هدف کاري راجسترونه، 64 I/O راجسترونه، او په ATtiny128/256/512 کې د داخلي ډیټا SRAM 25/45/85 بایټ ټول د دې ټولو پته کولو طریقو له لارې د لاسرسي وړ دي. راجستر File کې تشریح شوی “جنرال- د eral هدف راجستر File"په 10 پاڼه کې.
شکل 5-2. د ډیټا حافظې نقشه
ډیټا حافظې ته لاسرسی وختونه
دا برخه د داخلي حافظې لاسرسي لپاره د لاسرسي عمومي وخت مفکورې بیانوي. د داخلي معلوماتو SRAM لاسرسی په دوه clkCPU دوره کې ترسره کیږي لکه څنګه چې تشریح شوي شکل 5-3.
شکل 5-3. آن چپ ډیټا SRAM لاسرسي سایکلونه د EEPROM ډیټا حافظه
ATtiny25 / 45/85 د 128/256/512 ډیټا EEPROM حافظه بایټ لري. دا د جلا معلوماتو ډیټابیس ځای په توګه تنظیم شوی ، په کوم کې چې یوټ بایټونه لوستل کیدی شي. EEPROM د لږترلږه 100,000،XNUMX لیکلو / پاکولو دورونو برداشت لري. د EEPROM او CPU ترمنځ لاسرسی په لاندې ډول توضیح شوی ، د EEPROM پته راجسټرې ، د EEPROM ډیټا راجستر ، او EEPROM کنټرول راجستر مشخص کوي. د نورو معلوماتو لپاره وګورئ په 151 پا “ه کې "سریال ډاونلوډ کول".
د EEPROM لوستل / لیکلو لاسرسی
د EEPROM لاسرسي راجسټرې د I / O ځای کې د لاسرسي وړ دي.
د EEPROM لپاره د لیکلو لاسرسي وختونه په کې ورکړل شوي دي په 5 پا 1ه کې جدول 21-XNUMX. د ځان وخت کولو فعالیت، په هرصورت، د کاروونکي سافټویر ته اجازه ورکوي چې معلومه کړي کله چې راتلونکی بایټ لیکل کیدی شي. که چیرې د کارونکي کوډ لارښوونې ولري چې EEPROM لیکي، ځینې احتیاطي تدابیر باید ونیول شي. په پراخه کچه فلټر شوي بریښنا رسولو کې، VCC احتمال لري چې لوړ شي یا ورو ورو ښکته شي
بریښنا پورته / ښکته. دا د دې لامل کیږي چې وسیله د ځینې مودې لپاره په حجم کې چلیږيtagد کارول شوي ساعت فریکونسۍ لپاره د لږترلږه ټاکل شوي څخه ټیټ. وګورئ په 19 پا onه کې د "EEPROM اداري فساد مخنیوی" په دې شرایطو کې د ستونزو څخه د مخنیوي په اړه د توضیحاتو لپاره.
د دې لپاره چې د غیر ارادي EEPROM لیکنو مخنیوی وشي ، د لیکلو ځانګړې پروسه باید تعقیب شي. ته مراجعه وکړئ "اټومي د بایټ پروګرام کول ”په 17 پا .ه کې او په 17 پا “ه کې د سپلایټ بایټ برنامې ورکول پدې اړه توضیحاتو لپاره.
کله چې د EEPROM لوستل کیږي ، CPU د څلور ساعتونو دورې لپاره ودرول شي مخکې لدې چې راتلونکی لارښود اجرا شي. کله چې د EEPROM لیکل کیږي ، CPU د دوه ساعتونو دوران لپاره ځنډول کیږي مخکې لدې چې راتلونکی لارښود اجرا شي.
د اټومي بایټ پروګرام کول
د اټومي بایټ برنامې کارول خورا اسانه موډل دی. کله چې EEPROM ته بایټ لیکي ، کارونکی باید پته د EEAR راجستر کې او ډیټا په EED راجستر کې ولیکي. که چیرې د EEPMn ټوټې صفر وي ، د EEPE لیکل (د EEMP له لیکلو وروسته په څلورو دورو کې) به د پاکولو / لیکلو عملیات پیل کړي. د پاکولو او لیکلو دوره دواړه په یو عملیاتو کې ترسره کیږي او د برنامه کولو بشپړ وخت په کې ورکړل شوی په 5 پا 1ه کې جدول 21-XNUMX. د EEPE بټ تر هغه وخته پورې تنظیمیږي چې د پاکولو او لیکلو عملیات بشپړ شي. پداسې حال کې چې وسیله د برنامه کولو سره بوخته ده ، د EEPROM نورو عملیاتو ترسره کول امکان نلري.
د بیت برنامه ویشل
دا ممکنه ده چې په دوه مختلف عملیاتو کې د پاکولو او لیکلو دورې تقسیم کړئ. دا ممکن ګټور وي که چیرې سیسټم د ځینې محدودې مودې لپاره لنډ لاسرسي وخت ته اړتیا ولري (په ځانګړي ډول که چیرې د بریښنا رسولو حجمtage غورځېږي). د پرمختګ لپاره - tagد دې میتود څخه، دا اړینه ده چې هغه ځایونه چې لیکل کیږي باید د لیکلو عملیاتو څخه مخکې له منځه یوړل شي. مګر څرنګه چې د پاکولو او لیکلو عملیات ویشل شوي، نو دا ممکنه ده چې د پاکولو عملیات ترسره کړئ کله چې سیسټم د وخت مهم عملیات ترسره کولو ته اجازه ورکوي (په ځانګړې توګه د پاور اپ څخه وروسته).
پاکول
د بایټ له مینځه وړلو لپاره ، پته باید EEAR لیکل شوي وي. که چیرې د EEPMn ټوټې 0b01 وي ، د EEPE لیکل (د EEMP له لیکلو وروسته په څلورو دورو کې) یوازې د پاکولو عملیات رامینځته کوي (د پروګرام کولو وخت په کې ورکړل شوی دی جدول 5-1 په پاڼه 21). د EEPE بټ تر هغه وخته تنظیم کیږي چې د پاکولو عملیات بشپړ شي. پداسې حال کې چې وسیله په برنامه کې بوخته ده ، د EEPROM نورو عملیاتو ترسره کول امکان نلري.
ولیکئ
د موقعیت لیکلو لپاره ، کارن باید پته په EEAR او ډیټا EER کې ولیکي. که چیرې د EEPMn بټونه 0b10 وي ، د EEPE لیکل (د EEMP له لیکلو وروسته په څلورو دورو کې) به یوازې د لیکلو عملیه پیل کړي (برنامه کولو وخت په کې ورکول کیږي په 5 پا 1ه کې جدول 21-XNUMX). د EEPE بټ تر هغه وخته پورې تنظیمیږي چې د لیکلو چلښت بشپړ شي. که چیرې د لیکلو موقعیت د لیکلو دمخه له مینځه وړل شوی نه وي ، نو هغه معلومات چې زیرمه شوي باید له لاسه وتلي وګ .ل شي. پداسې حال کې چې وسیله د برنامه کولو سره بوخته ده ، د EEPROM نورو عملیاتو ترسره کول امکان نلري.
کلبریډ شوی آسیلټر د EEPROM لاسرسي وخت لپاره کارول کیږي. ډاډ ترلاسه کړئ چې د اوسیلټر فریکوینسي د اړتیا وړ اړتیاو کې شتون لري په کوم کې چې بیان شوي په page 31 پا onه کې "OSCCAL - د اور وژونکي کیلیبریشن راجستر".
لاندې کوډ examples د EEPROM د پاکولو، لیکلو، یا اټومي لیکلو لپاره یو مجلس او یو C فعالیت ښیې. د پخوانيamples فرض کړئ چې مداخلې کنټرول شوي (د مثال په توګه په نړیواله کچه د مداخلو غیر فعال کولو سره) نو د دې دندو د اجرا کولو پرمهال هیڅ ډول مداخلې نه پیښیږي.
د مجلس کوډ Example |
د EEPROM_writ:
؛ د تیرو لیکنو بشپړیدو ته انتظار وکړئ sbic EECR,EEPE rjmp EEPROM_write ؛ د پروګرام کولو اکر تنظیم کړئ ldi r16, (0<<EEPM1)|(0<<EEPM0) بهر EECR، r16 ؛ د پتې راجسټر کې پته (r18: r17) تنظیم کړئ بهر EEARH، r18 بهر EEARL، r17 ؛ ډیټا راجسټریشن ته ډاټا (r19) ولیکئ بهر EEDR، r19 ؛ EEPE ته منطقي ولیکئ sbi EECR, EEMPE ؛ د EEPE تنظیم کولو سره د ایپرم لیکل پیل کړئ sbi EECR,EEPE ret |
د سي کوډ Example |
باطل EEPROM_write(نه لاسلیک شوی چار ucAddress، نه لاسلیک شوی چار ucData)
{ /* د مخکینۍ لیکنې بشپړیدو ته انتظار وکړئ */ پداسې حال کې چې (EECR او (1< ; /* د پروګرام کولو حالت ترتیب کړئ */ EECR = (0 < / * د پته او ډاټا راجسټرې تنظیم کړئ * / EEAR = ucAdress؛ EEDR = ucData؛ /* EEMPE ته منطقي ولیکئ */ EECR | = (1 < / * د EEPE ترتیبولو سره د ایپرم لیکل پیل کړئ * / EECR | = (1 < } |
راتلونکی کوډ examples د EEPROM لوستلو لپاره اسمبلۍ او C افعال ښیې. د پخوانيamples فرض کړئ چې مداخلې کنټرول شوي ترڅو د دې دندو د اجرا کولو پرمهال هیڅ ډول مداخله ونه شي.
د مجلس کوډ Example |
EEPROM_ ولولئ:
؛ د تیرو لیکنو بشپړیدو ته انتظار وکړئ sbic EECR,EEPE rjmp EEPROM_read ؛ د پتې راجسټر کې پته (r18: r17) تنظیم کړئ بهر EEARH، r18 بهر EEARL، r17 ؛ د EEE په لیکلو سره ایپرم لوستل پیل کړئ sbi EECR, EERE ؛ د معلوماتو ثبت کولو څخه ډاټا لوستل په 16، EEDR کې ret |
د سي کوډ Example |
غیر لاسلیک شوی چار EEPROM_read(نه لاسلیک شوی چار ucAddress)
{ / * د مخکیني لیکلو بشپړیدو ته انتظار وکړئ * / پداسې حال کې چې (EECR & (1 < ; / * د پتې راجستر تنظیم کړئ * / EEAR = ucAdress؛ /* د EERE په لیکلو سره eeprom لوستل پیل کړئ */ EECR | = (1 < / * د معلوماتو له ثبت څخه ډاټا راوباسي * / بېرته EEDR؛ } |
د EEPROM اداري فساد مخنیوی
د ټیټ VCC دورې په جریان کې، د EEPROM ډاټا فاسد کیدی شي ځکه چې د عرضې حجمtage د CPU او EEPROM لپاره خورا ټیټ دی چې په سمه توګه کار وکړي. دا مسلې د EEPROM په کارولو سره د بورډ کچې سیسټمونو لپاره ورته دي، او ورته ډیزاین حلونه باید پلي شي.
د EEPROM ډیټا فساد د دوه حالتونو له امله رامینځته کیدی شي کله چې حجمtage ډیر ټیټ دی. لومړی، EEPROM ته د لیکلو منظم ترتیب لږترلږه حجم ته اړتیا لريtagد سم کار کولو لپاره. دوهم، CPU پخپله کولی شي لارښوونې په غلطه توګه اجرا کړي، که د عرضې حجمtage ډیر ټیټ دی.
د EEPROM ډیټا فساد په اسانۍ سره د دې ډیزاین سپارښتنې په پلي کولو سره مخنیوی کیدی شي:
د AVR RESET فعال وساتئ (ټيټ) د ناکافي بریښنا رسولو حجم په جریان کېtage. دا د داخلي براون آوټ کشف کونکي (BOD) په فعالولو سره ترسره کیدی شي. که چیرې د داخلي BOD کشف کچه سره سمون ونلري
د اړتیا د کشف کچه، یو بهرنی ټیټ VCC ریسیټ محافظت سرکټ کارول کیدی شي. که د لیکلو عملیات په جریان کې بیا تنظیم شي، د لیکلو عملیات به بشپړ شي په دې شرط چې د بریښنا رسولو حجمtage کافی دی.
I / O حافظه
د ATtiny25 / 45/85 I / O ځای تعریف په کې ښودل شوی په page Reg. پا “ه کې د "لنډیز ثبتول".
ټول ATtiny25 / 45/85 I / Os او پرزې د I / O ځای کې ځای په ځای شوي. ټول I / O ځایونه ممکن د LD / LDS / LDD او ST / STS / STD لارښوونو سره لاسرسی ومومي ، د 32 عمومي مقصد کاري راجسترونو او I / O ځای تر منځ د معلوماتو لیږدول. د پته حد کې 0x00 - 0x1F کې I / O راجسټرې د SBI او سي بي آی لارښوونو په کارولو سره په مستقیم ډول د لاسرسي وړ دي. پدې راجسترونو کې ، د واحد بیټونو ارزښت د SBIS او SBIC لارښوونو په کارولو سره چیک کیدی شي. د نورو جزیاتو لپاره د لارښود سیټ برخې ته مراجعه وکړئ. کله چې د I / O مشخص کمانډونه IN او OUT وکاروئ ، I / O پته 0x00 - 0x3F باید وکارول شي. کله چې د LD او ST لارښوونو په کارولو سره د I / O راجستریشنونو ډاټا ځای په توګه وینئ ، 0x20 باید پدې پته اضافه شي.
د راتلونکو وسیلو سره مطابقت لپاره ، خوندي شوي ټوټې باید صفر ته لیکل شي که چیرې لاسرسی ولري. د I / O حافظې پته باید هیڅکله ونه لیکل شي.
ځینې د حالت بیرغونه دوی ته د منطقي لیکلو په واسطه پاک شوي. په یاد ولرئ چې د سيګار او SBI لارښوونې به یوازې په ټاکل شوي بټ کار وکړي ، او له همدې امله د راجستر حالتونو کې کارول کیدی شي چې ورته دریځونه لري. د سي بي آی او SBI لارښوونې یوازې 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 | ایکس/۲ |
ټوټې 7: 1 - ریس: خوندي شوي بټونه
دا ټوټې د راتلونکي استعمال لپاره خوندي شوي او تل به د صفر په توګه لوستل کیږي.
بټونه 0 - EEAR8: EEPROM پته
دا د ایټیني 85 خورا مهم EEPROM پته بټ دی. په داسې وسیلو کې چې د EEPROM ټیټ وي ، د مثال په توګه ATtiny25 / ATtiny45 ، دا بټ خوندي شوی او تل به صفر لوستل کیږي. د EEPROM پتې راجستریشن لومړنی ارزښت ندی ټاکل شوی او مناسب قیمت باید د EEPROM لاسرسي دمخه لیکل شي.
EEARL - د EEPROM پته ثبت
بټ
0x1E | EEAR7 | EEAR6 | EEAR5 | EEAR4 | EEAR3 | EEAR2 | EEAR1 | EEAR0 | EEARL |
شا / لیکل | 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 پته راجستر لومړنی ارزښت ندی ټاکل شوی او مناسب قیمت باید د 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 | EEDR |
لوستل / لیکل | 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 ثبت کول هغه معلومات لري چې EEPROM ته لیکل شوي پته کې د EEAR راجستر لخوا ورکړل شوي. د EEPROM لوستلو عملیاتو لپاره ، EEDR هغه معلومات لري چې له
EEPROM پته چې د EEAR لخوا ورکړل شوې.
5.5.4 EECR - د EEPROM کنټرول ثبت |
|||||||||
بټ 7 6 5 | 4 | 3 | 2 | 1 | 0 | ||||
0x1C – | – | EEPM1 | EEPM0 | زړه راښکونکی | EEMP | EEPE | EEE | EECR | |
ولولئ / ولیکئ R R R / W | R/W | R/W | R/W | R/W | R/W | ||||
لومړنی ارزښت 0 0 X | X | 0 | 0 | X | 0 |
بټ 7 - ریس: خوندي شوی بټ
دا بټ د راتلونکي کارونې لپاره ساتل شوی او تل به د 0 په توګه په ATtiny25 / 45/85 کې لوستل شي. د راتلونکي AVR وسیلو سره مطابقت لپاره ، تل دا صفر ته صفر ولیکئ. د لوستلو وروسته ، دا څه ماسک کړئ.
بټ 6 - ریس: خوندي شوی بټ
دا بټ په ATtiny25 / 45/85 کې خوندي شوی او تل به د صفر په توګه لوستل کیږي.
ټوټې 5: 4 - EEPM [1: 0]: EEPROM برنامې حالت بټونه
د EEPROM برنامې حالت بټونه تنظیم کول د کوم برنامه کولو عمل تعریف کوي چې د EEPE لیکلو پر مهال به پیل شي. دا امکان لري چې په یوه اټومي عملیاتو کې ډاټا برنامه کړئ (زاړه ارزښت له مینځه ویسي او نوي ارزښت برنامه کړئ) یا د ایریز او لیکلو عملیات په دوه مختلف عملیاتو کې تقسیم کړئ. د مختلف حالتونو لپاره د برنامې وختونه په کې ښودل شوي جدول 5-1. پداسې حال کې چې EEPE ترتیب شوی ، EEPMn ته هر لیک به له پامه غورځول کیږي. د بیا میشته کیدو پرمهال ، د EEPMn بټونه به 0b00 ته بیا تنظیم شي پرته لدې چې EEPROM په برنامه بوخت وي.
جدول 5-1. د EEPROM موډ بټونه
EEPM1 | EEPM0 | د پروګرام کولو وخت | عملیات |
0 | 0 | 3.4 ms | پاکول او په یو عملیاتو کې لیکل (د اټومي عملیاتو) |
0 | 1 | 1.8 ms | یوازې پاکول |
1 | 0 | 1.8 ms | یوازې ولیکئ |
1 | 1 | – | د راتلونکي کارونې لپاره ساتل شوي |
بټ 3 - EERIE: EEPROM چمتو د مداخلې وړ
یو چا ته د EERIE لیکل د EEPROM چمتو چمتو مداخله وړ کوي که چیرې په SREG کې I-bit تنظیم شي. صفر ته د EERIE لیکل مداخله ناکاموي. د EEPROM ریډ مداخله یو دوامداره مداخله رامینځته کوي کله چې غیر غیر متوقع حافظه د برنامو لپاره چمتو وي.
بټ 2 - EEMP: EEPROM ماسټر برنامه وړول
د EEPE بټ مشخص کوي چې ایا یو ته د EEPE لیکل به اغیز ولري یا نه.
کله چې EEMPE تنظیم شوی وي ، د څلورو ساعتونو دورې دننه EEPE تنظیم کول به په ټاکل شوي پتې کې EEPROM برنامه کړي. که د EEPE صفر وي ، د EEPE تنظیم کول به هیڅ اغیزه ونلري. کله چې EEMPE د سافټویر لخوا یو ته لیکل شوی ، هارډویر د څلورو ساعتونو دورانونو وروسته صفر ته صفا کوي.
بټ 1 - EEPE: EEPROM برنامه فعال کړئ
د EEPROM برنامه د سیګنال وړ کول EEPE د EEPROM لپاره د برنامه وړ سګنل دی. کله چې EEPE لیکل شوی ، EEPROM به د EEPMn بټس ترتیباتو مطابق پروګرام شي. د EEPE بټ باید یو چا ته مخکې له دې چې لوژستیکي EEPE ته لیکل شوي وي باید ولیکل شي ، که نه نو د EEPROM لیکنه نه کیږي. کله چې د لیکلو لاسرسي وخت تیریږي ، د EEPE بټ د هارډویر لخوا پاک شوی. کله چې EEPE ترتیب شوی وي ، CPU د دوه دورانونو لپاره ودرول شي مخکې لدې چې راتلونکی لارښود اجرا شي.
Bit 0 - EERE: EEPROM د لوستلو وړتیا
د EEPROM لوستل وړ سیګنال - EERE - EEPROM ته د لوست سټروب دی. کله چې سم پته د EEAR راجستر کې تنظیم شوې وي ، د EEE بټ باید یو چا ته لیکل شوي وي ترڅو د EEPROM لوستلو محرک کړي. د EEPROM لوستلو لاسرسی یو لارښود نیسي ، او غوښتل شوې ډاټا سمدلاسه شتون لري. کله چې د EEPROM لوستل کیږي ، CPU د څلور لاریو لپاره ودرول شي مخکې لدې چې راتلونکی لارښود اجرا شي. کارن باید د لوستلو عملیات پیل کولو دمخه د EEPE بټ رایی ورکړي. که چیرې د لیکلو عملیه روانه وي ، نو د EEPROM لوستل ممکن نه دي ، او نه هم د EEAR راجستر بدلول.
د سیسټم ساعت او ساعت لاره
د ساعتونو سیسټمونه او د دوی توزیع
د CPU ساعت
د CPU ساعت د سیسټم برخو ته لیږدول کیږي چې د AVR کور عملیات پورې تړاو لري. Exampد دې ډول ماډلونو څخه د عمومي هدف راجستر دي File، د وضعیت راجستر او د ډیټا حافظه چې د سټیک پوینټر لري. د CPU ساعت ودرول کور د عمومي عملیاتو او محاسبې ترسره کولو څخه منع کوي.
I / O ساعت - clkI / O
د I / O ساعت د ډیری I / O ماډلونو لکه ټیمر / کاونټر لخوا کارول کیږي. د I / O ساعت هم د خارجي مداخلې ماډل لخوا کارول کیږي ، مګر یادونه وکړئ چې ځینې بهرني مداخلې د غیر عضوي منطق لخوا کشف شوي ، اجازه ورکوي داسې مداخلې حتی کشف شي حتی که د I / O ساعت مخه ونیول شي.
فلش ساعت - clkFLASH
د فلش ساعت د فلش انٹرفیس عملیات کنټرولوي. د فلش ساعت معمولا د CPU ساعت سره یو ځای فعال وي.
د ADC ساعت - clkADC
ADC د وقف شوي ساعت ډومین سره چمتو شوی. دا د ډیجیټل سرکټری لخوا رامینځته شوی غږ کمولو لپاره د CPU او I / O ساعتونو درولو ته اجازه ورکوي. دا د ADC تبادلې ډیر درست پایلې ورکوي.
د ګړندي پیرفیریل کلاک نسل لپاره داخلي PLL - clkPCK
په ATtiny25 / 45/85 کې داخلي PLL د ساعت فریکوینسي رامینځته کوي چې د سرچینې ان پټ څخه 8x ضربه ده. د ډیفالټ په واسطه ، PLL د سرچینې په توګه د داخلي ، 8.0 MHz RC oscillator محصول کاروي. په بدیل توګه ، که د PLLCSR بټ LSM تنظیم شوی وي PLL به د RC oscillator محصول په دوه سره وویشي. پدې توګه د PLL محصول ، ګړندی پریانکل ساعت 64 میګارتز دی. ګړندی پردی ساعت ، یا یو ساعت چې له هغې څخه ټاکل شوی ، د ټیمر / کاونټر 1 لپاره د ساعت سرچینې په توګه یا د سیسټم ساعت په توګه غوره کیدی شي. وګورئ شکل 6-2. کله چې د PLLCSR LSM ترتیب شوی وي د ګړندي پیری فیرل ساعت فریکونسۍ په دوه ویشل کیږي ، په پایله کې د ساعت فریکونسۍ 32 MHz کیږي. په یاد ولرئ چې LSM نشي تنظیم کیدی که چیرې PLLCLK د سیسټم ساعت په توګه وکارول شي.
شکل 6-2. د PCK کلیک کولو سیسټم.
PLL په RC آسیلټر پورې تړل شوی او د OSCAL راجستر له لارې د RC oscillator تنظیم کول به په ورته وخت کې ګړندي پرایفیر ساعت تنظیم کړي. په هرصورت ، حتی که د RC oscillator د 8 میګارتز څخه لوړې فریکونسۍ ته وړل کیږي ، د ګړندی د ساعت ساعت فریکونسۍ په 85 میګا ہرټز کې بریالی کیږي (ترټولو خرابه قضیه) او په اعظمي فریکونسۍ کې پاتې کیږي. دا باید په یاد ولرئ چې پدې حالت کې PLL نور د RC اوسیلټر ساعت سره لاک شوی نه دی. له همدې امله ، سپارښتنه کیږي چې د OSCAL تعدیلات د 8 میګاهټز څخه لوړې فریکونسۍ ته ونه لیږئ ترڅو PLL په سم عملیاتي حد کې وساتئ.
داخلي PLL فعال شوي کله چې:
په راجستر کې PLLE سایت PLLCSR تنظیم شوی.
د CKSEL فیوز '0001' ته برنامه شوی.
د CKSEL فیوز '0011' ته برنامه شوی.
د PLLCSR بټ PLOCK ټاکل کیږي کله چې PLL بند وي. دواړه داخلي RC oscillator او PLL په پاور ډاون او سټنډ بای خوب حالتونو کې بند شوي دي.
په ATtiny15 موافقت حالت کې داخلي PLL
لکه څنګه چې ATtiny25 / 45/85 د ATtiny15 کارونکو لپاره د مهاجرت وسیله ده د بیک وارډ مطابقت لپاره د ATtiny15 موافقت حالت شتون لري. د ATtiny15 موافقت حالت د CKSEL فیوز '0011' ته د برنامې په واسطه غوره شوی.
د ATtiny15 موافقت حالت کې د داخلي RC اوسیلټر فریکوینسي د 6.4 میګاهرتز ته ټیټ شوی او د PLL ضرب عنصر 4x ته ټاکل شوی. وګورئ شکل 6-3. د دې تعدیلاتو سره د کلیک کولو سیسټم د ATtiny15 سره مطابقت لري او نتیجه ګړندی د پردې ساعت د 25.6 میګا هرټز فریکونسۍ لري (ورته په ATtiny15 کې).
شکل 6-3. د ATtiny15 مطابقت حالت کې د PCK کلاک کولو سیسټم.
د ساعت سرچینې
وسیله د لاندې ساعت سرچینې اختیارونه لري ، د فلش فیوز بټونو لخوا انتخاب شوي لکه څنګه چې لاندې ښودل شوي. د ټاکل شوې سرچینې څخه ساعت د AVR ساعت جنریټر ته ننوت دی ، او مناسبو انډولونو ته رسیدلی.
جدول 6-1. د وسیلې د بندولو اختیارونه غوره کړئ
د وسیلې بندي کولو انتخاب | سي سي ايس اي ايل [۳:۰](1) |
بهرنی ساعت (وګورئ پاڼه 26) | 0000 |
د لوړې فریکونسۍ PLL ساعت (وګورئ پاڼه 26) | 0001 |
کالیریټ شوی داخلي اوسیدونکی (وګورئ پاڼه 27) | 0010(2) |
کالیریټ شوی داخلي اوسیدونکی (وګورئ پاڼه 27) | 0011(3) |
داخلي 128 kHz اورسیلټر (وګورئ پاڼه 28) | 0100 |
د ټیټ فریکونسۍ کریسټال اوسیلټر (وګورئ پاڼه 29) | 0110 |
کرسټال اورسیلټر / سرامیک ریزونټر (وګورئ پاڼه 29) | ۲۲۰ – ۲۴۰ |
ساتل شوی | 0101، 0111 |
د ټولو فیوزونو لپاره "1" پدې معنی چې غیر منظم شوي وي پداسې حال کې چې "0" پدې معنی دی چې برنامه شوي.
وسیله د دې انتخاب شوي انتخاب سره لیږل شوې.
دا به د ATtiny15 موافقت حالت غوره کړي ، چیرې چې د سیسټم ساعت د څلورو لخوا ویشل شوی ، په پایله کې د 1.6 میګاهټز ساعت د فریکونسۍ. د نورو زیاتو معلوماتو لپاره ، وګورئ په 27 پا “ه کې "Calibrated داخلي اوسیدونکي".
د هر کلیک کولو اختیار لپاره مختلف انتخابونه په لاندې برخو کې ورکړل شوي دي. کله چې CPU د بریښنا څخه راښکته کیږي ، نو د ټاکل شوي ساعت سرچینه د پیل وخت نیولو لپاره کارول کیږي ، د لارښوونې پلي کولو دمخه دمخه مستحکم اوسیلټر عملیات ډاډه کول. کله چې CPU د بیا ځای په ځای کیدو څخه پیل کوي ، یو اضافي ځنډ شتون لري چې د نورمال عملیاتو پیل کولو دمخه بریښنا ته مستحکم کچې ته رسیدو ته اجازه ورکوي. د څارډاډ اویسیلټر د پیل وخت د دې ریښتیني وخت برخې وخت ورکولو لپاره کارول کیږي. د هر وخت وتلو لپاره کارول شوي د WDT آسیلټر سائیکلونو شمیر په کې ښودل شوی جدول 6-2.
جدول 6-2. د واچ ډاگ اوسیلیټر سایکلونو شمیر
د وخت تیریدل | د سایکلونو شمیر |
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 MS | ګړندۍ وده |
10 | 6 سي | 14CK + 64 MS | ورو ورو راپورته کیدونکی ځواک |
11 | ساتل شوی |
کله چې د بهرني ساعت پلي کول ، دا اړین دی چې د تطبیق شوي ساعت فریکوینسي کې ناڅاپي بدلونونو مخه ونیسئ ترڅو د MCU مستحکم عملیات یقیني کړي. د یو ساعت ساعت څخه بل ته د 2 more څخه ډیر فریکونسي کې تغیر د غیر متوقع چلند لامل کیدی شي. دا اړینه ده چې ډاډ ترلاسه شي چې MCU د ساعت فریکوینسي کې د ورته بدلونونو په جریان کې په ریسیټ کې ساتل کیږي.
په یاد ولرئ چې د سیسټم کلاک پریسیل د داخلي ساعت فریکوینسي وختونو بدلونونو پلي کولو لپاره کارول کیدی شي پداسې حال کې چې لاهم باثباته عملیات ډاډمن کیږي. ته مراجعه وکړئ په 31 پا “ه کې د "سیسټم کلاک پریسکلر" د جزیاتو لپاره.
د لوړې فریکونسۍ PLL ساعت
یو داخلي PLL شتون لري چې د پیریفیریل ټیمر / کاونټر 64 کارولو او د سیسټم ساعت سرچینې لپاره د RC اوسیلټر ته په نامناسب ډول 1 میګا هرټز ساعت چمتو کوي. کله چې د سیسټم ساعت سرچینې په توګه وټاکل شي ، د CKSEL فیوز '0001' ته په برنامه کولو سره ، دا د څلورو په واسطه ویشل شوی لکه چې ښودل شوي جدول 6-4.
جدول 6-4. د لوړ فریکونسۍ PLL ساعت عملیاتي حالتونه
سي سي ايس اي ايل [۳:۰] | د نومیږي فریکوینسي |
0001 | 16 MHz |
کله چې د دې ساعت سرچینه وټاکل شي ، د پیل وختونه د SUT فیوز لخوا ټاکل کیږي لکه څنګه چې ښودل شوي جدول 6-5.
جدول 6-5. د لوړې فریکونسۍ PLL ساعت لپاره د پیل وخت
SUT[1:0] | د بریښنا څخه د پیل وخت | د پاور آن ریسیټ څخه اضافي ځنډ (VCC = 5.0V) | وړاندیز شوی کارول |
00 | 14CK + 1K (1024) CK + 4 MS | 4 ms | BOD فعال شوی |
جدول 6-5. د لوړې فریکونسۍ PLL ساعت لپاره د پیل وخت
SUT[1:0] | د بریښنا څخه د پیل وخت | د پاور آن ریسیټ څخه اضافي ځنډ (VCC = 5.0V) | وړاندیز شوی کارول |
01 | 14CK + 16K (16384) CK + 4 MS | 4 ms | ګړندۍ وده |
10 | 14CK + 1K (1024) CK + 64 MS | 4 ms | ورو ورو راپورته کیدونکی ځواک |
11 | 14CK + 16K (16384) CK + 64 MS | 4 ms | ورو ورو راپورته کیدونکی ځواک |
کالیریټ شوی داخلي اوسیدونکی
د ډیفالټ په واسطه، داخلي RC Oscillator نږدې 8.0 MHz ساعت وړاندې کوي. که څه هم voltage او د تودوخې پورې اړه لري، دا ساعت د کارونکي لخوا خورا دقیق کیلیبریټ کیدی شي. وګورئ "Calibrated داخلي RC اوسیلایټر محاسبه - پاcyه په 164 پا .ه او په page on. پا onه کې "د داخلي اوریدونکي سرعت" د نورو معلوماتو لپاره. وسیله د CKDIV8 فیوز برنامې سره لیږدول شوې. وګورئ په 31 پا “ه کې د "سیسټم کلاک پریسکلر" د نورو جزیاتو لپاره.
دا ساعت ممکن د CKSEL فیوز په برنامه کولو سره د سیسټم ساعت په توګه وټاکل شي لکه څنګه چې ښودل شوي په پا onه کې جدول 6-6
27. که ټاکل شوی وي ، نو دا به د هیڅ بهرني اجزاو سره عملیات وکړي. د بیا تنظیم کولو پرمهال ، هارډویر د OSCCAL راجستر کې د مخکې پروګرام شوي کیلیبریشن ارزښت کښته کوي او پدې توګه په اوتومات ډول د RC اوریسلیټر کلبریټ کوي. د دې اندازې درستي په کې د فابریکې کالیوالیشن په توګه ښودل شوي په 21 پا 2ه کې جدول 164-XNUMX.
د SW څخه د OSCCAL راجستر کې بدلون سره ، وګورئ په page 31 پا onه کې "OSCCAL - د اور وژونکي کیلیبریشن راجستر"، دا امکان لري چې د فابریکې د اندازې کارولو په پرتله د لوړ اندازې درستیت ترلاسه کړئ. د دې اندازې درک په کې د کارن کیلیبریشن په توګه ښودل شوی په 21 پا 2ه کې جدول 164-XNUMX.
کله چې دا اورسیلیټر د چپ ساعت په توګه وکارول شي ، نو د څار ډیسک اوسیدونکی به بیا هم د څار ټیمر او بیا تنظیم کولو وخت لپاره وکارول شي. د مخکې پروګرام شوي کیلیبریشن ارزښت په اړه د نورو معلوماتو لپاره ، برخه وګورئ “کاالی- په 150. page پا onه کې د bration بایټس ".
داخلي اورکیلیټر هم د "6.4" ته د CKSEL فیوز لیکلو سره د 0011 میګا هرټز ساعت چمتو کولو لپاره تنظیم کیدی شي ، لکه څنګه چې ښودل شوي جدول 6-6 لاندې. دا ترتیب د ATtiny15 موافقت وضعیت ته راجع شوی او موخه یې په 6.4 میګاهرتز کې د ساعت تیر شوي سرچینې چمتو کول دي ، لکه څنګه چې په ATtiny15 کې. د ATtiny15 موافقت حالت کې PLL د ټیمر / کاؤنټر 6.4 لپاره 25.6 میګا ہرټز د پیریفیریل ساعت سګنل رامینځته کولو لپاره په 1 میګا ہرټز کې داخلي داخلي اورکیلیټر کاروي (وګورئ) "8 بټ ټیمر / کاونټر 1 په په page 15 پا onه کې د ATtiny95 حالت "). په یاد ولرئ چې د عملیاتو پدې حالت کې د 6.4 میګاهرت ساعت سګنل تل د څلورو لخوا ویشل شوی ، د 1.6 میګاهټز سیسټم ساعت چمتو کوي.
جدول 6-6. د داخلي کیلیبریټ شوي RC اوسیلیټر عملیاتي حالتونه
سي سي ايس اي ايل [۳:۰] | د نومیږي فریکوینسي |
0010(1) | 8.0 MHz |
0011(2) | 6.4 MHz |
وسیله د دې انتخاب شوي انتخاب سره لیږل شوې.
دا ترتیب به د ATtiny15 موافقت حالت غوره کړي ، چیرې چې د سیسټم ساعت د څلورو لخوا ویشل شوی ، په پایله کې د 1.6 MHz ساعت فریکونسۍ.
کله چې کالبریټ 8 میګارتز داخلي اوسیلټر د ساعت سرچینې په توګه وټاکل شي د پیل وختونه د SUT فیوز لخوا ټاکل کیږي لکه څنګه چې ښودل شوي جدول 6-7 لاندې.
جدول 6-7. د داخلي کیلیبریټ شوي RC اوسیلیټر ساعت لپاره د پیل وخت
SUT[1:0] | د پیل کولو وخت د بریښنا څخه ښکته | د بیا تنظیم کولو څخه اضافي ځنډ (VCC = 5.0V) | وړاندیز شوی کارول |
00 | 6 سي | 14CK(1) | BOD فعال شوی |
01 | 6 سي | 14CK + 4 MS | ګړندۍ وده |
10(2) | 6 سي | 14CK + 64 MS | ورو ورو راپورته کیدونکی ځواک |
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 MS | |
01 | 6 سي | 14CK + 64 MS | |
10 | 6 سي | 14CK + 4 MS | |
11 | 1 سي | 14CK(1) |
یادونه: که چیرې RSTDISBL فیوز پروګرام شوی وي، نو د پیل کولو وخت به 14CK + 4 ms ته لوړ شي ترڅو ډاډ ترلاسه شي چې د پروګرام کولو حالت ته ننوتل کیدی شي.
په لنډیز کې ، د ATtiny15 موافقت حالت په اړه نور معلومات په برخو کې موندل کیدی شي "بندر B (PB5: PB0)" په پاڼه 2, په 15 پا onه کې "په ATtiny24 موافقت حالت کې داخلي PLL", "د 8 بټ ټیمر / کاونټر 1 په ATtiny15 حالت کې" آن پاڼه 95, په 140 پا onه کې د "ڈیبګ ویر محدودیتونه", په page 150. پا onه کې "انشانې بایټس" او په میز کې "د ساعت تیری کونکی په 33 XNUMX پا onه یې وټاکئ.
داخلي 128 kHz اورسیلټر
د 128 kHz داخلي اوسیلیټر یو ټیټ بریښنا اوسیلیټر دی چې د 128 kHz ساعت چمتو کوي. فریکونسۍ په 3V او 25 ° C کې نومول کیږي. دا ساعت کیدای شي د سیسټم ساعت په توګه وټاکل شي د CKSEL فیوز "0100" ته د پروګرام کولو له لارې.
کله چې د دې ساعت سرچینه وټاکل شي ، د پیل وختونه د SUT فیوز لخوا ټاکل کیږي لکه څنګه چې ښودل شوي جدول 6-9.
جدول 6-9. د 128 kHz داخلي اوسیلیټر لپاره د پیل وخت
SUT[1:0] | د پیل کولو وخت د بریښنا څخه ښکته | له ریسټ څخه اضافي ځنډ | وړاندیز شوی کارول |
00 | 6 سي | 14CK(1) | BOD فعال شوی |
01 | 6 سي | 14CK + 4 MS | ګړندۍ وده |
10 | 6 سي | 14CK + 64 MS | ورو ورو راپورته کیدونکی ځواک |
11 | ساتل شوی |
یادونه: که چیرې RSTDISBL فیوز پروګرام شوی وي، نو د پیل کولو وخت به 14CK + 4 ms ته لوړ شي ترڅو ډاډ ترلاسه شي چې د پروګرام کولو حالت ته ننوتل کیدی شي.
د ټیټ فریکونسۍ کریسټال اوسیلټر
د وسیلې لپاره د ساعت سرچینې په توګه د 32.768 kHz لید کرسټال کارولو لپاره ، د ټیټ فریکونسۍ کریسټال اوسیلټر باید د '0110' ته د CKSEL فیوز ترتیبولو سره وټاکل شي. کرسټال باید وصل وي لکه څنګه چې ښودل شوي شکل 6-5. د 32.768 kHz کریستال لپاره د مناسب بار وړلو ظرفیت موندلو لپاره ، مهرباني وکړئ د جوړونکي ډیټا شیټ سره مشوره وکړئ.
کله چې دا اوریدونکی وټاکل شي ، د پیل وختونه د SUT فیوز لخوا ټاکل کیږي لکه څنګه چې ښودل شوي جدول 6-10.
جدول 6-10. د ټیټ فریکونسی کرسټال اوسیلیټر ساعت انتخاب لپاره د پیل وخت
SUT[1:0] | د بریښنا څخه د پیل وخت | د بیا تنظیم کولو څخه اضافي ځنډ (VCC = 5.0V) | وړاندیز شوی کارول |
00 | 1K (1024) سي(1) | 4 ms | ګړندی راویښیدونکی ځواک یا BOD فعال شوی |
01 | 1K (1024) سي(1) | 64 ms | ورو ورو راپورته کیدونکی ځواک |
10 | 32K (32768) سي | 64 ms | په پیل کې مستحکم فریکوینسي |
11 | ساتل شوی |
یادونه: دا اختیارونه باید یوازې وکارول شي که چیرې په پیل کې د فریکونسۍ ثبات مهم نه وي.
د ټیټ فریکونسۍ کریسټال اوسیلټر د داخلي بوډ ظرفیت چمتو کوي ، وګورئ جدول 6-11 په هر یو TOSC پن کې.
جدول 6-11. د ټیټ فریکونسی کرسټال اوسیلیټر ظرفیت
وسیله | 32 kHz اوسک. ډول | کیپ (Xtal1 / Tosc1) | کیپ (Xtal2 / Tosc2) |
ایټینی 25/45/85 | سیسټم اوسک. | 16 pF | 6 pF |
کرسټال اورسیلټر / سرامیک ریزونټر
XTAL1 او XTAL2 په ترتیب سره د انډول کولو ان پټ او آوټ پوټ دي ampلایفیر چې د آن چپ اوسیلیټر په توګه د کارولو لپاره تنظیم کیدی شي ، لکه څنګه چې ښودل شوي شکل 6-5. کېدای شي یو کوارټز کرسټال یا د سیرامیک ریزونټر وکارول شي.
C1 او C2 باید تل د دواړو کرسټالونو او resonators لپاره مساوي وي. د capacitors مطلوب ارزښت د کرسټال یا ریزونټر په کارولو پورې اړه لري، د تار وړ ظرفیت اندازه، او د چاپیریال بریښنایی مقناطیسي شور. د کرسټالونو سره د کارولو لپاره د کیپسیټرونو غوره کولو لپاره ځینې لومړني لارښوونې په کې ورکړل شوي جدول 6-12 لاندې. د سیرامیک ریزونټرونو لپاره ، د تولید کونکي لخوا ورکړل شوي کاپسیټر ارزښتونه باید وکارول شي.
جدول 6-12. کرسټال اوسیلیټر عملیاتي حالتونه
سي سي ايس اي ايل [۳:۰] | د فریکونسۍ لړۍ (MHz) | د کریستالونو (pF) سره د کارولو لپاره د کاپایسیټر C1 او C2 لپاره وړاندیز شوی حد |
100(1) | ۲۲۰ – ۲۴۰ | – |
101 | ۲۲۰ – ۲۴۰ | ۲۲۰ – ۲۴۰ |
110 | ۲۲۰ – ۲۴۰ | ۲۲۰ – ۲۴۰ |
111 | ۵۱۸ – | ۲۲۰ – ۲۴۰ |
یادونه: دا اختیار باید د کرسټالونو سره ونه کارول شي، یوازې د سیرامیک ریزونټرونو سره.
اوسیلټر کولی شي په دریو مختلف حالتونو کې کار وکړي ، هر یو د ځانګړي فریکونسي حد لپاره مطلوب دی. عملیاتي حالت د فیوز CKSEL [3: 1] لخوا غوره شوی لکه څنګه چې ښودل شوي جدول 6-12.
CKSEL0 فیوز د SUT سره یوځای [1: 0] فیوز د پیل وخت ټاکي لکه څنګه چې ښودل شوي جدول 6-13.
جدول 6-13. د کریسټال اوسیلیټر ساعت انتخاب لپاره د پیل وخت
د CKSEL0 معرفي کول | SUT[1:0] | د پیل کولو وخت د بریښنا څخه ښکته | له ریسټ څخه اضافي ځنډ | وړاندیز شوی کارول |
0 | 00 | 258 سي(1) | 14CK + 4 MS | سیرامیک ریزونټر ، ګړندۍ وده کوي |
0 | 01 | 258 سي(1) | 14CK + 64 MS | سیرامیک ریزونټر ، ورو ورو راپورته کیدونکی ځواک |
0 | 10 | 1K (1024) سي(2) | 14CK | د سیرامیک ریزونټر ، BOD فعال شوی |
0 | 11 | 1K (1024) سي(2) | 14CK + 4 MS | سیرامیک ریزونټر ، ګړندۍ وده کوي |
1 | 00 | 1K (1024) سي(2) | 14CK + 64 MS | سیرامیک ریزونټر ، ورو ورو راپورته کیدونکی ځواک |
1 | 01 | 16K (16384) سي | 14CK | کرسټال اوسیلټر ، BOD فعال شوی |
1 | 10 | 16K (16384) سي | 14CK + 4 MS | کرسټال اورسیلټر ، ګړندۍ وده کوي |
1 | 11 | 16K (16384) سي | 14CK + 64 MS | کرسټال اورسیلټر ، ورو ورو راپورته کیدونکی ځواک |
یادښتونه
دا اختیارونه باید یوازې وکارول شي کله چې د وسیلې اعظمي فریکونسي ته نږدې کار نه کوي ، او یوازې هغه مهال چې په پیل کې د فریکوینسي ثبات د غوښتنلیک لپاره مهم نه وي. دا اختیارونه د کرسټالونو لپاره مناسب ندي.
دا اختیارونه د سیرامیک ریزونټرونو سره د کارونې لپاره دي او په پیل کې به د فریکوینسي ثبات ډاډمن کړي. دا د کرسټالونو سره هم کارول کیدی شي کله چې د وسیله اعظمي فریکوینسي ته نږدې کار نه کوي ، او که چیرې په پیل کې د فریکوینسي استقامت د غوښتنلیک لپاره مهم نه وي.
د اصلي ټکی سرچینه
وسیله د CKSEL = "0010"، SUT = "10"، او CKDIV8 پروګرام سره لیږدول کیږي. د ډیفالټ ساعت سرچینې ترتیب له همدې امله د داخلي RC Oscillator دی چې په 8 MHz کې د خورا اوږد پیل وخت سره چلیږي او د سیسټم لومړني ساعت 8 پریکلینګ کوي ، چې پایله یې د 1.0 MHz سیسټم ساعت دی. دا ډیفالټ ترتیب دا یقیني کوي چې ټول کاروونکي کولی شي د ان-سیسټم یا لوړ حجم په کارولو سره د دوی مطلوب ساعت سرچینې تنظیم کړيtage پروګرامر.
سیسټم ساعت ساعت
د ATtiny25 / 45/85 سیسټم ساعت د تنظیم کولو له لارې ویشل کیدی شي په پاKه 32 کې "سی ایل کی پی آر - د ساعت ګیرۍ ثبت کول". دا خصوصیت د بریښنا مصرف کمولو لپاره کارول کیدی شي کله چې د پروسس بریښنا اړتیا ټیټه وي. دا د ټولو ساعت سرچینې اختیارونو سره کارول کیدی شي، او دا به د CPU د ساعت فریکونسۍ او ټول همغږي پردیو باندې اغیزه وکړي. clkI/O، clkADC، clkCPU، او clkFLASH د فکتور لخوا ویشل شوي لکه څنګه چې ښودل شوي په 6 پا 15ه کې جدول 33-XNUMX.
د بدلولو وخت
کله چې د پریکلر ترتیبات ترمینځ تغیر کول ، د سیسټم کلاک پریسکلر ډاډ ترلاسه کوي چې د ساعت سیسټم کې هیڅ ډول عواقب شتون نلري او دا چې د ترمینځ هیڅ تعدد نه د پخوانۍ ترتیب سره سم د ساعت فریکونسۍ څخه لوړ وي ، او نه هم د ساعت ترتیب د نوي ترتیب سره ورته دی.
د رپپل کاونټ چې د پریساکلر پلي کوي د نه منل شوي ساعت فریکونسۍ پرمخ وړي ، کوم چې ممکن د CPU ساعت فریکونسۍ څخه ګړندی وي. لدې امله ، دا امکان نلري چې د نسخې وضعیت وټاکي - حتی که دا د لوستلو وړ وی ، او دقیقا وخت چې د یو ساعت ساعت برخې څخه بلې ته بدل شي ، دقیقا اټکل کیدی نشي.
د هغه وخت څخه چې د CLKPS ارزښتونه لیکل کیږي ، دا د T1 + T2 او T1 + 2 * T2 ترمینځ وخت نیسي مخکې لدې چې د نوي ساعت فریکوینسي فعاله وي. پدې وقفه کې ، د دوه فعال ساعت کنجونه تولید شوي. دلته ، T2 د پخوانۍ ساعت وخت دی ، او T1 هغه وخت دی چې د نوي پریکلر ترتیب سره ورته دی.
د ګړی وتلو بفر
وسیله کولی شي د سیسټم ساعت په CLKO پن کې تولید کړي (کله چې د XTAL2 پن په توګه نه کارول کیږي). د محصول فعالولو لپاره ، CKOUT فیوز باید برنامه شي. دا حالت مناسب دی کله چې د چپ ساعت په سیسټم کې د نورو سرکټو چلولو لپاره وکارول شي. په یاد ولرئ چې ساعت د رسیټ په جریان کې نشي تولید کیدی او دا چې د I / O پن عادي عملیات به له سره واوړي کله چې فیوز پروګرام شوی وي. د داخلي RC اوسیلټر ، WDT اوریسیټر ، PLL ، او بهرني ساعت (CLKI) غوره کیدی شي کله چې ساعت په CLKO کې محصول وي. کرسټال oscillators (XTAL1 ، XTAL2) په CLKO کې د ساعت ساعت محصول لپاره نشي کارول کیدی. که د سیسټم کلاک پریسکلر وکارول شي ، دا د سیسټم ویشل شوی ساعت دی چې محصول دی.
ثبت ثبت کړئ
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]: د اور وژونکي اندازې ارزښت
د Oscillator Calibration راجستر د اوسیدونکي فریکوینسي څخه د پروسې توپیرونه لرې کولو لپاره د Calibrated داخلي RC اوسیلټر ټرم کولو لپاره کارول کیږي. د مخکې پروګرام شوي کیلیبریشن ارزښت پخپله د چپ ریسیټ په جریان کې دې راجستر ته لیکل کیږي ، د فابریکې کیلیبریټ فریکوینسي وړاندې کوي لکه څنګه چې په ګوته شوي په 21 پا 2ه کې جدول 164-XNUMX. د غوښتنلیک سافټویر کولی شي دا راجستر ولیکي ترڅو د اوسیلټر فریکوینسي بدل کړي. اورکسیټر کولی شي فریکونسیو ته Calibrate شي لکه څنګه چې په کې اشاره شوې په 21 پا 2ه کې جدول 164-XNUMX. د دې حد څخه بهر کیلیبریشن تضمین ندي.
په یاد ولرئ چې دا اورولټر د EEPROM او فلش لیکلو لاسرسي وختونو کې کارول کیږي ، او دا لیکلو وختونه به د دې مطابق اغیزمن شي. که چیرې د EEPROM یا فلش لیکل شوي وي ، له 8.8 میګاهټز څخه ډیر ته کبریټ مه کوئ. نور ، د EEPROM یا فلش لیکل ممکن ناکام شي.
CAL7 بټ د اور وژونکي لپاره د عملیاتو اندازه ټاکي. د دې بټ تنظیم کول 0 ته د ټیټ فریکوینسي حد درکوي ، د دې بټ 1 ته ترتیب کول د لوړې فریکونسۍ حد درکوي. د دوه فریکونسۍ حدونه ډیر پیچل کیږي ، په بل عبارت د OSCCAL = 0x7F تنظیم کول د OSCCAL = 0x80 څخه لوړه فریکونسۍ وړاندې کوي.
د CAL [6: 0] ټوټې په ټاکل شوي حد کې د فریکونسۍ ټون کولو لپاره کارول کیږي. د 0x00 تنظیم کول پدې حد کې ترټولو ټیټ فریکوسیسي ورکوي ، او د 0x7F ترتیب د حد کې لوړې فریکونسۍ ورکوي.
د دې لپاره چې د MCU مستحکم عملیات یقیني کړو نو د اندازې ارزښت باید په کوچني بدل شي. له یوې دورې څخه بلې ته د 2 more څخه ډیر فریکونسي کې تغیر د غیر متوقع چلند لامل کیدی شي. په OSCCAL کې تغیرات باید د هرې اندازې لپاره 0x20 څخه زیات نشي. دا اړینه ده چې ډاډ ترلاسه شي چې MCU د ساعت فریکوینسي کې د ورته بدلونونو په جریان کې په ریسیټ کې ساتل کیږي
جدول 6-14. د داخلي RC Oscillator فریکونسی رینج
د OSCCAL ارزښت | د نومیالۍ فریکوینسي ته په درناوي د ټیټ ټیټ ټیټ تعدد | د نومیالۍ فریکوینسي ته په درناوي د عالي عالي فریکونسۍ |
0x00 | 50% | 100% |
0x3F | 75% | 150% |
0x7F | 100% | 200% |
CLKPR - د ساعت ساعت دمخه ثبت
بټ | 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 - CLKPCE: د ساعت تیری کونکي بدل کول
د CLKPCE بټ باید د منطق لپاره لیکل شوي وي ترڅو د CLKPS بټ بدلولو وړ کړي. د CLKPCE بټ یوازې هغه وخت تازه کیږي کله چې په CHKP کې نور بیټونه په یوځل صفر ته لیکل شوي. CLKPCE د لیکلو وروسته یا کله چې د CLKPS بټونه لیکل کیږي د هارډویر څلور دورې څخه پاک شوي. پدې وخت کې دننه د CLKPCE سایت لیکل نه د وخت وخت وغځوي ، او نه د CLKPCE بټ پاکول.
ټوټې 6: 4 - ریس: خوندي شوي بټونه
دا ټوټې په ATtiny25 / 45/85 کې بټونه خوندي دي او تل به د صفر په توګه لوستل کیږي.
ټوټې 3: 0 - CLKPS [3: 0]: د ساعت پریشاکر بټونه 3 - 0 غوره کړئ
دا بټونه د ټاکل شوي ساعت سرچینې او داخلي سیسټم ساعت ترمنځ وایو د تقسیم فکتور تعریفوي. دا بټونه د پلي کیدو وخت لیکل کیدی شي ترڅو د غوښتنې غوښتنو سره سم د ساعت فریکوینسي توپیر وکړي. لکه څنګه چې ډیوډر MCU ته د ماسټر ساعت ان پټ توزیع کوي ، نو د ټولو همغږۍ پیرودو سرعت کم شوی کله چې د برخې عنصر کارول کیږي. د ویش عوامل په کې ورکړل شوي دي جدول 6-15.
د ساعت د فریکونسۍ غیر ارادي تغیراتو څخه مخنیوي لپاره ، باید د ځانګړي لیکلو کړنالره تعقیب شي د CLKPS ټوټې بدلولو لپاره:
د کلاک پریسکلر بدلون وړتیا (CLKPCE) بټ یو او نورو ټولو بیټونو ته په CLKPR کې صفر ته ولیکئ.
په څلورو دورانونو کې ، مطلوب ارزښت CLKPS ته ولیکئ پداسې حال کې چې CLKPCE ته صفر لیکئ.
مداخلې باید غیر فعالې شي کله چې د نسخه ترتیب بدل کړئ ترڅو ډاډ ترلاسه کړئ چې د لیکلو پروسه مداخله نه کیږي.
د CKDIV8 فیوز د CLKPS بټونو لومړنی ارزښت ټاکي. که چیرې CKDIV8 غیر پروګرام شوی وي، د CLKPS بټونه به "0000" ته بیا تنظیم شي. که چیرې CKDIV8 پروګرام شوی وي، د CLKPS بټونه په "0011" کې بیا تنظیم شوي، په پیل کې د اتو ویشلو فکتور ورکوي. دا فیچر باید وکارول شي که چیرې د ټاکل شوي ساعت سرچینه په اوسني عملیاتي شرایطو کې د آلې د اعظمي فریکونسۍ څخه لوړه فریکونسۍ ولري. په یاد ولرئ چې کوم ارزښت د CKDIV8 فیوز ترتیب پرته د CLKPS بټونو ته لیکل کیدی شي. د غوښتنلیک سافټویر باید ډاډ ترلاسه کړي چې د کافي ویش فکتور دی
غوره شوی که چیرې ټاکل شوی ساعت سرچینه په موجوده عملیاتي شرایطو کې د وسیلې له اعظمي فریکوینسي څخه لوړه فریکونسي ولري. وسیله د CKDIV8 فیوز برنامې سره لیږدول شوې.
جدول 6-15. د ساعت پریکالر انتخاب
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 مطابقت حالت کې غیر فعال دی او نه CLKPR ته لیکل کیږي، او نه هم د CKDIV8 فیوز پروګرام کول د سیسټم په ساعت باندې هیڅ اغیزه نلري (کوم چې به تل 1.6 MHz وي).
د بریښنا اداره کول او د خوب حالت
د لوړې فعالیت او صنعت مخکښ کوډ موثریت د AVR مایکرو کنټرولرانو ته د ټیټ بریښنا غوښتنلیکونو لپاره غوره انتخاب اړوي. سربیره پردې ، د خوب حالتونه غوښتنلیک ته وړتیا ورکوي په MCU کې غیر استعمال شوي ماډلونه وتړي ، پدې توګه د بریښنا سپمول. AVR مختلف خوب حالتونه وړاندې کوي چې کارونکي ته اجازه ورکوي د غوښتنې غوښتنو ته د بریښنا مصرف ګنډي.
د خوب حالت
په 6 پا onه 1-23 شکل مختلف ساعت سیسټمونه او د دوی توزیع په ATtiny25 / 45/85 کې وړاندې کوي. ارقام د مناسب خوب کولو حالت غوره کولو کې ګټور دي. جدول 7-1 د خوب بیلابیل حالتونه او د دوی ویښ سرچینې ښیې.
جدول 7-1. د خوب په مختلف حالتونو کې د فعال ساعت ډومینونه او د ویښ کیدو سرچینې
د فعال کلاک ډومینونه | oscillators | د ویښتو سرچینې | ||||||||||
د خوب حالت | 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 لارښود باید اجرا شي. د SM [1: 0] ټوټې د MCUCR راجستر کې بټونه غوره کوي چې کوم خوب حالت (ایډیل ، ADC شور کمولو یا د بریښنا لاندې) به د SLEEP لارښوونې لخوا فعال شي. وګورئ جدول 7-2 د لنډیز لپاره.
که چیرې فعال مداخله رامینځته شي پداسې حال کې چې MCU د خوب حالت کې وي ، MCU ویښ کیږي. MCU بیا د پیل کولو وخت سربیره د څلورو دورو لپاره ودرول کیږي، د مداخلې معمول اجرا کوي، او د SLEEP وروسته لارښوونې څخه اجرا کول بیا پیل کوي. د راجستر محتويات File او SRAM هغه وخت نه بدلیږي کله چې وسیله له خوبه پاڅیږي. که چیرې د خوب حالت په جریان کې بیا تنظیم شي ، MCU راویښ کیږي او د ریسیټ ویکتور څخه اجرا کوي.
یادونه: که چیرې د لیول محرک مداخله د بیدارۍ لپاره کارول کیږي نو بدل شوی کچه باید د یو څه وخت لپاره وساتل شي ترڅو MCU راویښ کړي (او د MCU لپاره د وقفې خدماتو معمول ته ننوځي). وګورئ "بهرنۍ مداخلې" په 49 پا .ه کې د جزیاتو لپاره.
ناسمه حالت
کله چې د SM [1:0] بټونه 00 ته ولیکل شي، د SLEEP لارښوونه MCU د غیر فعال حالت ته ننوځي، د CPU ودروي مګر د انلاګ پرتله کونکي، ADC، USI، ټایمر/کاونټر، واچ ډاګ، او مداخلې سیسټم ته اجازه ورکوي چې کار ته دوام ورکړي. خوړل دا د خوب حالت اساسا د clkCPU او clkFLASH مخه نیسي ، پداسې حال کې چې نورو ساعتونو ته د چلولو اجازه ورکوي.
ایډل موډ MCU ته وړتیا ورکوي چې د بهرني محرک مداخلو څخه راښکته شي او همدارنګه د ټایمر جریان په څیر داخلي وي. که چیرې د انلاګ پرتله کونکي مداخلې څخه ویښته اړتیا نه وي ، نو د انلاګ پرتله کونکي کولی شي د ACD بټ په ترتیبولو سره لاندې ځواک لاندې شي "ACSR - د انلاګ پرتله کونکي کنټرول او حالت راجستر" په 120 پا .ه. دا به په ایډل حالت کې د بریښنا مصرف کم کړي. که ADC فعال شوی وي ، نو تبادله په اوتومات ډول پیل کیږي کله چې دا حالت داخل شي.
د ADC شور کمولو حالت
کله چې SM [1:0] بټونه 01 ته ولیکل شي، د SLEEP لارښوونه MCU ته د ADC شور کمولو حالت ته ننوځي، د CPU ودروي مګر ADC، بهرنۍ مداخلې، او واچ ډاگ ته اجازه ورکوي چې کار ته دوام ورکړي (که فعال وي). دا د خوب حالت clkI/O، clkCPU، او clkFLASH ودروي، پداسې حال کې چې نورو ساعتو ته د چلولو اجازه ورکوي.
دا د ADC لپاره د شور چاپیریال ته وده ورکوي ، د لوړ تحلیل اندازه کولو وړوي. که ADC فعال شوی وي ، نو تبادله په اوتومات ډول پیل کیږي کله چې دا حالت داخل شي. د ADC تبادلې بشپړ مداخله تشکیل کړئ ، یوازې بهرنی ریسیټ ، د څار ډلې ریسیټ ، د براون آوټ ریسیټ ، د SPM / EEPROM چمتو مداخله ، په INT0 کې د بهرنۍ کچې مداخله یا د پن بدلون مداخله کولی شي MCU د ADC شور کمولو څخه راوباسي. حالت
د بریښنا ښکته اکر
کله چې د SM [1: 0] ټوټې 10 ته لیکل کیږي ، د SLEEP لارښوونې MCU ته د ځواک ښکته حالت ته ننوځي. پدې حالت کې ، اوریسټر ودرول شو ، پداسې حال کې چې بهرني مداخلې کوي ، USI د حالت کشف پیل کوي او د څار ډګ فعالیت کوي (که چیرې فعال وي). یوازې یو بهرنی ریسیټ ، د څار کڅوړه ریسیټ ، یو نسواري رسیټ ، USI د حالت مداخله ، په INT0 کې د بهرنۍ کچې مداخله یا د پن بدلون مداخله کولی شي MCU راویښ کړي. دا خوب حالت ټول تولید شوي ساعتونه ځنډوي ، یوازې د عضله کار ماډلونو عملیاتو ته اجازه ورکوي.
د سافټویر BOD ناتوان
کله چې د براون آوټ ډیکټور (BOD) د BODLEVEL فیوزونو لخوا فعال شي (وګورئ په 20 پا 4ه کې جدول 148-XNUMXBOD په فعاله توګه د اکمالاتو حجم څارنه کويtagد خوب په موده کې. په ځینو وسیلو کې دا ممکنه ده چې د پاور-ډاون سلیپ حالت کې د سافټویر په واسطه د BOD غیر فعالولو سره بریښنا خوندي کړئ. د خوب حالت بریښنا مصرف به بیا په ورته کچه وي کله چې BOD په نړیواله کچه د فیوزونو لخوا غیر فعال وي.
که BOD د سافټویر لخوا غیر فعال وي، د خوب حالت ته د ننوتلو وروسته سمدلاسه د BOD فعالیت بندیږي. د خوب څخه پاڅیدو سره ، BOD په اتوماتيک ډول بیا فعال کیږي. دا خوندي عملیات تضمینوي که چیرې د خوب په جریان کې د VCC کچه راټیټه شوې وي.
کله چې BOD معلول شوی وي ، نو د خوب حالت څخه راپاڅیدل وخت به له RESET څخه د پاڅولو لپاره ورته وي. کارونکي باید په لاسي ډول د ویښ وخت وختونه تنظیم کړي لکه د بینډګاپ حواله د پیل کولو وخت لري او BOD په سمه توګه کار کوي مخکې لدې چې MCU کوډ اجرا کړي. SUT [1: 0] او CKSEL [3: 0] فیوز بټونه په میز کې وګورئ په 149 پا Lowه کې "فیوز ټیټ بایټ"
د BOD غیر فعال د MCU کنټرول راجستر BODS (BOD خوب) لخوا کنټرول شوی ، وګورئ “MCUCR - د MCU کنټرول په 37 پا onه کې راجستر کړئ. دې ته یو څه ته لیکل په پاور ډاون کې BOD بندوي ، پداسې حال کې چې د صفر لیکل BOD فعال ساتي. د ډیفالټ ترتیب صفر دی ، د بیلګې په توګه BOD فعال.
د BODS بیټ ته لیکل د وخت په ترتیب او د وړ وړ بټ لخوا کنټرول کیږي ، وګورئ "MCUCR - د MCU کنټرول راجسټر - ter "په 37 پا .ه.
محدودیتونه
په لاندې وسیلو کې د BOD غیر فعال فعالیت پلي شوی ، یوازې:
ATtiny25 ، بیاکتنه E ، او نوي
ATtiny45، بیاکتنه D ، او نوي
ATtiny85 ، بیاکتنه C ، او نوي
بیاکتنې د آلې په کڅوړه کې نښه شوي او په لاندې ډول موندل کیدی شي:
د کڅوړو 8P3 او 8S2 لاندې اړخ
د پیکج 20M1 پورته اړخ
د بریښنا کمولو راجسټریشن
د بریښنا کمولو راجسټریشن (PRR) ، وګورئ په 38 پا onه کې "PRR - د بریښنا کمولو راجسټریشن"، انفرادي پیرودونو ته د ساعت تیریدو سره د بریښنا مصرف کمولو لپاره میتود چمتو کوي. د تادیې اوسنی حالت کنګل دی او د I / O راجستر نشي لوستلی یا لیکلی نشي. د پیری فیل لخوا کارول شوي سرچینې کله چې د ساعت تیریدو مخه ونیسي نو قبضه پاتې کیږي ، نو له همدې امله پردې باید په ډیری قضیو کې د ساعت تیریدو دمخه غیر فعال شي. د ماډل بیدل ، کوم چې په PRR کې د بټ پاکولو سره ترسره کیږي ، ماډل په ورته حالت کې د بند دمخه په توګه ساتي.
د ماډل بندول په بشپړ ډول د بریښنا مصرف کمولو لپاره په ایډل حالت او فعال حالت کې کارول کیدی شي. د نورو ټولو خوب حالتونو کې ، ساعت دمخه ودرول شو. وګورئ په 177 پا onه کې "د I / O ماډلونو اوسني تحویلي چمتو کړئ" د مثال لپارهamples.
د بریښنا مصرف کمول
ډیری مسلې شتون لري چې په پام کې ونیول شي کله چې د AVR کنټرول سیسټم کې د بریښنا مصرف کمولو هڅه کول وي. په عموم کې ، د خوب حالتونه باید د امکان تر حده وکارول شي ، او د خوب حالت باید وټاکل شي ترڅو د وسیلې د وظیفې څخه لږ تر لږه کار وکړي. ټولې دندې چې اړتیا ورته نلري باید غیر فعال شي. په ځانګړي توګه ، لاندې ماډلونه ممکن ځانګړي پاملرنې ته اړتیا ولري کله چې د بریښنا ترټولو ټیټ احتمالي مصرف ترلاسه کولو هڅه کول.
انلاګ ته ډیجیټل کنورټر
که چیرې فعال شي ، ADC به په ټولو خوب حالتونو کې فعال شي. د بریښنا خوندي کولو لپاره ، ADC باید د خوب حالت ته د ننوتلو دمخه غیر فعال شي. کله چې ADC بنده شي او بیا چالان شي ، نو راتلونکی تبادله به یو اوږد بدلون وي. ته مراجعه وکړئ 122 پا pageه کې "ډیجیټل کنورټر ته انلاګونه" د ADC عملیاتو په اړه توضیحاتو لپاره.
انلاګ پرتله کونکی
کله چې غیر فعال حالت ته ننوځي، د انلاګ پرتله کوونکی باید غیر فعال شي که نه کارول کیږي. کله چې د ADC شور کمولو حالت ته ننوځي ، د انلاګ پرتله کوونکی باید غیر فعال شي. د خوب په نورو حالتونو کې، د انلاګ پرتله کوونکی په اتوماتيک ډول غیر فعال دی. په هرصورت، که د انلاګ پرتله کوونکی د داخلي حجم کارولو لپاره ترتیب شوی ويtagد انپټ په توګه حواله، د انلاګ پرتله کوونکی باید د خوب په ټولو حالتونو کې غیر فعال شي. که نه نو، د داخلي حجمtage حواله به فعاله شي، د خوب حالت څخه خپلواک. ته مراجعه وکړئ په page 119 page پا “ه کې "انلاګ پرتله کونکی" د انلاګ پرتله کونکي تنظیم کولو څرنګوالي تفصيلاتو لپاره.
د نسواري رژیم کشف کونکی
که چیرې په غوښتنلیک کې د براون آوټ ډیټیکټر ته اړتیا نه وي ، نو دا ماډل باید بند شي. که چیرې د براون آوټ کشف کونکي د BODLEVEL فیوز لخوا فعال شي ، نو دا به د خوب په ټولو حالتونو کې فعال شي ، او له همدې امله تل بریښنا مصرفوي. د ژور خوب حالت کې ، دا به د ټول اوسني مصرف کې د پام وړ برخه واخلي. وګورئ "نسواري وتل جاسوس- په 41 XNUMX مخ او په پا pageه 35 کې "سافټویر BOD غیر فعال" د براون آؤټ ډیکټور تنظیم کولو څرنګوالي په اړه توضیحاتو لپاره.
داخلي ټوکtage حواله
د داخلي ټوکtage حواله به فعاله شي کله چې د براون آوټ کشف ، انلاګ پرتله کونکي یا ADC لخوا اړتیا وي. که چیرې دا ماډلونه غیر فعال وي لکه څنګه چې په پورته برخو کې تشریح شوي، داخلي حجمtage حواله به غیر فعاله شي او دا به بریښنا مصرف نکړي. کله چې بیا فعال شي، کاروونکي باید د محصول کارولو دمخه د پیل کولو لپاره حواله ته اجازه ورکړي. که حوالې د خوب په حالت کې وساتل شي، نو محصول سمدلاسه کارول کیدی شي. ته مراجعه وکړئ داخلي حجمtagپه 42 پاڼه کې د حوالې د پیل وخت په اړه توضیحاتو لپاره.
د څار ټیمر
که چیرې د غوښتنلیک کې د څار ټیمر ته اړتیا نه وي ، نو دا ماډل باید بند شي. که چیرې د څار ټیمر فعال شي ، نو دا به په ټولو خوب حالتونو کې فعال شي ، او له همدې امله تل بریښنا مصرف کړئ. د ژور خوب حالت کې ، دا به د ټول اوسني مصرف کې د پام وړ برخه واخلي. ته مراجعه وکړئ په 42 XNUMX پا onه کې "د څار ټیمر" د څارډاک ټیمر تنظیم کولو څرنګوالي په اړه توضیحاتو لپاره.
پورټ پنونه
کله چې د خوب حالت ته ننوځي، ټول پورټ پنونه باید د لږترلږه بریښنا کارولو لپاره تنظیم شي. بیا ترټولو مهم شی دا دی چې ډاډ ترلاسه کړئ چې هیڅ پنونه مقاومت لرونکي بارونه نه چلوي. د خوب په حالتونو کې چیرې چې دواړه I/O ساعت (clkI/O) او ADC ساعت (clkADC) ودرول شوي، د وسیلې ان پټ بفرونه به غیر فعال شي. دا ډاډ ورکوي چې هیڅ بریښنا نه مصرف کیږي
د ننوت منطق لخوا کله چې اړتیا نه وي. په ځینو مواردو کې ، د راڅرګندیدونکي شرایطو کشف کولو لپاره ننوت منطق ته اړتیا ده ، او
دا به بیا فعال شي. برخې ته مراجعه وکړئ په 57 XNUMX مخ کې "ډیجیټل ننوت وړ او د خوب حالت" د جزیاتو لپاره چې کوم پنونه فعال شوي دي. که د ان پټ بفر فعال شوی وي او د ان پټ سیګنال په جریان کې پاتې وي یا د VCC/2 سره نږدې د انلاګ سیګنال کچه ولري ، د ان پټ بفر به ډیر ځواک وکاروي.
د انلاګ ان پټ پنونو لپاره، ډیجیټل ان پټ بفر باید هر وخت غیر فعال وي. په ان پټ پن کې VCC/2 ته نږدې د انلاګ سیګنال کچه حتی په فعال حالت کې هم د پام وړ جریان لامل کیدی شي. د ډیجیټل ان پټ بفرونه د ډیجیټل ان پټ غیر فعال راجستر (DIDR0) ته په لیکلو سره غیر فعال کیدی شي. ته مراجعه وکړئ په 0 پا onه کې "DIDR0 - د ډیجیټل ننوت راجستر 121 غیر فعال کړئ" د جزیاتو لپاره.
ثبت ثبت کړئ
MCUCR - د MCU کنټرول ثبت
د MCU کنټرول راجستر د بریښنا مدیریت لپاره کنټرول بټونه لري.
بټ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | د BODS | د PUD | SE | SM1 | SM0 | BODSE | 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 |
Bit 7 - BODS: BOD خوب
د BOD غیر فعال فعالیت په ځینو وسیلو کې شتون لري ، یوازې. وګورئ په پا 36ه XNUMX "محدودیتونه".
د خوب پرمهال د BOD غیر فعال کولو لپاره (وګورئ په 7 پا 1ه کې جدول 34-XNUMX) د BODS بټ باید د یو منطق لپاره لیکل شي. دا د مهال ویش ترتیب او وړ وړ بټ ، MCUCR کې BODSE لخوا کنټرول کیږي. لومړی ، دواړه BODS او BODSE باید یو ته تنظیم شي. دوهم ، د څلور ساعتونو دورې دننه ، BODS باید یو ته تنظیم شي او BODSE باید صفر ته تنظیم شي. د BODS بټ د تنظیم کیدو وروسته درې ساعته دورې فعال دی. د خوب لارښوونه باید اجرا شي پداسې حال کې چې BODS فعال وي ترڅو د خوب خوب حالت لپاره BOD بند کړي. د BODS بیټ د درې ساعت سایټونو وروسته په اوتومات ډول پاک شوی.
په وسیلو کې چیرې چې خوب کول BOD ندي پلي شوي دا یو څه نه کارول کیږي او تل به صفر لوستل کیږي.
بټ 5 - SE: د خوب توان
د SE بټ باید منطق ته ولیکل شي ترڅو MCU د خوب حالت ته ننوځي کله چې د SLEEP لارښوونې اجرا کیږي. د دې لپاره چې MCU د خوب حالت ته ننوځي پرته لدې چې دا د برنامې هدف وي ، سپارښتنه کیږي چې د SLEEP لارښوونو پلي کولو دمخه یو ته د Sleep Enable (SE) بټ ولیکئ او د ویښیدو وروسته سمدلاسه پاک کړئ.
ټوټې 4: 3 - SM [1: 0]: د خوب حالت د 1 او 0 ټوټې وټاکئ
دا ټوټې د درې موجود خوب حالتونو ترمینځ غوره کوي لکه څنګه چې ښودل شوي جدول 7-2.
جدول 7-2. د خوب حالت غوره کړئ
SM1 | SM0 | د خوب حالت |
0 | 0 | بې کاره |
0 | 1 | د ADC شور کمول |
1 | 0 | ځواک - ښکته |
1 | 1 | ساتل شوی |
Bit 2 - BODSE: د BOD خوب کول
د BOD غیر فعال فعالیت په ځینو وسیلو کې شتون لري ، یوازې. وګورئ په پا 36ه XNUMX "محدودیتونه".
د BODSE بټ د BODS کنټرول بټ تنظیمولو وړ کوي ، لکه څنګه چې د BODS بټ توضیح کې تشریح شوي. د BOD ناتوان کول د وخت سره سم کنټرول کیږي.
دا بټ په وسیلو کې نه کارول کیږي چیرې چې د سافټویر BOD غیر فعال نه دی پلي شوی او په دې وسیلو کې به د صفر په حیث لوستل شي.
PRR - د بریښنا کمولو راجستر
د بریښنا کمولو راجستر د ساعت ضایع کولو سیګنالونو ته اجازه ورکولو سره د بریښنا مصرف کمولو لپاره میتود چمتو کوي.
بټ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x20 | – | – | – | – | PRTIM1 | PRTIM0 | PRUSI | PRADC | د PRR |
لوستل / لیکل | R | R | R | R | R/W | R/W | R/W | R/W | |
ابتدايي ارزښت | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
ټوټې 7: 4 - ریس: خوندي شوي بټونه
دا ټوټې په ATtiny25 / 45/85 کې بټونه خوندي دي او تل به د صفر په توګه لوستل کیږي.
بټ 3 - PRTIM1: د بریښنا کمولو وخت / کاونټر 1
دې بټ ته د منطق لیکل د ټایمر / کاونټر 1 انډول بندوي. کله چې ټیمر / کاونټر 1 فعال شي ، عملیات به د بند څخه دمخه دوام ولري.
بټ 2 - PRTIM0: د بریښنا کمولو وخت / کاونټر 0
دې بټ ته د منطق لیکل د ټایمر / کاونټر 0 انډول بندوي. کله چې ټیمر / کاونټر 0 فعال شي ، عملیات به د بند څخه دمخه دوام ولري.
بټ 1 - PRUSI: د بریښنا کمولو USI
دې بیټ ته د یو منطق لیکل د ماډل ته د ساعت تیریدو سره USI بندوي. کله چې USI بیرته راویښ شي ، USI باید بیا پیل شي ترڅو د مناسب عملیاتو ډاډ ترلاسه شي.
بټ 0 - PRADC: د بریښنا کمولو ADC
دې بټ ته د منطق لیکل د ADC بندوي. ADC باید د بندیدو دمخه نافعال شي. په یاد ولرئ چې د ADC ساعت د انلاګ پرتله کونکي ځینې برخې لخوا هم کارول کیږي ، پدې معنی چې د انلاګ پرتله کونکي نشي کارول کیدی کله چې دا بټ لوړ وي.
د سیسټم کنټرول او تنظیم
د AVR تنظیمول
د بیا میشته کیدو پرمهال ، ټول I / O راجستر خپل لومړني ارزښتونو ته ټاکل شوي ، او برنامه د ریسیټ ویکتور څخه اجرا کول پیل کوي. د ریسیټ ویکتور کې ځای شوي لارښوونې باید د RJMP - اړونده کود - د بیا تنظیم کولو سمبالولو لارښود ته لارښوونه وي. که برنامه هیڅکله مداخله سرچینه نه کړي ، د مداخلې ویکتورونه ندي کارول کیږي ، او د برنامو منظم کوډ پدې ځایونو کې کیدی شي. د شکل 8-1 د ارامولو منطق ښیې. د بیا میشته سرکيټکي بریښنایی پارامترونه په کې ورکړل شوي دي په 165 پا onه کې "سیسټم او د ځانګړتیاو رییس کول".
شکل 8-1 منطق بیا تنظیم کړئ
د AVR I / O بندرګاهونه سمدلاسه خپل لومړني حالت ته بیاییږي کله چې د ریسټ سرچینه فعاله شي. دا اړتیا نلري کوم ساعت سرچینه روانه وي.
وروسته له هغه چې ټولې بیا تنظیم شوې سرچینې غیر فعاله شوې وي ، د ځنډ مخنیوی غوښتل کیږي ، داخلي بیا تنظیم کولو ته وده ورکوي. دا ځواک ته اجازه ورکوي چې عادي عملیات پیل کیدو دمخه مستحکم کچې ته ورسي. د ځنډ ضد وخت مهال ویش د کارونکي لخوا د SUT او CKSEL فیوزونو له لارې تعریف شوی. د ځنډ دورې لپاره مختلف انتخابونه په کې وړاندې شوي "ساعت سرچینې ”په 25 پا .ه.
سرچینې بیا تنظیم کړئ
ایټینی 25/45/85 د بیا تنظیم کولو څلور سرچینې لري:
د پاور آن ریسیټ. MCU بیا تنظیم شوی کله چې د عرضې حجمtage د پاور آن ری سیٹ حد (VPOT) لاندې دی.
خارجي ریسیټ. MCU بیا تنظیم شوی کله چې ټیټه کچه په RESET پن کې د لږترلږه نبض اوږدوالي څخه اوږدې مودې لپاره شتون ولري.
د څار کتل بیا تنظیمول. MCU بیا تنظیم شوی کله چې د څارډاک ټیمر موده پای ته رسي او د څار ډګ فعال شي.
براون-آؤټ ری سیٹ. MCU بیا تنظیم شوی کله چې د عرضې حجمtage VCC د براون آوټ ری سیٹ حد (VBOT) څخه ښکته دی او د براون آوټ ډیټیکټر فعال شوی.
د بریښنا په اړه ریسیټ
د پاور آن ریسیټ (POR) نبض د آن چپ د موندلو سرکټ لخوا رامینځته کیږي. د کشف کچه په کې تعریف شوې "سییس- په 165 پا onه کې tem او ځانګړتیاوې بیا تنظیم کړئ. POR فعاله کیږي کله چې VCC د کشف کچې څخه ښکته وي. د POR سرکټ د سټارټ اپ ری سیٹ کولو لپاره کارول کیدی شي، او همدارنګه د اکمالاتو حجم کې د ناکامۍ موندلو لپارهtage.
د پاور آن ریسیټ (POR) سرکټ ډاډ ورکوي چې وسیله د پاور آن څخه ری سیٹ شوې ده. د پاور آن ریسیټ حد ته رسیدل حجمtage د ځنډ کاونټر غوښتنه کوي، کوم چې دا ټاکي چې وسیله د VCC لوړیدو وروسته په RESET کې څومره وخت ساتل کیږي. د RESET سیګنال بیا فعال کیږي، پرته له کوم ځنډ، کله چې VCC د کشف کچې څخه ټیټ شي.
انځور 8-2. د MCU پیل کول، د VCC سره تړل شوي RESET
داخلي بیا رغونه
شکل 8-3. د MCU پیل کول، په بهر کې بیا غزول شوي
خارجي ریسیټ
یو خارجي ریسیټ د ټیټ کچې لخوا په RESET پن کې رامینځته کیږي که چیرې فعال شي. د لږترلږه نبض له اندازې څخه اوږده دانې بیا تنظیم کړئ (وګورئ په 165 پا onه کې "سیسټم او د ځانګړتیاو رییس کول") به یو ری سیٹ تولید کړي، حتی که ساعت نه وي. لنډ دالونه د بیا تنظیم کولو تضمین ندي. کله چې پلي شوی سیګنال د بیا تنظیم کولو حد ته ورسیږيtage – VRST – په مثبت اړخ کې، د ځنډ کاونټر د وخت پای ته رسیدو وروسته MCU پیل کوي.
انځور 8-4. د عملیاتو په جریان کې بهرنۍ ری سیٹ
د نسواري رژیم کشف
ATtiny25/45/85 د عملیاتو په جریان کې د VCC کچه د یوې ثابت محرک کچې سره پرتله کولو سره د څارنې لپاره آن چپ براون آوټ کشف (BOD) سرکټ لري. د BOD لپاره د محرک کچه د BODLEVEL فیوز لخوا ټاکل کیدی شي. د محرک کچه یو هیسټریسیس لري ترڅو ډاډ ترلاسه کړي چې د سپیک وړیا براون آوټ کشف یقیني کوي. د کشف په کچه کې هیسټریسیس باید د VBOT + = VBOT + VHYST/2 او VBOT- = VBOT - VHYST/2 په توګه تشریح شي.
کله چې BOD فعال شي، او VCC د محرک کچې څخه ټیټ ارزښت ته راټیټیږي (VBOT- in شکل 8-5)، براون آوټ ری سیٹ سمدلاسه فعال شو. کله چې VCC د محرک کچې څخه لوړ شي (VBOT+ in شکل 8-5)، د ځنډ کاونټر د TTOUT د وخت پای ته رسیدو وروسته MCU پیل کوي.
د BOD سرکټ به یوازې په VCC کې کمښت کشف کړي که حجمtage د TBOD په پرتله د اوږدې مودې لپاره د محرک کچې لاندې پاتې کیږي په 165 پا onه کې "سیسټم او د ځانګړتیاو رییس کول".
د څار کتل بیا تنظیمول
کله چې د څارنې وخت پای ته ورسیږي، دا به د یو CK دورې دورې لنډ ری سیٹ نبض تولید کړي. د دې نبض په ښکته څنډه کې، د ځنډ ټایمر د ټایم آوټ دورې tTOUT شمیرل پیلوي. ته مراجعه وکړئ په 42 XNUMX پا onه کې "د څار ټیمر" د څار ټیمر د عملیاتو په اړه توضیحاتو لپاره.
والیtagد حوالې سیګنالونه او د پیل وخت فعال کړئ
ټوکtage حواله د پیل وخت لري چې کیدای شي په هغه طریقه اغیزه وکړي چې باید وکارول شي. د پیل وخت ورکړل شوی دی په 165 پا onه کې "سیسټم او د ځانګړتیاو رییس کول". د بریښنا خوندي کولو لپاره ، حواله تل نه چلیږي. انعکاس د لاندې شرایطو په جریان کې دی:
کله چې BOD فعال شي (د BODLEVEL برنامه کولو سره [2: 0] فیوز بټونه).
کله چې د بینډګاپ حواله د انلاګ پرتله کونکي سره وصل شي (په ACSR کې د ACBG بټ ترتیبولو سره).
کله چې ADC فعال شي.
په دې توګه ، کله چې BOD فعال نه وي ، د ACBG بټ تنظیم کولو یا ADC وړولو وروسته ، کارونکي باید تل د موازنې ته اجازه ورکړي مخکې له دې چې د انلاګ پرتله کونکي یا ADC څخه د محصول کارولو دمخه پیل شي. د بریښنا ښکته حالت کې د بریښنا کنټرول کمولو لپاره ، کارن کولی شي پورته درې شرایطو څخه مخنیوی وکړي ترڅو ډاډ ترلاسه کړي چې مراجعه د پاور - ښکته حالت ته د ننوتلو دمخه بنده شوې.
د څار ټیمر
د څار ډیم ټیمر د آن چپ اویسیلټر څخه کلیک شوی دی چې په 128 kHz کې پرمخ ځي. د واچډګ ټایمر پریسکلر کنټرولولو سره ، د واچډګ ریسیټ وقفه تنظیم کیدی شي لکه څنګه چې ښودل شوي په 8 پا 3ه کې جدول 46-XNUMX. د WDR - د څارډاکټ ریسیټ - لارښود د څار ټیمر بیا تنظیم کوي. د څار ډیم ټایمر هم بیا تنظیم کیږي کله چې دا معلول شوی وي او کله چې د چپ ریسیټ واقع شي. د مختلف وخت ساعت تیریدو دورې ټاکل کیدی شي د بیا تنظیم کولو موده وټاکي. که چیرې د بیا میشته کیدو موده د بل څار کونکي ریسیټ پرته پای ته ورسیږي ، نو د ATtiny25 / 45/85 بیا ځای په ځای کوي او د ریسټ ویکټر څخه اعدام کیږي. د څار د تنظیم په تنظیم شوي وخت د توضیحاتو لپاره ، مراجعه وکړئ په 8 پا 3ه کې جدول 46-XNUMX.
د څار ډیم ټایمر د تنظیم کولو پرځای د مداخلې رامینځته کولو لپاره هم تنظیم کیدی شي. دا کیدی شي خورا ګټور وي کله چې د واک - ډاون څخه راویښولو لپاره د واچډګ کارول.
د ناڅاپي څارنې ناڅاپي مخنیوي یا د وخت وخت غیر ارادي بدلېدو مخنیوي لپاره ، د خوندیتوب دوه مختلف کچې د فیوژن WDTON لخوا غوره شوي لکه څنګه چې ښودل شوي جدول 8-1 ته مراجعه وکړئ "د کنفرانس د بدلون لپاره مهال ویش په 43 XNUMX پا onه کې د څار ډلې ټایمر پېژندنه د جزیاتو لپاره.
جدول 8-1. د WDTON د فیوز ترتیباتو د فعالیت په توګه د WDT ترتیب
ډبلیو ډي ټون | د خوندیتوب کچه | د WDT لومړنی ریاست | د WDT غیر فعالولو څرنګوالی | وخت څنګه بدل کړو |
غیر منظم شوی | 1 | معلول | د وخت په ترتیب | هیڅ محدودیت نشته |
پروګرام شوی | 2 | فعال شوی | تل فعال شوی | د وخت په ترتیب |
انځور 8-7. د څار ټیمر
د څار ټیم ټیمر تنظیم کولو کې بدلون لپاره د وخت وختونه
د ترتیب بدلولو ترتیب دوه د خوندیتوب کچو ترمینځ یو څه توپیر لري. د هرې کچې لپاره جلا پروسیژرونه بیان شوي.
د خوندیتوب کچه 1: په دې حالت کې، د څار ټیمر په پیل کې غیر فعال شوی، مګر پرته له کوم محدودیت څخه یو ته د WDE بټ لیکلو سره فعال کیدی شي. یو وخت ترتیب ته اړتیا ده کله چې د فعال واچډوګ ټیمر غیر فعال کړئ. د فعال واچډوګ ټایمر غیر فعالولو لپاره ، لاندې کړنلاره باید تعقیب شي:
په ورته عملیاتو کې ، WDCE او WDE ته یو منطق ولیکئ. یو منطق باید WW ته ولیکل شي - د WDE بیټ پخواني ارزښت څخه لږ په پام کې نیولو سره.
د راتلونکو څلورو ساعتونو دورانونو په جریان کې ، په ورته عملیاتو کې ، د WDE او WDP بټونه لکه څنګه چې غواړئ ولیکئ ، مګر د WDCE بټ پاک شو.
د خوندیتوب کچه 2: پدې حالت کې، د څار ټیمر تل فعال وي، او د WDE بټ به تل د یو په توګه لوستل کیږي. یو وخت ترتیب ته اړتیا ده کله چې د Watchdog د وخت پای موده بدله شي. د څارنې مهال ویش بدلولو لپاره، لاندې پروسیجر باید تعقیب شي:
په ورته عملیاتو کې ، WDCE او WDE ته یو منطقي ولیکئ. حتی که څه هم WDE تل ترتیب شوی وي ، WDE باید یو ته لیکلي وي ترڅو د مهال ویش ترتیب پیل کړي.
د راتلونکو څلورو ساعتونو دورانونو په جریان کې ، په ورته عملیاتو کې ، د WDP بټونه لکه څنګه چې غوښتل یې ولیکئ ، مګر د WDCE بټ پاک شو. د WDE بیټ ته لیکل شوي ارزښت غیر متعلق دی.
کوډ Example
لاندې کوډ example د WDT بندولو لپاره یو مجلس او یو C فعالیت ښیې. د پخوانيample ګومان کوي چې مداخلې کنټرول کیږي (د مثال په توګه په نړیواله کچه د مداخلو غیر فعال کولو سره) نو د دې دندو اجرا کولو پرمهال هیڅ ډول مداخلې نه پیښیږي.
د مجلس کوډ Example(1) |
WDT_off:
ډبلیو ډي آر ؛ په 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 کې WDRF پاک کړئ */ MCUSR = 0x00 /* WDCE او WDE ته منطقي ولیکئ */ WDTCR |= (1< / * WDT بند کړئ / WDTCR = 0x00؛ } |
یادونه: 1. وګورئ "کوډ Exampپه 6 پاڼه کې.
ثبت ثبت کړئ
MCUSR - د MCU حالت راجستر
د MCU حالت راجستر معلومات چمتو کوي چې په کومې سرچینې د MCU ریسیټ لامل شوي.
بټ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x34 | – | – | – | – | WDRF | BORF | EXTRF | PORF | MCUSR |
لوستل / لیکل | R | R | R | R | R/W | R/W | R/W | R/W |
لومړنی ارزښت 0 0 0 0 د بټ توضیحات وګورئ
ټوټې 7: 4 - ریس: خوندي شوي بټونه
دا ټوټې په ATtiny25 / 45/85 کې بټونه خوندي دي او تل به د صفر په توګه لوستل کیږي.
بټ 3 - WDRF: د څار ریډ پرچم
دا بټ تنظیم شوی که چیرې د واچډګ ریسیټ واقع شي. بټ د پاور آن ریسیټ له لارې تنظیم شوی ، یا پرچم ته د منطق صفر لیکلو سره.
Bit 2 - BORF: نسواري رېسټ بیرغ
دا بټ تنظیم شوی که چیرې د براون آوټ ریسیټ واقع شي. بټ د پاور آن ریسیټ له لارې تنظیم شوی ، یا پرچم ته د منطق صفر لیکلو سره.
بټ 1 - EXTRF: د ریسیټ بیرغ
دا بټ تنظیم شوی که چیرې یو بهرني ریسیټ واقع شي. بټ د پاور آن ریسیټ له لارې تنظیم شوی ، یا پرچم ته د منطق صفر لیکلو سره.
بټ 0 - PORF: د رسی پر بيرته سمبالول
دا بټ تنظیم شوی که چیرې د بریښنا په اړه ریسیټ واقع شي. بټ یوازې پرچم ته د منطق صفر لیکلو سره تنظیم شوی.
د بیا میشته کیدو حالت پیژندلو لپاره د ریسیټ بgsو کارولو لپاره ، کارونکی باید ژر تر ژره په برنامه کې MCUSR لوستل او بیا تنظیم کړي. که چیرې راجستر مخکې له دې چې یو بل رییس رامینځته شي پاک شوی وي ، د ریسیټ سرچینه کیدی شي د ریسټ پرچمونو معاینه کولو سره ومومي.
WDTCR - د څار ټیمر کنټرول راجستر
بټ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x21 | WDIF | WDIE | WDP3 | WDCE | ډبلیو ډي ای | WDP2 | WDP1 | WDP0 | WDTCR |
لوستل / لیکل | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
ابتدايي ارزښت | 0 | 0 | 0 | 0 | X | 0 | 0 | 0 |
Bit 7 - WDIF: د څار ټیم وخت وقفه بیرغ بیرغ
دا بټ تنظیم شوی کله چې د څار وخت ټیمر کې وخت ضایع کیږي او د څارډاک ټیمر د مداخلې لپاره ترتیب شوی. WDIF د هارډویر لخوا پاک شوی کله چې اړونده مداخله اداره کولو ویکټر اجرا کول. په بدیل سره ، WDIF بیرغ ته د منطق په لیکلو سره پاک شوی. کله چې په SREG او WDIE کې I-bit تنظیم شي ، نو د څار وخت وخت بهر مداخله اجرا کیږي.
بټ 6 - WDIE: د څار ټیم وخت وقفه فعال کول
کله چې دا بټ یو ته لیکل شوی ، WDE پاک شوی ، او د حالت په راجسټر کې I-bit ترتیب شوی ، د څارډاک وخت وخت مداخله فعاله شوې. پدې حالت کې اړونده مداخله د ریسیټ پرځای اجرا کیږي که چیرې د څار ټګ ټیمر کې وخت تیریږي.
که WDE ترتیب شوی وي ، WDIE په اوتومات ډول د هارډویر لخوا پاک شوی کله چې یو وخت پیښ شي. دا د څار ډیسټ ریسیټ امنیت ساتلو لپاره ګټور دی پداسې حال کې چې مداخله کاروي. وروسته له هغه چې د WDIE بټ پاک شي ، بل ځل به بیا تنظیم کول رامینځته شي. د څار ډګ ریسیټ څخه مخنیوي لپاره ، WDIE باید د هر مداخلې وروسته تنظیم شي.
جدول 8-2. د څار ټیمر ترتیب
ډبلیو ډي ای | WDIE | د څار ټیمر ایالت | وخت پر وخت عمل |
0 | 0 | ودرېده | هیڅ نه |
0 | 1 | چلول | مداخله |
1 | 0 | چلول | بیا تنظیم کړئ |
1 | 1 | چلول | مداخله |
بټ 4 - WDCE: د واچډګ بدلون وړ کول
دا بټ باید تنظیم شي کله چې د WDE بټ د منطق صفر ته لیکل کیږي. که نه ، نو څارګره به معلول نه شي. یوځل چې یو چا ته لیکل شوی ، هارډویر به دا څلور ساعته دورې وروسته پاک کړي. د WDW بټ توضیحاتو ته مراجعه وکړئ د څار ډیسک غیر فعال پروسې لپاره. دا بټ باید هم تنظیم شي کله چې د نسخې بټونو بدلولو. وګورئ "مهال ویش په 43 پا onه کې د څار ټګ ټیمر ترتیب بدلولو لپاره.
بټ 3 - WDE: د څار کونکي وړ کول
کله چې WDE یو منطق ته لیکل شوی وي ، نو د څار ټیمر فعال شوی ، او که WDE د منطق صفر ته لیکل شوی وي ، نو د واچ ټګ ټیمر فعالیت غیر فعال دی. WDE یوازې پاک کیدی شي که چیرې د WDCE بیټ د منطق کچه ولري. د دې لپاره چې د څار کونکي ټیمر فعال کړئ ، لاندې پروسیجر باید تعقیب شي:
په ورته عملیاتو کې ، WDCE او WDE ته یو منطق ولیکئ. یو منطق باید WW ته لیکل شي پداسې حال کې چې دا د معلول عملیاتو له پیل دمخه یو ته تنظیم شوی.
د راتلونکو څلورو ساعتونو دورې دننه ، WDE ته 0 یو منطق ولیکئ. دا څار کونکي ناتوانوي.
د خوندیتوب کچه 2 کې ، دا امکان نلري چې د څار ټګ ټیمر غیر فعال کړي ، حتی پورته بیان شوي الگورتیم سره. وګورئ په 43 پا .ه کې د "د څار ټیم ټیمر تنظیم کولو د تغیر لپاره وختونه".
د خوندیتوب کچه 1 کې ، WDE په MCUSR کې د WDRF لخوا وګرځول شو. وګورئ "MCUSR - د MCU حالت راجستر" په 44 مخ د WDRF تشریح لپاره. دا پدې مانا ده چې WDE تل تنظیم شوی کله چې WDRF تنظیم شوی وي. د WDE پاکولو لپاره ، WDRF باید د پورته ذکر شوي طرزالعمل سره د واچ ډګ غیر فعال کولو دمخه پاک شي. دا به د شرایطو په جریان کې ډیری بیا میشته کول یقیني کوي چې د ناکامۍ لامل کیږي ، او له ناکامۍ وروسته خوندي پیل کول.
یادونه: که چیرې د څارنې ټایمر په غوښتنلیک کې ونه کارول شي ، نو دا مهمه ده چې د وسیلې په پیل کې د واچ ډاگ غیر فعال کولو پروسې ته لاړشئ. که چیرې واچ ډاګ په ناڅاپي ډول فعال شوی وي ، د مثال لپارهampد تېښتې پوائنټر یا براون آوټ حالت سره ، وسیله به بیا تنظیم شي ، کوم چې په پایله کې به د نوي څارونکي بیا تنظیم لامل شي. د دې وضعیت څخه مخنیوي لپاره، د غوښتنلیک سافټویر باید تل د WDRF بیرغ او د WDE کنټرول بټ د پیل کولو معمول کې پاک کړي.
ټوټې 5 ، 2: 0 - WDP [3: 0]: د څار ډیم ټایمر پریسکلر 3 ، 2 ، 1 ، او 0
د WDP [3: 0] بټونه د څار ټګ ټیمر نسخه ټاکل ټاکي کله چې د څار ټیمر فعال شي. د نسخې بیلابیل ارزښتونه او د هغوی اړوند مهال ویش دورې په کې ښودل شوي جدول 8-3.
جدول 8-3. Watchdog Timer Prescale Select
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 s |
0 | 1 | 0 | 0 | د 32K (32764) دورې | 0.25 s |
0 | 1 | 0 | 1 | د 64K (65536) دورې | 0.5 s |
0 | 1 | 1 | 0 | د 128K (131072) دورې | 1.0 s |
0 | 1 | 1 | 1 | د 256K (262144) دورې | 2.0 s |
1 | 0 | 0 | 0 | د 512K (524288) دورې | 4.0 s |
1 | 0 | 0 | 1 | د 1024K (1048576) دورې | 8.0 s |
جدول 8-3. Watchdog Timer Prescale Select (دوامداره)
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 پا “ه کې "بیاځل او مداخله اداره کول".
په ایټیني 25/45/85 کې ویکتورونه وقف کړئ
د ATtiny25 / 45/85 مداخل شوي ویکتورونه په کې تشریح شوي جدول 9-1لاندې.
جدول 9-1. ویکتورونه بیا تنظیم او مداخله کول
ویکتور شمیره | برنامه پته | سرچینه | مداخله تعریف |
1 | 0x0000 | RESET | خارجي پن ، د بریښنا په اړه ریسیټ ، د براون آوټ ریسیټ ، د څار ډګ ریسیټ |
2 | 0x0001 | INT0 | د بهرني مداخلې غوښتنه 0 |
3 | 0x0002 | د PCINT0 | د پن بدلې مداخلې غوښتنه 0 |
4 | 0x0003 | TIMER1_COMPA | د ټیمر / کاونټر 1 میچ پرتله کول |
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 پرتله کول B |
11 | 0x000A | TIMER0_COMPA | د ټیمر / کاونټر 0 میچ پرتله کول |
12 | 0x000B | TIMER0_COMPB | د ټیمر / کاونټر 0 پرتله کول B |
13 | 0x000C | WDT | د وخت څارنه |
14 | 0x000D | USI_START | USI پیل |
15 | 0x000E | USI_OVF | د USI ډیر جریان |
که برنامه هیڅکله مداخله سرچینه نه کړي ، د مداخلې ویکتورونه ندي کارول کیږي ، او د برنامو منظم کوډ پدې ځایونو کې کیدی شي.
په ATtiny25/45/85 کې د مداخلې ویکتور پتې لپاره یو عادي او عمومي ترتیب په برنامه کې ښودل شویampلاندې.
د مجلس کوډ Example | ||
.g 0x0000 | next د بل پته تنظیم کړئ | بیان |
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 | ||
… |
یادونه: وګورئ "کوډ Exampپه 6 پاڼه کې.
بهرني مداخلې
بهرنۍ مداخلې د INT0 پن یا کوم یو PCINT [5: 0] پنونو لخوا رامینځته کیږي. مشاهده کړئ ، که چیرې فعال شوي ، مداخلات به حتی حتی که چیرې د INT0 یا PCINT [5: 0] پنونه د محصولاتو په توګه تنظیم شوي وي. دا به د سافټویر مداخلې رامینځته کولو لاره چمتو کوي. د پن بدلون مداخلې PCI به پیل کړي که چیرې کوم فعال شوی PCINT [5: 0] پن ټګلونه. د PCMSK راجستر کنټرول کوم پنونه د پن بدلون مداخلو کې مرسته کوي. په PCINT [5: 0] کې د پن بدلون مداخلې په عاجله توګه کشف شوې. دا پدې معنی ده چې دا مداخلې کولی شي د برخې راویښولو لپاره هم وکارول شي د ایډل حالت پرته نور د خوب حالت څخه.
د INT0 مداخلې کولی شي د غورځېدونکي یا ډیریدونکي څنډې یا ټیټې کچې لخوا رامینځته شي. دا ترتیب شوی لکه څنګه چې د MCU کنټرول راجسټریشن - MCUCR لپاره ځانګړتیا کې ښودل شوی. کله چې د INT0 مداخله فعاله شي او د سطحې محرک په توګه تنظیم شوې وي ، نو مداخله به تر هغه وخته پورې حرکت وکړي تر هغه چې پن ټیټ وي. په یاد ولرئ چې په INT0 کې د غورځېدو یا ډیریدونکي لاسوهنو پیژندل د I / O ساعت شتون ته اړتیا لري چې په کې بیان شوي "د ساعتونو سیسټمونه او د دوی توزیع" پر پاڼه 23.
د ټیټې کچې مداخله
په INT0 کې د ټیټې کچې مداخله په غیر متمرکزه توګه کشف شوې. دا پدې معنی ده چې دا مداخله کولی شي د برخې راویښولو لپاره هم وکارول شي د ایډل حالت پرته نور د خوب حالت څخه. د I / O ساعت د ایډل حالت پرته په ټولو خوب حالتونو کې ودرول شوی.
په یاد ولرئ چې که چیرې د لیول محرک مداخله د پاور-ډاون څخه د ویښ کیدو لپاره وکارول شي ، نو اړینه کچه باید د MCU لپاره دومره اوږده وساتل شي ترڅو وییک اپ بشپړ کړي ترڅو د لیول مداخله پیل کړي. که چیرې کچه د سټارټ اپ وخت پای ته رسیدو دمخه ورکه شي ، MCU به لاهم ویښ شي ، مګر هیڅ مداخله به رامینځته نشي. د پیل وخت د SUT او CKSEL فیوز لخوا تعریف شوی لکه څنګه چې تشریح شوي په 23 پا “ه کې د "سیسټم کلاک او کلاک اختیارونه".
که چیرې د مداخلې په ټکي کې ټیټه کچه د آلې د راښکته کیدو دمخه لرې شي نو د برنامې پلي کول به د مداخلې خدمت ورځنۍ ته نه اړول کیږي مګر د SLEEP امر سره سم لارښوونې ته دوام ورکوي.
د مداخلې وخت بدلول
یو پخوانیampد پن بدلون مداخلې وخت په کې ښودل شوی شکل 9-1.
ثبت ثبت کړئ
MCUCR - د MCU کنټرول ثبت
د بهرني مداخلې کنټرول راجستر A د مداخلې حس کنټرول لپاره کنټرول بټونه لري.
بټ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x35 | د BODS | د PUD | SE | SM1 | SM0 | BODSE | 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 - ISC0 [1: 0]: د مداخلې حس کنټرول 0 بټ 1 او Bit 0
خارجي مداخله 0 د بهرني پن INT0 لخوا فعال کیږي که د SREG I-بیرغ او اړونده مداخله ماسک تنظیم شوې وي. په بهرنۍ INT0 پن کې کچه او څنډې چې مداخله فعالوي په کې تعریف شوي جدول 9-2. په INT0 پن کې ارزښت s دی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 | |
0x3B | – | 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 کې بټونه خوندي دي او تل به د صفر په توګه لوستل کیږي.
بټ 6 - INT0: د بهرني مداخلې غوښتنه 0 فعال کړئ
کله چې د INT0 بټ (یو) تنظیم شوی وي او د حالت په ثبت کې S-I-bit (SREG) تنظیم شوی وي (یو) ، د بهرنۍ پن مداخله فعاله کیږي. د MCU کنټرول راجسټر (MCUCR) کې د مداخلې حس کنټرول0 بټونه 1/0 (ISC01 او ISC00) دا تشریح کوي چې ایا بهرنۍ مداخله د INT0 پن یا سطحې حس په ډیریدو او فعالیدو باندې فعاله ده. په پن کې فعالیت به د مداخلې غوښتنې لامل شي حتی که INT0 د محصول په توګه ترتیب شوی وي. د وقفې مداخلې غوښتنه 0 اړونده مداخله د INT0 مداخله ویکتور څخه اعدام شوې.
Bit 5 - PCIE: د پن بدلون مداخله وړ
کله چې د PCIE بټ (یو) تنظیم شوی وي او د حالت په ثبت کې I-bit (SREG) تنظیم شوی وي (یو) ، د پن بدلون مداخله فعاله شوې. په هر فعال شوي PCINT [5: 0] پن کې کوم بدلون به د مداخلې لامل شي. د پن بدلون مداخلې غوښتنې اړونده مداخله د PCI مداخلې ویکتور څخه اجرا شوې. د 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 کې بټونه خوندي دي او تل به د صفر په توګه لوستل کیږي.
Bit 6 - INTF0: د بهرني مداخلې بیرغ 0
کله چې په INT0 پن کې یو څنډه یا منطق بدلون مداخله غوښتنه متحرک کړي ، INTF0 ټاکل کیږي (یو). که په SREG کې I-bit او په GIMSK کې INT0 بټ (یو) تنظیم شوی وي ، نو MCU به ورته اړوندو ویکتور ته ورسیږي. بيرغ پاک شوی کله چې مداخله شوې معمول اعدام شي. په بدیل سره ، بیرغ دې ته د منطقي په لیکلو سره پاک کیدی شي. دا بیرغ تل تل پاک کیږي کله چې INT0 د کچې مداخلې په توګه تنظیم شوې وي.
Bit 5 - PCIF: د وقفو وړ بیرغ ته د پن بدلول
کله چې په هر 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 | PCMSK |
لوستل / لیکل | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
ابتدايي ارزښت | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
ټوټې 7: 6 - ریس: خوندي شوي بټونه
دا ټوټې په 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 بندرونه
پیژندنه
ټول AVR بندرونه د ریښتیني لوستلو - ترمیم - لیکلو فعالیت لري کله چې د عمومي ډیجیټل I/O بندرونو په توګه کارول کیږي. دا پدې مانا ده چې د یو پورټ پن سمت د SBI او CBI لارښوونو سره په غیر ارادي ډول د کوم بل پن سمت بدلولو پرته بدلیدلی شي. ورته تطبیق کیږي کله چې د ډرایو ارزښت بدلول (که د محصول په توګه تنظیم شوي وي) یا د پل اپ مقاومت کونکي فعالول / غیر فعال کول (که د ان پټ په توګه تنظیم شوي وي). هر محصول بفر د لوړ سنک او سرچینې ظرفیت سره سمیټریک ډرایو ځانګړتیاوې لري. د پن ډرایور دومره قوي دی چې په مستقیم ډول د LED نندارې چلوي. ټول پورټ پنونه د اکمالاتو حجم سره په انفرادي ډول د انتخاب وړ پل اپ مقاومت لرونکي لريtagد نه بدلیدونکي مقاومت. ټول I/O پنونه د VCC او ځمکې دواړو لپاره محافظتي ډایډونه لري لکه څنګه چې ورته اشاره شوې شکل 10-1. ته مراجعه وکړئ "بریښنایی ځانګړتیاوې" په 161 پا .ه کې د پیرامیټونو بشپړ لیست لپاره.
شکل 10-1. I/O پن مساوي سکیماتیک
په دې برخه کې ټول راجسترونه او بټ حوالې په عمومي بڼه لیکل شوي. کوچنۍ قضیه "x" د بندر لپاره د شمیرې لیک استازیتوب کوي، او ټیټه قضیه "n" د بټ شمیره استازیتوب کوي. په هرصورت، کله چې په پروګرام کې د راجستر یا بټ تعریف کارول کیږي، دقیق فورمه باید وکارول شي. د مثال لپارهample، PORTB3 د بټ نمبر لپاره. 3 په پورټ B کې، دلته عموما د PORTxn په توګه مستند شوي. فزیکي I/O راجسترونه او د بټ ځایونه لیست شوي دي د "راجستر توضیحات" په پاڼه 64.
د هر بندر لپاره درې I / O حافظې پته موقعیتونه تخصیص شوي ، هر یو د ډیټا راجسټریشن لپاره - PORTx ، د ډیټا لارښود راجستر - DDRx ، او د پورټ ان پټ پن - PINx. د پورټ ان پټ پنونو I / O موقعیت یوازې لوستل کیږي ، پداسې حال کې چې د معلوماتو ثبت او د ډیټا لارښود راجستر لوستل کیږي / لیکل کیږي. په هرصورت ، په PINx راجسټر کې یو څه ته د منطق لیکل ، د ډیټا راجسټر کې ورته بټ کې د ټیګال پایله به وي. سربیره پردې ، د پل - اپ معلول - په MCUCR کې PUD بیټ په ټولو بندرونو کې د ټولو پنونو لپاره پل اپ فعالیت غیر فعال کوي کله چې تنظیم کیږي.
د عمومي ډیجیټل I / O په توګه د I / O بندر کارول په کې تشریح شوي په 53 مخ "د عمومي ډیجیټل I / O په حیث بندرونه". ډیری پورټ پنونه په آلې کې د پراییفیرل ب featuresو لپاره د بدیل کارونو سره ملټیکل شوي. څنګه د هر بدیل فعالیت د پورټ پن سره مداخله کوي پدې کې تشریح شوی په page 57 پا onه کې "د پورټ متبادل کارونه". د بدیل دندو بشپړ تفصیل لپاره انفرادي ماډل برخې ته مراجعه وکړئ.
په یاد ولرئ چې د ځینې بندر بندرونو بدیل فعالیت فعال کول په بندر کې د نورو پنونو کارول د عمومي ډیجیټل 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 Bits په PORTx I / O پته ، او په PINxn بټونو کې د PINx I / O پته کې لاسرسی کیږي.
په DDRx راجستر کې د DDxn بیټ د دې پن سمت غوره کوي. که DDxn یو منطق لیکل شوی وي ، Pxn د محصول پن په توګه تنظیم شوی. که DDxn د منطق صفر لیکل شوی وي ، Pxn د ان پټ پن په توګه تنظیم شوی.
که PORTxn یو منطق لیکل شوی وي کله چې پن د ان پټ پن په توګه تنظیم شوی وي ، نو د پورته کولو مقاومت فعال شوی. د پورته کولو مقاومت بندولو لپاره ، PORTxn باید د منطق صفر لیکل شي یا پن باید د محصول پن په توګه تنظیم شي. د پورټ پنونه درې ځله ویل کیږي کله چې د بیا ځای حالت فعاله شي ، حتی که هیڅ ساعتونه نه وي.
که PORTxn یو منطق لیکل شوی وي کله چې پن د آوټ پن پن په توګه تنظیم شوی وي ، د بندر پن لوړه (یو) پرمخ وړل کیږي. که PORTxn د منطق صفر لیکل شوی وي کله چې پن د آوټ پن پن په توګه تنظیم شوی وي ، نو د بندر پن ټیټ حرکت کوي (صفر).
د پن ټګل کول
PINxn ته د منطق لیکل د PORTxn ارزښت بدلوي ، د DDRxn په ارزښت خپلواک. په یاد ولرئ چې د SBI لارښوونې په بندر کې د یو واحد بیټ بدلولو لپاره کارول کیدی شي.
د ننوتلو او وتلو ترمنځ بدلول
کله چې د درې حالتونو ({DDxn, PORTxn} = 0b00) او د تولید لوړ ({DDxn, PORTxn} = 0b11) تر منځ تیریږي، یو منځګړی حالت چې د پل اپ اپ فعال شوی {DDxn, PORTxn} = 0b01) یا ټیټ محصول ({DDxn, PORTxn} = 0b10) باید واقع شي. په نورمال ډول، د پل اپ فعال حالت په بشپړه توګه د منلو وړ دی، ځکه چې یو لوړ محرک چاپیریال به د قوي لوړ ډرایور او پل اپ تر مینځ توپیر ونه ګوري. که دا قضیه نده، د MCUCR راجستر کې د PUD بټ په ټولو بندرونو کې د ټولو پل اپونو غیر فعالولو لپاره تنظیم کیدی شي.
د پل - اپ او ټیټ ټکي ټکي سره د وتلو مینځل ورته ستونزه رامینځته کوي. کارونکی باید یا د درې ګونې حالت ({DDxn ، PORTxn} = 0b00) یا د لوړ لوړ حالت ({DDxn، PORTxn} = 0b10) د مینځنۍ مرحلې په توګه وکاروي.
جدول 10-1 د پن ارزښت لپاره د کنټرول سیګنال لنډیز کوي.
جدول 10-1. د پورټ پن تشکیلات
DDxn | پورټ ایکس این | د PUD
(په MCUCR کې) |
I/O | پورته کول | تبصره |
0 | 0 | X | داخلول | نه | درې حالت (های زیډ) |
0 | 1 | 0 | داخلول | هو | Pxn به اوسنۍ سرچینه وي که ext. ټيټ کشول. |
0 | 1 | 1 | داخلول | نه | درې حالت (های زیډ) |
1 | 0 | X | محصول | نه | وتۍ ټیټه (ډوب) |
1 | 1 | X | محصول | نه | محصول عالي (سرچینه) |
د پن ارزښت لوستل
د ډیټا لارښود بټ DDxn تنظیم کولو څخه خپلواک ، د بندر پن کولی شي د PINxn راجستر بټ له لارې لوستل شي. لکه څنګه چې ښودل شوي شکل 10-2، د PINxn راجستر بټ او مخکینۍ لیچ یو ترکیب کونکی جوړوي. دا د میټاسباليت څخه مخنیوي لپاره اړین دی که چیرې فزیکي پن د داخلي ساعت پای ته نږدې ارزښت بدل کړي ، مګر دا ځنډ هم معرفي کوي. شکل 10-3 د همغږي کولو وخت ډیاګرام ښیې کله چې د بهرني پلي شوي پن ارزښت لوستل. اعظمي او لږترلږه د تکثیر ځنډونه په ترتیب سره tpd، max او tpd، دقیقې په ګوته شوي.
د سیسټم ساعت د لومړۍ سقوط څنډې څخه لږ وروسته پیل کیدو وخت په پام کې ونیسئ. لیچ تړل کیږي کله چې ساعت ټیټ وي ، او شفاف وي کله چې ساعت لوړ وي ، لکه څنګه چې د "SYNC LATCH" سیوري لرونکي ساحې لخوا اشاره شوې. د سیګنال ارزښت لیچ کیږي کله چې د سیسټم ساعت ټیټ شي. دا د بریالي مثبت ساعت په څنډه کې د PINxn راجستر کې کلیک شوی. لکه څنګه چې د دوه تیر tpd ، max او tpd ، min لخوا اشاره شوې ، په پن کې د یو واحد سیګنال لیږد به د تاکید کولو وخت پورې اړوند د سیسټم ساعت ساعت په جریان کې د ½ او 1½ ترمنځ ځنډول کیږي.
کله چې د سافټویر ټاکل شوي پن ارزښت بیرته لوستل ، نوپ لارښوونه باید داخل شي لکه څنګه چې اشاره شوې شکل 10-4. د لارښوونې لارښود د ساعت په مثبت څنډه کې د "SYNC لاچ" سیګنال ټاکي. پدې حالت کې ، د ترکیب له لارې ځنډ tpd د سیسټم ساعت وخت دی.
لاندې کوډ example ښیې چې څنګه د پورټ B پن 0 او 1 لوړ ، 2 او 3 ټیټ تنظیم کړئ ، او د پورټ پن 4 څخه تر 5 پورې پورټ پنونه د ان پټ په توګه تعریف کړئ د پل اپ سره د پورټ پن 4 ته ټاکل شوي. د پایلې پین ارزښتونه بیرته لوستل کیږي ، مګر لکه څنګه چې مخکې بحث شوی، یو nop لارښوونې شاملې دي ترڅو وکوالی شي په دې وروستیو کې ځینې پنونو ته ټاکل شوي ارزښت بیرته لوستل شي.
د مجلس کوډ Example(1) |
…
; پل اپونه تعریف کړئ او لوړ محصولات تنظیم کړئ ; د پورټ پنونو لپاره لارښوونې تعریف کړئ 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 |
نه لاسلیک شوی چار i;
… /* پل اپ تعریف کړئ او لوړ محصولات تنظیم کړئ */ /* د پورټ پنونو لپاره لارښوونې تعریف کړئ */ PORTB = (1< DDRB = (1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0); /* د همغږي کولو لپاره nop داخل کړئ */ _NOP ()؛ /* د پورټ پنونو ولولئ */ i = PINB؛ … |
د ډیجیټل ننوت وړ او خوب حالت
لکه څنګه چې ښودل شوي شکل 10-2، ډیجیټل ان پټ سیګنال کولی شي cl ويamped د schmitt-trigger په ان پټ کې ځمکې ته. په انځور کې د SLEEP نښه شوې سیګنال، د MCU سلیپ کنټرولر لخوا په پاور-ډاون حالت کې تنظیم شوی ترڅو د لوړ بریښنا مصرف مخه ونیسي که چیرې ځینې ان پټ سیګنالونه تیریږي ، یا VCC/2 ته نږدې د انلاګ سیګنال کچه ولري.
SLEEP د پورټ پنونو لپاره بیرل کیږي چې د بهرني مداخلې پنونو په توګه فعال شوي. که چیرې د بهرني مداخلې غوښتنه فعاله نه وي ، نو سلیپ د دې پنونو لپاره هم فعال دی. SLEEP د مختلف نورو بدیل کارونو لخوا هم توضیح شوی لکه څنګه چې ورته اشاره شوې په page 57 پا onه کې "د پورټ متبادل کارونه".
که چیرې د منطق لوړه کچه ("یو") په غیر متناسب خارجي مداخله پن کې شتون ولري چې د "Rising Edge، Falling Edge، یا په پن کې کوم منطقي بدلون" په توګه ترتیب شوی وي پداسې حال کې چې بهرنۍ مداخله فعاله شوې نه وي، اړونده بهرني مداخله بیرغ به وي. د پورته ذکر شوي خوب حالت څخه د بیا پیل کولو په وخت کې تنظیم کړئ، لکه څنګه چې clampپه دې خوب حالت کې د غوښتل شوي منطق بدلون رامینځته کوي.
نه تړلې پنونه
که ځینې پنونه کارول شوي ندي ، نو سپارښتنه کیږي چې ډاډ ترلاسه شي چې دا پنونه ټاکل شوې کچه لري. حتی که څه هم ډیری ډیجیټل آلې په ژوره خوب حالت کې معلول شوي لکه څنګه چې پورته یادونه وشوه ، فلوټینګ توکي باید په نورو ټولو حالتونو کې چیرې چې ډیجیټل آلې فعالې شوې وي د اوسني مصرف کمولو لپاره مخنیوی وشي (ریسیټ ، فعال حالت او ایډل حالت).
د نه کارول شوي پن د ټاکل شوې کچې ډاډ ترلاسه کولو لپاره ترټولو ساده میتود د داخلي پل اپ فعالول دي. پدې حالت کې ، پل اپ به د بیا تنظیم کولو پرمهال غیر فعال شي. که چیرې د ری سیٹ کولو پرمهال د بریښنا ټیټ مصرف مهم وي ، نو سپارښتنه کیږي چې د بهرني پل اپ یا پل ډاون څخه کار واخلئ. د غیر استعمال شوي پنونو مستقیم VCC یا GND سره نښلول سپارښتنه نه کیږي، ځکه چې دا کیدای شي د ډیرو جریانونو سبب شي که چیرې پن په ناڅاپي توګه د محصول په توګه ترتیب شوی وي.
د پورټ بدیل افعالونه
ډیری پورټ پینونه د عمومي ډیجیټل I / Os کیدو سربیره بدیل فعالیتونه لري. شکل 10-5 ښیې چې څنګه د ساده شوي څخه د بندر پن کنټرول سیګنالونه شکل 10-2 کیدی شي د بدیل وظایفو لخوا وګرځول شي. د پام وړ سیګنالونه ممکن په ټولو پورټ پنونو کې شتون ونلري ، مګر ارقام د عمومي توضیحي په توګه کار کوي چې د AVR مایکرو کنټرولر کورنۍ کې د ټولو پورټ پنونو لپاره پلي کیږي.
جدول 10-2. د بدیل دندو لپاره د پورته کولو سیګنالونو عمومي توضیحات
د سیګنال نوم | بشپړ نوم | تفصیل |
PUOE | د پل-اپ اووررایډ وړتیا | که دا سیګنال تنظیم شوی وي ، نو د پل اپ اپ د PUOV سیګنال لخوا کنټرول کیږي. که دا سیګنال پاک شوی وي ، نو راښکته کول هغه وخت فعال کیږي کله چې
{DDxn ، PORTxn ، PUD} = 0b010. |
PUOV | د کچې پورته غورځول ارزښت | که چیرې PUOE تنظیم شوی وي ، نو پلنګ اپ د دې وړ دی / غیر فعال شي کله چې PUOV ترتیب شوی / پاک شوی وي ، پرته لدې چې د DDxn ، PORTxn ، او PUD ثبت بټ تنظیم کړئ. |
DDOE | د ډاټا لارښود پراخه کول | که دا سیګنل ترتیب شوی وي ، د وتلو ډرایور وړتیا د DDOV سیګنال لخوا کنټرول کیږي. که دا سیګنال پاک شوی وي ، د ریموټ چلوونکي د DDxn راجستر بټ لخوا فعال شوي. |
DDOV | د ډاټا لورښود ارزښت | که چیرې DDOE تنظیم شوی وي ، آوټپټ ډرایور فعال / غیر فعال وي کله چې DDOV تنظیم شوی / پاک شوی وي ، پرته لدې چې د DDxn راجسټرې بټ ترتیب کولو څخه. |
پی وی او ای | د درشل ارزښت اوورورایډ وړول | که دا سیګنل ترتیب شوی وي او د وتلو ډرایور فعال شي ، د بندر ارزښت د PVOV سیګنال لخوا کنټرول کیږي. که PVOE پاک شوی وي ، او د وتلو چلوونکی فعال شوی وي ، د پورټ ارزښت د PORTxn راجسټرې بټ لخوا کنټرول کیږي. |
PVOV | د درشل ارزښت اووررایډ ارزښت | که PVOE تنظیم شوی وي ، د پورټ ارزښت PVOV ته ټاکل شوی ، پرته لدې چې د PORTxn راجسټریشن بټ تنظیم کړئ. |
PTOE | د پورټ توګول اړول | که PTOE تنظیم شوی وي ، د PORTxn راجسټرې بټ برعکس کیږي. |
DIOE | ډیجیټل ننوت اوور رایډ وړول | که دا بټ تنظیم شوې وي ، د ډیجیټل ننوت وړتیا د DIEOV سیګنال لخوا کنټرول کیږي. که دا سیګنل پاک شوی وي ، نو د ډیجیټل ننوت وړتیا د MCU ریاست لخوا ټاکل کیږي (نورمال حالت ، د خوب حالت). |
DIEOV | ډیجیټل ننوت اووررایډ ارزښت فعال کړئ | که DIEOE تنظیم شوی وي ، نو ډیجیټل آخذه غیر فعال / غیر فعال کیږي کله چې DIEOV ترتیب شوی / پاک شوی وي ، پرته لدې چې د MCU ریاست (نورمال حالت ، د خوب حالت). |
DI | ډیجیټل ننوت | دا د بدیل دندو لپاره ډیجیټل آخذه ده. په ارقام کې ، سیګنال د schmitt-ট্রিګر په تولید پورې تړاو لري مګر د ترکیب کونکي څخه دمخه. غیر لدې چې ډیجیټل ان پټ د ساعت سرچینې په توګه وکارول شي ، د بدیل فنکشن سره ماډل به خپل ترکیب کاروي. |
AIO | انلاګ / وتنه | دا له بدیل وظیفو څخه / ته د انلاګ آخذ / محصول دی. سیګنال په مستقیم ډول د پیډ سره وصل دی ، او په دوه اړخیزه توګه کارول کیدی شي. |
لاندې فرعي برخې په لنډه توګه د هر بندر لپاره بدیل دندې تشریح کوي ، او اضافي فعالیت ته نښې نښانې اړوي. د نورو جزیاتو لپاره د بدیل فعالیت تفصیل ته مراجعه وکړئ.
د پورټ بی بدیل کارونه
د پورټ بی پنونه د بدیل فعالیت سره په کې ښودل شوي جدول 10-3.
جدول 10-3. پورټ B پنز بدیل افعال
پورټ پن | بدیل فعالیت |
PB5 | ![]() RESET: پنه تنظیمول dW: debugWIRE I / O ADC0: د ADC داخل چینل 0 PCINT5: د پن بدلون مداخله ، سرچینه 5 |
PB4 | XTAL2: د کریسټال اوریسیټر محصول CLKO: د سیسټم کلاک محصول ADC2: د ADC ان پټ چینل 2
OC1B: ټیمر / کاونټر 1 د میچ بی محصول PCINT4 سره پرتله کړئ: د پن بدلون مداخله 0 ، سرچینه 4 |
PB3 | XTAL1: کرسټال اوسیلیټر ان پټ CLKI: د بهرني ساعت ان پټ ADC3: ADC ان پټ چینل 3
OC1B: بشپړ ټیمر / کاونټر 1 د میچ بی محصول PCINT3 پرتله کول: د پن بدلون مداخله 0 ، سرچینه 3 |
PB2 | SCK: د سریال کلاک ان پټ ADC1: د ADC ان پټ چینل
T0: ټیمر / د کاونټر کلاک سرچینه USCK: د USI کلاک (د درې تار حالت) SCL: د USI کلاک (دوه تار حالت) INT0: بهرنۍ مداخله 0 ان پټ PCINT0: د پن بدلون مداخله 2 ، سرچینه 0 |
PB1 | MISO: د SPI ماسټر ډاټا ان پټ / غلام سیسټم ډیټا محصول AIN1: انلاګ پرتله کونکی ، منفي ان پټ OC0B: ټیمر / کاونټر 0 د میچ بی محصول OC1A پرتله کوي: ټیمر / کاونټر 1 د میچ پرتله کولو محصول ترسره کوي: د USI ډیټا محصول (د درې تار حالت) PCINT1: د پن بدلون مداخله 0 ، سرچینه 1 |
PB0 | MOSI :: د SPI ماسټر ډیټا محصول / غلام ډاټا ان پټ AIN0: انلاګ پرتله کونکي ، مثبت ان پټ
OC0A: ټایمر/کاونټر0 د میچ A محصول پرتله کول OC1A: بشپړ ټیمر / کاؤنټر 1 د پرتله کولو محصول پرتله کړئ DI: د USI ډاټا ان پټ (د درې تار حالت) SDA: د USI ډاټا ان پټ (د دوه تار حالت) AREF: د بهرني انلاګ حواله PCINT0: د پن بدلون مداخله 0 ، سرچینه 0 |
پورټ B ، Bit 5 - RESET / dW / ADC0 / PCINT5
RESET: د بهرني ریسیټ ان پټ فعال دی او د غیر منظمې ("1") لخوا RSTDISBL فیوز فعال دی. پلپ اپ فعال شوی او د آوټیوټ ډرایور او ډیجیټل آخذه غیر فعال کیږي کله چې پن د RESET پن په توګه کارول کیږي.
dW: کله چې د ډبګی ویر وړ (DWEN) فیوز پروګرام شوی او د لاک بټونه غیر منظم شوي وي ، د هدف آله کې د ډیبګیر سیسټم فعال کیږي. د RESET پورټ پن د تار - او (خلاص ډرین) دوه اړخیز I / O پن په ب configه تنظیم شوی دی چې د پل-اپ وړتیا سره رامینځته شوی او د هدف او ایمولیټر تر مینځ د مخابراتو دروازه کیږي.
ADC0: انلاګ ته ډیجیټل کنورټر، چینل 0.
PCINT5: د پن بدلې مداخله سرچینه 5.
پورټ B ، Bit 4 - XTAL2 / CLKO / ADC2 / OC1B / PCINT4
XTAL2: د چپ کلاک اورسیلیټر پن 2. د داخلي کیلیبایټبل آر سي اوریسټر او بهرني ساعت پرته پرته د ټولو چپ ساعت سرچینو لپاره د ساعت پن په توګه کارول کیږي. کله چې د ساعت ساعت په توګه وکارول شي ، نو پن د I / O پن په توګه نشي کارول کیدی. کله چې د چپ ساعت سرچینې په توګه د داخلي کیلیبریبل آر سي اوسیلټر یا خارجي ساعت کارولو څخه کار واخلئ ، PB4 د عادي I / O پن په توګه کار کوي.
CLKO: د منحل شوي سیسټم ساعت د پن PB4 کې محصول کیدی شي. د وېشل شوي سیسټم ساعت به محصول وي که د CKOUT فیوز پروګرام شوی وي ، پرته لدې چې د PORTB4 او DDB4 تنظیمات. دا به د بیا میشته کیدو پرمهال محصول هم وي.
ADC2: انلاګ ته ډیجیټل کنورټر، چینل 2.
OC1B: د محصول پرتله کول د میچ محصول: د PB4 پن کولی شي د ټایمر / کاونټر 1 پرتله کولو B لپاره د بهرني محصول په توګه خدمت وکړي کله چې د آوټ (DDB4 سیټ) په توګه تنظیم شوی. OC1B پن د PWM حالت ټیمر فعالیت لپاره د پای پن هم دی.
PCINT4: د پن بدلې مداخله سرچینه 4.
پورټ B ، بټ 3 - XTAL1 / CLKI / ADC3 / OC1B / PCINT3
XTAL1: د چپ کلاک اورسیلیټر پن 1. د داخلي کیلیبیټبل RC اوسیلټر پرته د ټولو چپ ساعت سرچینو لپاره کارول کیږي. کله چې د ساعت ساعت په توګه وکارول شي ، نو پن د I / O پن په توګه نشي کارول کیدی.
CLKI: د بهرني ساعت سرچینې څخه د ساعت ان پټ ، وګورئ "بهرنۍ ګړۍ" په 26 پا .ه.
ADC3: انلاګ ته ډیجیټل کنورټر، چینل 3.
OC1B: د السته راغلې پاputې پرتله کولو پرتله کول: د PB3 پن کولی شي د ټایمر / کاونټر 1 پرتله کولو B لپاره د بهرني محصول په توګه خدمت وکړي کله چې د آوټ (DDB3 سیټ) په توګه تنظیم شوی. د OC1B پن هم د PWM حالت ټیمر فعالیت لپاره د السته راغلې پای پن دی.
PCINT3: د پن بدلې مداخله سرچینه 3.
پورټ B ، بیټ 2 - SCK / ADC1 / T0 / USCK / SCL / INT0 / PCINT2
SCK: د SPI چینل لپاره د ماسټر کلاک محصول ، د غلام کلاک ننوت پن. کله چې SPI د غلام په توګه فعال شوی وي ، نو دا پن د DDB2 تنظیم کولو ته په پام سره د ننوت په توګه تنظیم شوی. کله چې SPI د ماسټر په توګه فعال شي ، د دې پن ډاټا لارښود د DDPB2 لخوا کنټرول کیږي. کله چې پن د SPI لخوا اړ ایستل شي چې یو ننوت وي ، نو بیا راټیټیدل د PORTB2 بیټ لخوا کنټرول کیدی شي.
ADC1: انلاګ ته ډیجیټل کنورټر، چینل 1.
T0: ټیمر / د کاونټر0 مخ سرچینه.
USCK: د درې تار حالت یونیورسل سریال انٹرفیس ساعت.
SCL: د USI دوه تار حالت لپاره د دوه تار حالت سریال کلاک.
INT0: بهرنۍ مداخله سرچینه 0.
PCINT2: د پن بدلې مداخله سرچینه 2.
پورټ بی ، بټ 1 - MISO / AIN1 / OC0B / OC1A / DO / PCINT1
MISO: د ماسټر ډاټا ان پټ ، د SPI چینل لپاره د سلیپ ډیټا آؤټ پټ پن. کله چې SPI د ماسټر په توګه فعال شوی وي ، نو دا پن د DDB1 تنظیم کولو ته په پام سره د ننوت په توګه تنظیم شوی. کله چې SPI د غلام په توګه فعال شي ، د دې پن ډاټا لارښود د DDB1 لخوا کنټرول کیږي. کله چې پن د SPI لخوا اړ ایستل شي چې یو ننوت وي ، نو بیا راټیټیدل د PORTB1 بټ لخوا کنټرول کیدی شي.
AIN1: د انلاګ پرتله کونکي منفي ان پټ. د داخلي پل - اپ سویچ سره بند ته د انبار په توګه د بندر پن تنظیم کړئ ترڅو د ډیجیټل پورټ فعالیت د انلاګ پرتله کونکي فعالیت سره مداخله کولو څخه مخنیوی وکړئ.
OC0B: وتنه د پرتله کولو پرتله کول. د PB1 پن کولی شي د ټیمر / کاونټر0 پرتله کولو میچ بی لپاره د بهرني محصول په توګه خدمت وکړي د PB1 پن باید د دې دندې د خدمت لپاره د محصول (DDB1 سیټ (یو)) په توګه تنظیم شي. OC0B پن د PWM حالت ټیمر فعالیت لپاره د پای پن هم دی.
OC1A: د محصول پرتله کول د میچ محصول: د PB1 پن کولی شي د ټایمر / کاونټر 1 پرتله کولو B لپاره د بهرني محصول په توګه خدمت وکړي کله چې د آوټ (DDB1 سیټ) په توګه تنظیم شوی. OC1A پن د PWM حالت ټیمر فعالیت لپاره د پای پن هم دی.
ترسره کړئ: د درې تار حالت یونیورسل سریال انٹرفیس ډیټا محصول. د درې تار حالت ډیټا محصول د PORTB1 ارزښت له سره تنظیم کوي او دا بندر ته وړل کیږي کله چې د ډیټا سمت بیټ DDB1 ترتیب شوی (یو). PORTB1 لاهم د پورته کیدو وړتیا چمتو کوي ، که چیرې سمت ننوځي او PORTB1 ترتیب شوی وي (یو).
PCINT1: د پن بدلې مداخله سرچینه 1.
پورټ B ، بایټ 0 - د MOSI / AIN0 / OC0A / OC1A / DI / SDA / AREF / PCINT0
MOSI: د SPI ماسټر ډاټا محصول ، د SPI چینل لپاره د سلیپ ډیټا محصول. کله چې SPI د غلام په توګه فعال شوی وي ، نو دا پن د DDB0 تنظیم کولو ته په پام سره د ننوت په توګه تنظیم شوی. کله چې SPI د ماسټر په توګه فعال شي ، د دې پن ډاټا لارښود د DDB0 لخوا کنټرول کیږي. کله چې پن د SPI لخوا اړ ایستل شي چې یو ننوت وي ، نو بیا راټیټیدل د PORTB0 بټ لخوا کنټرول کیدی شي.
AIN0: د انلاګ پرتله کونکي مثبت ننوتنه. د داخلي پل - اپ سویچ سره بند ته د انبار په توګه د بندر پن تنظیم کړئ ترڅو د ډیجیټل پورټ فعالیت د انلاګ پرتله کونکي فعالیت سره مداخله کولو څخه مخنیوی وکړئ.
OC0A: محصول د پرتله کولو پرتله کول. د PB0 پن کولی شي د ټایمر / کاونټر 0 لپاره د بیروني محصول په توګه خدمت وکړي A پرتله کول میچ A کله چې د آوټ (DDB0 سیټ (یو)) په توګه تنظیم شوی. OC0A پن د PWM حالت ټیمر فعالیت لپاره د پای پن هم دی.
OC1A: د السته راغلې پاputې پرتله کولو پرتله کول: د PB0 پن کولی شي د ټایمر / کاونټر 1 پرتله کولو B لپاره د بهرني محصول په توګه خدمت وکړي کله چې د آوټ (DDB0 سیټ) په توګه تنظیم شوی. د OC1A پن هم د PWM حالت ټیمر فعالیت لپاره د السته راوړنې پای پن دی.
SDA: د دوه تار حالت سریال انٹرفیس ډاټا.
AREF: د ADC لپاره بهرنۍ انلاګ حواله. پل اپ او آوټ پټ ډرایور په PB0 کې غیر فعال کیږي کله چې پن د بهرني حوالې یا داخلي حجم په توګه کارول کیږيtagد AREF پن کې د بهرني کیپسیټر سره حواله.
DI: د USI درې تار حالت کې د معلوماتو داخل. د USI درې تار حالت د نورمال پورټ افعالونو ته پام نه کوي ، نو پن باید د DI فعالیت لپاره د ان پټ په توګه تنظیم شي.
PCINT0: د پن بدلې مداخله سرچینه 0.
جدول 10-4 او جدول 10-5 په بندر کې د بدیل بدیل افعال تړاو په ګوته شوي نښو کې ښودل شوي په 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 DWEN(1) | 0 | 0 |
DDOV | د ډیبیو وایر لیږدونه | 0 | 0 |
پی وی او ای | 0 | OC1B فعال کړئ | ![]() OC1B فعال کړئ |
PVOV | 0 | OC1B | OC1B |
PTOE | 0 | 0 | 0 |
DIOE | ![]() د 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) D DDB0 |
پی وی او ای | USI_TWO_WIRE • DDB2 | د OC0B وړتیا + OC1A وړتیا + USI_THREE_WIRE | ![]() د OC0A وړتیا + OC1A وړتیا + (USI_TWO_WIRE DDB0) |
PVOV | 0 | OC0B + OC1A + DO | ![]() OC0A + OC1A |
PTOE | د USITC | 0 | 0 |
DIOE | د 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 | BODSE | 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: پل - اپ غیر فعال
کله چې دا بټ یو ته لیکل شوی ، په I / O بندرونو کې پل اپونه غیر معلول دي حتی که د DDxn او PORTxn راجسټرې د پل - اپونو وړلو لپاره تنظیم شوي وي ({DDxn، PORTxn} = 0b01). وګورئ په 54 مخ "د پن تنظیم کول" د دې ب aboutې په اړه د نورو معلوماتو لپاره.
پورټ بی - د پورټ B ډیټا راجستر
بټ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x18 | – | – | پورټب 5 | پورټب 4 | پورټب 3 | پورټب 2 | پورټب 1 | پورټب 0 | پورټب |
لوستل / لیکل | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
ابتدايي ارزښت | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
DDRB - د پورټ بی ډیټا سمت راجستر
بټ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
0x17 | – | – | DDB5 | DDB4 | DDB3 | DDB2 | DDB1 | DDB0 | ډي ډي آر بي |
لوستل / لیکل | R | R | R/W | R/W | R/W | R/W | R/W | R/W | |
ابتدايي ارزښت | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
PINB - د پورټ B ان پیوټ پیو پته
بټ | 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 |
8-بټ ټیمر / کاونټر 0 د PWM سره
ځانګړتیاوې
دوه خپلواک محصول د واحدونو پرتله کوي
دوه ځله تلیفون شوي محصول راجسټرې پرتله کړئ
د پرتله کولو لوبه کې روښانه ټیمر (د اتومات لوډ)
ګلیچ فری ، د مرحلې درست نبض پراخې ماډلټر (PWM)
متغیر PWM موده
د فریکونسۍ جنراتور
درې خپلواکې مداخلې سرچینې (TOV0 ، OCF0A ، او OCF0B)
اوورview
ټیمر / کاونټر 0 د عمومي هدف 8 بټ ټایمر / کاونټر انډول دی ، چې د دوه خپلواکې محصول پرتله کولو واحدونو سره ، او د PWM ملاتړ سره. دا د برنامې دقیق پلي کولو وخت (د پیښې مدیریت) او د څپې نسل ته اجازه ورکوي.
د 8 بټ ټایمر / کاونټر یو ساده بلاک ډایگرام په کې ښودل شوی شکل 11-1. د I / O پنونو اصلي ځای لپاره ، مراجعه وکړئ په 25 پا onه کې د پینټ ایټیني 45/85/2 ". د CPU لاسرسي I / O راجسټرې ، په شمول I / O بټونه او I / O پنونه ، په بولډ ښودل شوي. د وسیلې ځانګړې I / O راجستر او بټ موقعیتونه په په 77 پا onه کې "راجستر توضیحات".
ټایمر/ کاونټر (TCNT0) او د محصول پرتله کولو راجسترونه (OCR0A او OCR0B) د 8-bit راجسترونه دي. د مداخلې غوښتنه (په شکل کې Int.Req ته لنډه شوې) سیګنالونه ټول د ټیمر انټرپټ پرچم راجستر (TIFR) کې لیدل کیږي. ټول مداخلې په انفرادي ډول د ټیمر انټرپټ ماسک راجستر (TIMSK) سره پوښل شوي. TIFR او TIMSK په انځور کې ندي ښودل شوي.
ټایمر / کاونټر په داخلي توګه ، د پریسکلر له لارې یا په T0 پن کې د بهرني ساعت سرچینې لخوا کلاک کیدی شي. د ساعت انتخاب منطق بلاک کنټرولوي چې کوم ساعت سرچینه او څنډه د ټیمر/کاونټر د ارزښت زیاتولو (یا کمولو) لپاره کاروي. ټایمر / کاونټر غیر فعال دی کله چې د ساعت سرچینه نه وي غوره شوې. د ساعت انتخاب منطق څخه محصول د ټایمر ساعت (clkT0) په نوم یادیږي.
د ډبل بفر شوي محصول محصول راجسټرې (OCR0A او OCR0B) په هر وخت کې د ټایمر / کاونټر ارزښت سره پرتله کیږي. د پرتله کولو پایله د Waveform تولید کونکي لخوا د PWM یا متغیر فریکوینسي محصول تولید کولو لپاره د محصول پرتله کولو پنونو (OC0A او OC0B) کې کارول کیدی شي. په 69 XNUMX پا onه کې "د محصول پرتله کولو واحد" وګورئ. د توضیحاتو لپاره. د پرتله کولو سیالۍ به د پرتله کولو بیرغ (OCF0A یا OCF0B) هم وټاکي کوم چې د آؤټ پټ پرتله کولو مداخلې غوښتنه رامینځته کولو لپاره کارول کیدی شي.
تعریفونه
پدې برخه کې ډیری راجستر او بټ حوالې په عمومي ب writtenه لیکل شوي. یوه ټیټه قضیه "n" د ټیمر / کاونټ شمیره ځای نیسي ، پدې حالت کې. یوه ټیټه قضیه "x" د محصول پرتله کولو واحد سره ځای نیسي ، پدې حالت کې د A برخې سره پرتله کول یا د B پرتله کول. په هرصورت ، کله چې د راجسټرې کارولو یا بټ تعریفونه په برنامه کې ، دقیقه فورمه باید وکارول شي ، د بیلګې په توګه ، د ټیمر / کاونټر 0 معادل ارزښت ته لاسرسي لپاره TCNT0 او داسې نور.
په جدول 11-1 همدارنګه د اسنادو په اوږدو کې په پراخه کچه کارول کیږي.
جدول 11-1. تعریفونه
دوامداره | تفصیل |
BOTTOM | انسداد BOTTOM ته رسیږي کله چې 0x00 شي |
MAX | انسداد خپل اعظمي حد ته رسیږي کله چې 0xFF شي (لسیز 255) |
TOP | کاونټرې TOP ته رسیږي کله چې دا د شمېرنې ترتیب کې ترټولو لوړ ارزښت سره مساوي شي. د TOP ارزښت کولی شي د ټاکل شوي ارزښت 0xFF (MAX) یا OCR0A راجستر کې زیرمه شوي ارزښت ته وټاکل شي. ګمارنه د عملیاتو په حالت پورې اړه لري |
د ټایمر / کاونټر پریسیکلر او ساعت سرچینې
د ټایمر / کاونټر د داخلي یا بهرني ساعت سرچینې لخوا کلیک کیدی شي. د ساعت سرچینه د کلاک انتخاب منطق لخوا غوره شوی چې د ساعت ټاکنې (c) ټوټې لخوا کنټرول کیږي چې د ټایمر / کاؤنټر0 کنټرول راجستر (TCCR0B) کې موقعیت لري.
د پریکلر سره د داخلي ساعت سرچینه
Timer/Counter0 په مستقیم ډول د سیسټم ساعت (CS0 [2:0] = 1 په ترتیبولو سره) کېدی شي. دا د سیسټم ساعت فریکونسۍ (fCLK_I/O) سره مساوي اعظمي ټایمر/کاونټر کلاک فریکونسۍ سره ترټولو ګړندۍ عملیات چمتو کوي. په بدیل سره، د پریسکلر څخه د څلورو نلونو څخه یو د ساعت سرچینې په توګه کارول کیدی شي. مخکینۍ ساعت د دواړو فریکونسۍ لري
د پریکلر ریسیټ
Prescaler وړیا چلول کیږي، د بیلګې په توګه دا د Timer/Counter0 د ساعت انتخاب منطق څخه په خپلواکه توګه کار کوي. څرنګه چې پریزکلر د ټایمر / کاونټر ساعت انتخاب لخوا اغیزه نلري، د پریسکلر حالت به د هغو شرایطو لپاره اغیزې ولري چیرې چې مخکې ټاکل شوی ساعت کارول کیږي. یو پخوانیampد prescaling artifact هغه وخت دی کله چې ټایمر / کاونټر د پریسکلر لخوا فعال او کلاک شوی وي (6 > CS0[2:0] > 1). د سیسټم د ساعت دورې شمیر کله چې ټایمر فعال شوی وي د لومړي شمیرنې لپاره پیښیږي کیدی شي له 1 څخه تر N + 1 سیسټم ساعت دورې وي ، چیرې چې N د prescaler ویشونکي (8, 64, 256, یا 1024) سره مساوي وي.
د برنامه پلي کولو لپاره د ټایمر / کاونټر همغږي کولو لپاره د پریسکلر ریسیټ کارول ممکن دي.
د بهرني ساعت سرچینه
د بهرني ساعت سرچینه چې په T0 پن کې پلي کیږي د ټایمر / کاونټر ساعت (clkT0) په توګه کارول کیدی شي. د T0 پن s دیampد پن همغږي کولو منطق لخوا د سیسټم هر ساعت دوره یوځل رهبري کیږي. همغږي شوي (sampled) سیګنال بیا تیریږي
د څنډې کشف کونکي له لارې. شکل 11-2 د T0 همغږي کولو او څنډې کشف کونکي منطق فعال مساوي بلاک ډیاګرام ښیې. راجسترونه د داخلي سیسټم ساعت (clkI/O) په مثبت څنډه کې تړل شوي. لیچ د داخلي سیسټم ساعت په لوړه موده کې شفاف دی.
د څنډې کشف کونکی د هر مثبت (CS0 [0:2] = 0) یا منفي (CS7 [0:2] = 0) څنډې لپاره یو clkT6 نبض رامینځته کوي چې دا کشف کوي.
د OCR0x راجسټرې دوه ځله بفر کیږي کله چې د نبض پراخې موډول (PWM) طریقو څخه کار واخیستل شي. د پرتله کولو (CTC) حالتونو باندې نورمال او واضح ټایمر لپاره ، ډبل بفر کول غیر فعال دي. دوه ځلې تجربه د OCR0x نوي معلومات د راجستر پرتله کولو سره همغږي کوي د شمېرنې پورته یا لاندې برخې ته. همغږی کول د غیر عادي اوږدوالي ، غیر متناسب PWM دالونو پیښې مخه نیسي ، له دې امله د محصول نیمګړتیا پاکوي.
د OCR0x راجسټرې لاسرسی ممکن پیچلی ښکاري ، مګر دا قضیه نلري. کله چې ډبل بفرنګ فعال شي ، CPU د OCR0x بفر راجستر ته لاسرسی لري ، او که دوه ځله بفرنګ معلول شوی وي نو CPU به مستقیم OCR0x ته لاسرسی ولري.
د ځواک محصول محصول پرتله کړئ
د PWM غیر واورفورم جنریشن حالتونو کې ، د پرتله کونکي میچ آوټور د فورس آؤټ پټ پرتله (FOC0x) بټ ته د یو لیکلو سره مجبور کیدی شي. د پرتله کولو تقویه کول به د OCF0x بیرغ وټاکي یا ټایمر پاک / روښانه / تنظیم نکړي ، مګر د OC0x پن به تازه شي لکه څنګه چې د ریښتینې پرتله کولو لوبه پیښ شوې وه (د COM0x [1: 0] د بټ تنظیمات تعریف کوي چې ایا د OC0x پن ترتیب شوی ، پاک شوی یا بدل شوی).
د TCNT0 لیکلو سره د میچ بلاک کولو پرتله کول
د TCNT0 راجستر ته د CPU ټول لیکنې عملیات به هر هغه پرتله کولو میچ بلاک کړي چې په راتلونکی ټایم ساعت ساعت کې پیښیږي ، حتی کله چې ټایمر هم بند شي. دا ب featureه OCR0x ته اجازه ورکوي ورته ارزښت ته د TCNT0 په توګه پیل شي پرته له دې چې مداخله پیل کړي کله چې د ټیمر / کاونټر ساعت فعال شي.
د محصول پرتله کولو واحد سره کار کول
څنګه چې د عملیاتو په هر حالت کې د TCNT0 لیکل به د یو ساعت وخت ساعت لپاره ټولې پرتله کولو مخه ونیسي ، نو خطر شتون لري کله چې د TCNT0 بدلول کله چې د محصول پرتله کولو واحد کاروي ، په خپلواکه توګه دا چې ایا ټایمر / کاونټر روان دی یا نه. که چیرې TCNT0 ته لیکل شوي ارزښت د OCR0x ارزښت سره مساوي وي ، د پرتله کولو پرتله به له لاسه ورکړل شي ، چې په پایله کې به یې د ناسم موټورفارم تولید رامینځته شي. په ورته ډول ، د TCNT0 ارزښت د BOTTOM سره مساوي مه لیکئ کله چې کاونټ ښکته وي.
د OC0x تنظیم باید د پورټ پن لپاره وتلو ته د ډیټا لارښود راجسټریشن تنظیم کولو دمخه ترسره شي. د OC0x ارزښت تنظیم کولو ترټولو اسانه لار په نورمال حالت کې د ځواک وتلو پرتله (FOC0x) سټراوب بټونو کارول دي. د OC0x راجسټرې خپل ارزښتونه ساتي حتی کله چې د Waveform تولید حالتونو ترمینځ بدلیږي.
په یاد ولرئ چې د COM0x [1: 0] بټونه د پرتله کولو ارزښت سره یوځای دوه چنده نه کیږي. د COM0x [1: 0] بټونو بدلول به سمدلاسه اغیزمن شي.
پرتله کولو پرتله کولو واحد سره پرتله کړئ
د پرتله کولو محصول حالت (COM0x [1: 0]) ټوټې دوه دندې لري. د څپې جوړونکي د COM0x [1: 0] ټوټې کار کوي په راتلونکی پرتله کولو میچ کې د محصول پرتله کولو (OC0x) حالت تعریف کولو لپاره. همچنان ، COM0x [1: 0] ټوټې د OC0x پن محصول سرچینې کنټرولوي. شکل 11-6 د منطق یو ساده شوی سکیمات ښیې چې د COM0x [1: 0] بټ ترتیباتو لخوا اغیزمن شوی. د I / O راجسټرې ، I / O بټونه ، او په ارقام کې I / O پنونه په بولډ ښودل شوي. یوازې د عمومي I / O بندر کنټرول راجستر برخې (DDR او PORT) چې د COM0x لخوا اغیزمن شوي [1: 0] بټونه ښودل شوي. کله چې د OC0x دولت ته مراجعه وکړئ ، حواله د داخلي OC0x راجستر لپاره ده ، نه د OC0x پن. که چیرې د سیسټم ریسیټ واقع شي ، د OC0x راجسټریشن "0" ته بیا تنظیم شوی.
کله چې OC0A / OC0B د I / O پن سره وصل وي ، د COM0A فعالیت [1: 0] / COM0B [1: 0] ټوټې د WGM0 [2: 0] بټ ترتیباتو پورې اړه لري. جدول 11-2 د COM0x [1: 0] بټ فعالیت ښیې کله چې د WGM0 [2: 0] ټوټې نارمل یا CTC حالت ته تنظیم کیږي (غیر PWM).
جدول 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 د COM0x [1: 0] د بټ فعالیت ښیې کله چې د WGM0 [2: 0] ټوټې ګړندي PWM حالت ته تنظیم شوي.
جدول 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 ټاکل شوی وي. په دې حالت کې، پرتله کول له پامه غورځول کیږي، مګر سیټ یا پاک په BOTTOM کې ترسره کیږي. وګورئ په page 73 پا onه کې "ګړندي PWM حالت" د نورو جزیاتو لپاره.
جدول 11-4 د COM0x [1: 0] بټ فعالیت ښیې کله چې WGM0 [2: 0] بټونه د PWM حالت ته مرحلې ته تنظیم شوي.
جدول 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 ټاکل کیږي. په دې حالت کې، د پرتله کولو لوبه له پامه غورځول کیږي، مګر سیټ یا پاک په TOP کې ترسره کیږي. وګورئ په 74 on پا onه کې د PWM حالت درست مرحله د نورو جزیاتو لپاره.
ټوټې 3: 2 - ریس: خوندي شوي بټونه
دا ټوټې په ATtiny25 / 45/85 کې بټونه خوندي دي او تل به د صفر په توګه لوستل کیږي.
ټوټې 1: 0 - WGM0 [1: 0]: د Waveform تولید حالت
په TCCR02B راجستر کې موندل شوي د WGM0 بټ سره ترکیب ، دا بیټونه د کاونټر شمېرنې کنټرول کنټرولوي ، د اعظمي (TOP) مقابل ارزښت لپاره سرچینه ، او د کوم ډول څپې شکل تولید شي ، وګورئ. جدول 11-5. د ټایمر / کاونټر واحد لخوا حمایه شوي حالتونه دي: نورمال حالت (کاونټر) ، د پرتله کولو میچ (CTC) حالت کې روښانه ټیمر ، او د نبض پلنوالی دوه نوي ډولونه (PWM) حالتونه (وګورئ) "د عملیاتو طریقې" په 71 پاڼه کې).
جدول 11-5. د ویوفارم جنریشن موډ بټ توضیحات
موډ | WGM 02 | WGM 01 | WGM 00 | د عملیاتو وخت / د کاونټر حالت | TOP | په او سي آرکس کې تازه | د TOV بیرغ تنظیمول |
0 | 0 | 0 | 0 | نورمال | 0xFF | سمدستي | MAX(1) |
1 | 0 | 0 | 1 | PWM ، مرحله سمه | 0xFF | TOP | BOTTOM(2) |
2 | 0 | 1 | 0 | CTC | او سي آر اې | سمدستي | MAX(1) |
3 | 0 | 1 | 1 | چټک PWM | 0xFF | BOTTOM(2) | MAX(1) |
4 | 1 | 0 | 0 | ساتل شوی | – | – | – |
5 | 1 | 0 | 1 | PWM ، مرحله سمه | او سي آر اې | TOP | BOTTOM(2) |
6 | 1 | 1 | 0 | ساتل شوی | – | – | – |
7 | 1 | 1 | 1 | چټک PWM | او سي آر اې | BOTTOM(2) | TOP |
Bit 7 - FOC0A: د ځواک وتنه A پرتله کوي
FOC0A بټ یوازې هغه وخت فعال وي کله چې د WGM بیټونه غیر PWM حالت مشخص کړي.
په هرصورت ، د راتلونکو وسیلو سره مطابقت تضمین کولو لپاره ، دا بټ باید صفر ته تنظیم شي کله چې TCCR0B لیکل کیږي کله چې د PWM حالت کې کار کوي. کله چې د FOC0A بټ ته منطقي لیکل ، د سمدلاسه پرتله کول د Waveform تولید واحد کې اړ ایستل کیږي. د OC0A محصول د دې د COM0A [1: 0] د بټ تنظیماتو مطابق بدل شوی. په یاد ولرئ چې FOC0A بټ د سټروب په توګه پلي کیږي. له همدې امله دا د COM0A [1: 0] بیټونو کې موجود ارزښت دی چې د اجباري پرتله کولو اغیز ټاکي.
د FOC0A سټروب به هیڅ مداخله رامینځته نکړي ، او نه به دا د CCR حالت کې ټیمر پاک کړي د OCR0A په توګه د TOP په توګه کاروي. د FOC0A بټ تل د صفر په څیر لوستل کیږي.
Bit 6 - FOC0B: د ځواک محصول پرتله کول B
د FOC0B بټ یوازې هغه وخت فعال وي کله چې د WGM بیټونه غیر PWM حالت مشخص کړي.
په هرصورت ، د راتلونکو وسیلو سره مطابقت تضمین کولو لپاره ، دا بټ باید صفر ته تنظیم شي کله چې TCCR0B لیکل کیږي کله چې د PWM حالت کې کار کوي. کله چې د FOC0B بیټ ته منطقي لیکل ، د سمدستي پرتله کول د Waveform تولید واحد کې اړ ایستل کیږي. د OC0B محصول د دې د COM0B [1: 0] د بټ تنظیماتو مطابق بدل شوی. په یاد ولرئ چې FOC0B بټ د سټروب په توګه پلي کیږي. له همدې امله دا د COM0B [1: 0] بیټونو کې موجود ارزښت دی چې د اجباري پرتله کولو اغیز ټاکي.
د FOC0B سټروب به هیڅ مداخله رامینځته نکړي ، او نه به دا د CCR حالت کې ټیمر پاک کړي د OCR0B د TOP په توګه کاروي.
د FOC0B بټ تل د صفر په څیر لوستل کیږي.
ټوټې 5: 4 - ریس: خوندي شوي بټونه
دا ټوټې په ATtiny25 / 45/85 کې بټونه خوندي دي او تل به د صفر په توګه لوستل کیږي.
بټ 3 - WGM02: د څپې اصلاح کولو حالت
په تفصیل کې یې وګورئ "TCCR0A - ټایمر / د کاونټر کنټرول راجسټریشن A" په 77 پا onه کې.
ټوټې 2: 0 - CS0 [2: 0]: ساعت ټاکنه
د درې کلاک انتخاب بټونه د ساعت سرچینه غوره کوي چې د ټایمر / کاونټر لخوا کارول کیږي.
جدول 11-6. ساعت انتخاب د بټ تفصیل
CS02 | CS01 | CS00 | تفصیل |
0 | 0 | 0 | د ساعت ساعت نشته (ټایمر / کاونټر ودرول شوی) |
0 | 0 | 1 | clkI/O/(نه پریکولینګ) |
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 (TCNT1) راجستر او بیرغونو (OCF1A ، OCF1B ، او TOV1) لپاره ځنډول کیږي ، ځکه د ننوتلو او وتلي ترکیب له امله.
ټیمر / کاونټر 1 د ټیټ نسخې کولو فرصتونو سره لوړ ریزولوشن او د لوړ درستیزۍ کارولو ب .ه کوي. دا کولی شي دوه دقیق ، لوړ سرعت ، د 8 بټ پل پل چوک موډلاتور هم د ساعت سرعت 64 میګا ہرټز (یا په ټیټ سرعت حالت کې 32 میګاهرت) کې کاروي. پدې حالت کې ، ټیمر / کاونټر 1 او د محصول پرتله کولو راجسټرې د دوه اړخیز ولاړ یوازینۍ PWM په توګه کار کوي غیر مقطع غیر البرت او السته راوړل محصولات سره. ته مراجعه وکړئ پاڼه 86 پدې فنکشن کې د تفصيلي وضاحت لپاره. په ورته ډول ، د لوړ وړاندیز کولو فرصتونه دا واحد د ټیټ سرعت افاتو یا دقیق وخت کارونو لپاره د نادره کارونو سره ګټور کوي.
شکل 12-2. ټایمر / کاونټر 1 همغږي کولو راجستر بلاک ډیاګرام.
ټیمر / کاونټر 1 او د پریکلر اجازه ورکوي چې د هر ساعت سرچینې څخه CPU پرمخ بوځي پداسې حال کې چې پریسیکلر په اسینکرونوس حالت کې د PCK ساعت په ګړندي 64 میګا هرټز (یا په ټیټ سرعت حالت کې 32 میګاهرت) کار کوي.
په یاد ولرئ چې د سیسټم ساعت فریکوینسي باید د PCK فریکونسۍ له دریمې برخې څخه ټیټه وي. د عضله ټیمر / کاونټر 1 د همغږۍ میکانیزم د PCK لږترلږه دوه څنډو ته اړتیا لري کله چې د سیسټم ساعت لوړ وي. که چیرې د سیسټم ساعت ساعت ډیر لوړ وي ، نو دا خطر دی چې معلومات یا د کنټرول ارزښتونه له لاسه ورکړي.
لاندې شکل 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 | بټس | ||||
مطلق دقت (د INL ، DNL ، او مقدار ټاکل ، لاسته راوړل او د آفسیټ غلطیو سره) | VREF = 4V، VCC = 4V،
د ADC ساعت = 200 kHz |
2 | LSB | |||
VREF = 4V، VCC = 4V،
د ADC ساعت = 1 میګاهرتز |
3 | LSB | ||||
VREF = 4V، VCC = 4V،
د ADC ساعت = 200 kHz د شور کمولو حالت |
1.5 | LSB | ||||
VREF = 4V، VCC = 4V،
د ADC ساعت = 1 میګاهرتز د شور کمولو حالت |
2.5 | LSB | ||||
انٹیگرل غیر خطبي (INL) (د آفسیټ نه وروسته دقت او د اندازې لاسته راوړل) | VREF = 4V، VCC = 4V،
د ADC ساعت = 200 kHz |
1 | LSB | |||
توپیر نه لرونکی (DNL) | VREF = 4V، VCC = 4V،
د ADC ساعت = 200 kHz |
0.5 | LSB | |||
ګټه ترلاسه کول | VREF = 4V، VCC = 4V،
د ADC ساعت = 200 kHz |
2.5 | LSB | |||
د آفسیټ تېروتنه | VREF = 4V، VCC = 4V،
د ADC ساعت = 200 kHz |
1.5 | LSB | |||
د بدلون وخت | وړیا چلولو تبادله | 14 | 280 | د | ||
د ساعت فریکونسۍ | 50 | 1000 | kHz | |||
VIN | ننوتۍ جلدtage | GND | VREF | V | ||
ننوت بانډوتھ | 38.4 | kHz | ||||
AREF | بهرنۍ حواله Voltage | 2.0 | VCC | V | ||
سکرو | داخلي ټوکtage حواله | 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 | LSB |
یادونه: 1. ارزښتونه یوازې لارښوونې دي.
جدول 21-9. د ADC ځانګړتیاوې، مختلف چینلونه (یونیپولر حالت). TA = -40°C څخه تر +85°C
سمبول | پیرامیټر | حالت | من | ټایپ | مکس | واحدونه |
قرارداد | ګټه = 1x | 10 | بټس | |||
ګټه = 20x | 10 | بټس | ||||
مطلق دقت (په شمول INL ، DNL ، او
مقدار ټاکنه ، لاسته راوړل او د آفسیټ خطاګانې) |
ګټه = 1x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
10.0 | LSB | |||
ګټه = 20x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
20.0 | LSB | ||||
انټل غیر بې خطره (INL) (د آفسیټ او لاسته راوړلو نه وروسته دقت) | ګټه = 1x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
4.0 | LSB | |||
ګټه = 20x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
10.0 | LSB | ||||
ګټه ترلاسه کول | ګټه = 1x | 10.0 | LSB | |||
ګټه = 20x | 15.0 | LSB | ||||
د آفسیټ تېروتنه | ګټه = 1x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
3.0 | LSB | |||
ګټه = 20x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
4.0 | LSB | ||||
د بدلون وخت | وړیا چلولو تبادله | 70 | 280 | د | ||
د ساعت فریکونسۍ | 50 | 200 | kHz | |||
VIN | ننوتۍ جلدtage | GND | VCC | V | ||
VDIFF | د انپټ توپیر والی حجمtage | VREF/ګټه | V | |||
ننوت بانډوتھ | 4 | kHz | ||||
AREF | بهرنۍ حواله Voltage | 2.0 | VCC - 1.0 | V | ||
سکرو | داخلي ټوکtage حواله | 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 | LSB |
یادونه: ارزښتونه یوازې لارښوونې دي.
جدول 21-10. د ADC ځانګړتیاوې، توپیر لرونکي چینلونه (د دوه قطبي حالت). TA = -40°C څخه تر +85°C
سمبول | پیرامیټر | حالت | من | ټایپ | مکس | واحدونه |
قرارداد | ګټه = 1x | 10 | بټس | |||
ګټه = 20x | 10 | بټس | ||||
مطلق دقت (په شمول INL ، DNL ، او
مقدار ټاکنه ، لاسته راوړل او د آفسیټ خطاګانې) |
ګټه = 1x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
8.0 | LSB | |||
ګټه = 20x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
8.0 | LSB | ||||
انټل غیر بې خطره (INL) (د آفسیټ او لاسته راوړلو نه وروسته دقت) | ګټه = 1x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
4.0 | LSB | |||
ګټه = 20x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
5.0 | LSB | ||||
ګټه ترلاسه کول | ګټه = 1x | 4.0 | LSB | |||
ګټه = 20x | 5.0 | LSB | ||||
د آفسیټ تېروتنه | ګټه = 1x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
3.0 | LSB | |||
ګټه = 20x
VREF = 4V، VCC = 5V د ADC ساعت = 50 - 200 kHz |
4.0 | LSB | ||||
د بدلون وخت | وړیا چلولو تبادله | 70 | 280 | د | ||
د ساعت فریکونسۍ | 50 | 200 | kHz | |||
VIN | ننوتۍ جلدtage | GND | VCC | V | ||
VDIFF | د انپټ توپیر والی حجمtage | VREF/ګټه | V | |||
ننوت بانډوتھ | 4 | kHz | ||||
AREF | بهرنۍ حواله Voltage | 2.0 | VCC - 1.0 | V | ||
سکرو | داخلي ټوکtage حواله | 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 | LSB |
د لارښود سیټ لنډیز
یادښتونه | چلول | تفصیل | عملیات | بیرغونه | # کليکونه |
د هنر او لوژیک لارښوونې | |||||
ADD | Rd ، Rr | دوه ثبتونه اضافه کړئ | Rd ← Rd + Rr | Z ، C ، N ، V ، H | 1 |
ADC | Rd ، Rr | د کیری دوه راجسترونو سره اضافه کړئ | Rd ← Rd + Rr + C | Z ، C ، N ، V ، H | 1 |
ADIW | Rdl ، K | ټکي ته فوري اضافه کړئ | Rdh:Rdl ← Rdh:Rdl + K | Z ، C ، N ، V، S | 2 |
SUB | Rd ، Rr | دوه ثبتونه راټول کړئ | Rd ← Rd – Rr | Z ، C ، N ، V ، H | 1 |
سوبي | Rd ، K | د راجسټریشن څخه دوامداره ضمني | Rd ← Rd – K | Z ، C ، N ، V ، H | 1 |
SBC | Rd ، Rr | د دوه راجستر کونکي سره ضمیمه | Rd ← Rd – Rr – C | Z ، C ، N ، V ، H | 1 |
ایس بي سي آی | Rd ، K | د ریګ څخه د کیري کانسټینټ سره ضمیمه. | Rd ← Rd – K – C | Z ، C ، N ، V ، H | 1 |
SBIW | Rdl ، K | سمدلاسه له کلمې لرې کړئ | Rdh:Rdl ← Rdh:Rdl – K | Z ، C ، N ، V، S | 2 |
او | Rd ، Rr | منطقي او ثبتونه | Rd ← Rd ∙ Rr | Z ، N ، V | 1 |
انډي | Rd ، K | منطقي او راجستر او دوامدار | Rd ← Rd ∙ K | Z ، N ، V | 1 |
OR | Rd ، Rr | منطقي یا راجسټرې | Rd ← Rd v Rr | Z ، N ، V | 1 |
ORI | Rd ، K | منطقي یا راجستر او دوامدار | Rd ← Rd v K | Z ، N ، V | 1 |
EOR | Rd ، Rr | ځانګړې یا راجسټرې | Rd ← Rd ⊕ Rr | Z ، N ، V | 1 |
COM | Rd | د یو بشپړونکی | Rd ← 0xFF − Rd | Z ، C ، N ، V | 1 |
نۍ | Rd | د دوو بشپړوونکی | Rd ← 0x00 − Rd | Z ، C ، N ، V ، H | 1 |
SBR | Rd ، K | په ثبت کې بټ (ونه) تنظیم کړئ | Rd ← Rd v K | Z ، N ، V | 1 |
CBR | Rd ، K | په راجسټر کې بټ (ونه) پاک کړئ | Rd ← Rd ∙ (0xFF – K) | Z ، N ، V | 1 |
INC | Rd | زیاتوالی | Rd ← Rd + 1 | Z ، N ، V | 1 |
DEC | Rd | کمښت | Rd ← Rd − 1 | Z ، N ، V | 1 |
TST | Rd | د صفر یا منفي لپاره ازموینه | Rd ← Rd ∙ Rd | Z ، N ، V | 1 |
CLR | Rd | پاکه راجستر | Rd ← Rd ⊕ Rd | Z ، N ، V | 1 |
SER | Rd | ثبت ثبت کړئ | Rd ← 0xFF | هیڅ نه | 1 |
د شاخ لارښوونې | |||||
RJMP | k | اړوند کود | PC ← PC + k + 1 | هیڅ نه | 2 |
IJMP | غیر مستقیم کود ته (Z) | PC ← Z | هیڅ نه | 2 | |
RCALL | k | اړوند سبروټین زنګ | PC ← PC + k + 1 | هیڅ نه | 3 |
ICALL | غیر مستقیم زنګ ته (ز) | PC ← Z | هیڅ نه | 3 | |
RET | سبروټین راستنیدنه | PC ← STACK | هیڅ نه | 4 | |
RETI | مداخله راستنول | PC ← STACK | I | 4 | |
د سي پي اېس اي | Rd ، Rr | پرتله کول ، که مساوي وي پریږدئ | که (Rd = Rr) PC ← PC + 2 یا 3 | هیڅ نه | 1/2/3 |
CP | Rd ، Rr | پرتله کول | Rd - Rr | Z ، N ، V ، C ، H | 1 |
CPC | Rd ، Rr | د کیری سره پرتله کول | Rd − Rr − C | Z ، N ، V ، C ، H | 1 |
CPI | Rd ، K | راجستر د سمدستي سره پرتله کړئ | Rd - K | Z ، N ، V ، C ، H | 1 |
SBRC | Rr ، b | که چیرې په راجستر کې بټ پاک شو نو پریږدئ | که (Rr(b)=0) PC ← PC + 2 یا 3 | هیڅ نه | 1/2/3 |
SBRS | Rr ، b | که چیرې په ثبت کې بټ ټاکل شوی وي نو پریږدئ | که (Rr(b)=1) PC ← PC + 2 یا 3 | هیڅ نه | 1/2/3 |
SBIC | پی ، بی | که چیرې په I / O راجستر کې بټ پاک شوی نو هغه پریږدئ | که (P(b)=0) PC ← PC + 2 یا 3 | هیڅ نه | 1/2/3 |
SBIS | پی ، بی | لاړشئ که چیرې په I / O راجستر کې بټ ټاکل شوی وي | که (P(b)=1) PC ← PC + 2 یا 3 | هیڅ نه | 1/2/3 |
BRBS | s ، K | څانګه که د وضعیت بيرغ ټاکي | که (SREG(s) = 1) نو بیا PC←PC+k+1 | هیڅ نه | ۹/۹۷ |
BRBC | s ، K | څانګه که د وضعیت بیرغ پاک شوی وي | که (SREG(s) = 0) نو بیا PC←PC+k+1 | هیڅ نه | ۹/۹۷ |
BREQ | k | که مساوي وي نو څانګه | که (Z = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRNE | k | که مساوي نه وي نو څانګه | که (Z = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
بي آر سي ایس | k | څانګه که کیری سیټ | که (C = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
بي آر سي سي | k | څانګه که کیري پاکه شي | که (C = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRSH | k | څانګه که ورته یا لوړه | که (C = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRLO | k | څانګه که ټیټه وي | که (C = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRMI | k | څانګه که منفي | که (N = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRPL | k | څانګه که پلس | که (N = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
برګ | k | څانګه که لوی یا مساوي ، لاسلیک شوی | که (N ⊕ V= 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRLT | k | څانګه که له صفر څخه لږ وي ، لاسلیک شوی | که (N ⊕ V= 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRHS | k | څانګه که نیمه بیرغ پرچم وټاکئ | که (H = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRHC | k | څانګه که نیمه بیرغ پاک شوی | که (H = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRTS | k | څانګه که د T بيرغ ټاکي | که (T = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
بي آر ټي سي | k | څانګه که د T بیرغ پاک شوی | که (T = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRVS | k | څانګه که د جریان بيرغ ټاکل شوی وي | که (V = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
BRVC | k | څانګه که د جریان بيرغ پاک شوی وي | که (V = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
بری | k | څانګه که مداخله فعاله شي | که (I = 1) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
برډ | k | څانګه که مداخله بنده شي | که (I = 0) نو بیا PC ← PC + k + 1 | هیڅ نه | ۹/۹۷ |
د BIT او BIT-TEST لارښوونې | |||||
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 | Z ، C ، N ، V | 1 |
LSR | Rd | منطقي بدلون ښي خوا ته | Rd(n) ← Rd(n+1), Rd(7) ← 0 | Z ، C ، N ، V | 1 |
رول | Rd | کیری له لارې کیot تاوول | Rd(0)←C,Rd(n+1)← Rd(n),C←Rd(7) | Z ، C ، N ، V | 1 |
ROR | Rd | د کیری له لارې ښي اړخ ته وګرځئ | Rd(7)←C,Rd(n)← Rd(n+1),C←Rd(0) | Z ، C ، N ، V | 1 |
ASR | Rd | ارثیماتیک شفټ ښي | Rd(n) ← Rd(n+1), n=0..6 | Z ، C ، N ، V | 1 |
یادښتونه | چلول | تفصیل | عملیات | بیرغونه | # کليکونه |
SWAP | Rd | نیبلونه بدل کړئ | Rd(3..0)←Rd(7..4),Rd(7..4)←Rd(3..0) | هیڅ نه | 1 |
د BSET | s | پرچم سیټ | SREG(s) ← 1 | SREG (s) | 1 |
بي سي ايل آر | s | پرچم پاک | SREG(s) ← 0 | SREG (s) | 1 |
BST | Rr ، b | د راجسټرې څخه T ته د بټ پلورنځي | T ← Rr(b) | T | 1 |
BLD | Rd ، b | د T څخه راجستریشن ته د بټ بوډ | Rd(b) ← T | هیڅ نه | 1 |
SEC | کیری تنظیم کړئ | ج ← ۱ | C | 1 | |
CLC | پاک کیری | ج ← ۱ | C | 1 | |
SEN | منفي بیرغ وټاکئ | ن ← ۱ | N | 1 | |
CLN | منفي بیرغ پاک کړئ | ن ← ۱ | N | 1 | |
SEZ | د صفر بیرغ وټاکئ | ز ← ۱ | Z | 1 | |
CLZ | صفر بیرغ پاک کړئ | ز ← ۱ | Z | 1 | |
SEI | نړیوال مداخله فعاله کړه | زه ← ۱ | I | 1 | |
CLI | نړېوال مداخله | زه ← ۱ | I | 1 | |
SES | د لاسلیک شوې ازموینې بیرغ تنظیم کړئ | س ← ۱ | S | 1 | |
CLS | د لاسلیک شوې ازموینې بیرغ پاک کړئ | س ← ۱ | S | 1 | |
SEV | د دوه ګونو تکمیل جریان تنظیم کړئ. | V ← 1 | V | 1 | |
CLV | د دوه ګوني تکمیل کونکي جریان پاک کړئ | V ← 0 | V | 1 | |
SET | T په SREG کې تنظیم کړئ | ټ ← ۱ | T | 1 | |
CLT | T په SREG کې پاک کړئ | ټ ← ۱ | T | 1 | |
کارتې | په SREG کې د نیمه کیري بیرغ تنظیم کړئ | H ← 1 | H | 1 | |
CLH | په SREG کې د نیمه بیرغ بیرغ پاک کړئ | H ← 0 | H | 1 | |
د ډاټا د لیږد لارښوونې | |||||
MOV | Rd ، Rr | د ثبت کونکو ترمینځ حرکت وکړئ | Rd ← Rr | هیڅ نه | 1 |
خوځول | Rd ، Rr | د راجستر کلمه کاپي کړئ | Rd+1:Rd ← Rr+1:Rr | هیڅ نه | 1 |
LDI | Rd ، K | سمدلاسه بار کړه | Rd ← K | هیڅ نه | 1 |
LD | Rd ، X | نامعلوم | Rd ← (X) | هیڅ نه | 2 |
LD | Rd ، X + | غیر مستقیم او وروسته پوسټ لوستل. | Rd ← (X)، X ← X + 1 | هیڅ نه | 2 |
LD | Rd ، - X | غیر مستقیم او د دسمبر مخکې پریږدئ. | X ← X – 1, Rd ← (X) | هیڅ نه | 2 |
LD | Rd ، Y | نامعلوم | Rd ← (Y) | هیڅ نه | 2 |
LD | Rd ، Y + | غیر مستقیم او وروسته پوسټ لوستل. | Rd ← (Y)، Y ← Y + 1 | هیڅ نه | 2 |
LD | Rd ، - Y | غیر مستقیم او د دسمبر مخکې پریږدئ. | Y ← Y – 1, Rd ← (Y) | هیڅ نه | 2 |
LDD | Rd ، Y + q | د بې ځایه کیدلو سره مستقیم بار کړئ | Rd ← (Y + q) | هیڅ نه | 2 |
LD | Rd ، Z | نامعلوم | Rd ← (Z) | هیڅ نه | 2 |
LD | Rd ، Z + | غیر مستقیم او وروسته پوسټ لوستل. | Rd ← (Z)، Z ← Z+1 | هیڅ نه | 2 |
LD | Rd ، -Z | غیر مستقیم او د دسمبر مخکې پریږدئ. | Z ← Z – 1, Rd ← (Z) | هیڅ نه | 2 |
LDD | Rd ، Z + q | د بې ځایه کیدلو سره مستقیم بار کړئ | Rd ← (Z + q) | هیڅ نه | 2 |
LDS | Rd ، k | د SRAM څخه مستقیم بار کړئ | Rd ← (k) | هیڅ نه | 2 |
ST | X ، Rr | پلورنځای | (X) ← Rr | هیڅ نه | 2 |
ST | X + ، Rr | پلورنځي غیر مستقیم او پوسټ. | (X) ← Rr، X ← X + 1 | هیڅ نه | 2 |
ST | - ایکس ، آر آر | غیر مستقیم او دسمبر وړاندې ذخیره کړئ. | X ← X – 1, (X) ← Rr | هیڅ نه | 2 |
ST | Y ، Rr | پلورنځای | (Y) ← Rr | هیڅ نه | 2 |
ST | Y + ، Rr | پلورنځي غیر مستقیم او پوسټ. | (Y) ← Rr، Y ← Y + 1 | هیڅ نه | 2 |
ST | - Y ، Rr | غیر مستقیم او دسمبر وړاندې ذخیره کړئ. | Y ← Y – 1، (Y) ← Rr | هیڅ نه | 2 |
STD | Y + Q ، Rr | د بې ځایه کیدو سره غیر مستقیم ذخیره کړئ | (Y + q) ← Rr | هیڅ نه | 2 |
ST | Z ، Rr | پلورنځای | (Z) ← Rr | هیڅ نه | 2 |
ST | Z + ، Rr | پلورنځي غیر مستقیم او پوسټ. | (Z) ← Rr، Z ← Z + 1 | هیڅ نه | 2 |
ST | -Z ، Rr | غیر مستقیم او دسمبر وړاندې ذخیره کړئ. | Z ← Z – 1، (Z) ← Rr | هیڅ نه | 2 |
STD | Z + q ، Rr | د بې ځایه کیدو سره غیر مستقیم ذخیره کړئ | (Z+q) ← Rr | هیڅ نه | 2 |
STS | k ، Rr | اسامام ته مستقیم پلورنځي | (k) ← Rr | هیڅ نه | 2 |
LPM | د برنامه برنامه یادونه | R0 ← (Z) | هیڅ نه | 3 | |
LPM | Rd ، Z | د برنامه برنامه یادونه | Rd ← (Z) | هیڅ نه | 3 |
LPM | Rd ، Z + | د برنامه برنامه یادونې او پوسټ - شرکت | Rd ← (Z)، Z ← Z+1 | هیڅ نه | 3 |
SPM | د ذخیره کولو برنامه یادونه | (z) ← R1:R0 | هیڅ نه | ||
IN | Rd ، P | په پورټ کې | Rd ← مخ | هیڅ نه | 1 |
بهر | P ، Rr | د بندر څخه | P ← Rr | هیڅ نه | 1 |
زور | Rr | په سټاخ باندې ثبت ثبت کړئ | STACK ← Rr | هیڅ نه | 2 |
POP | Rd | له سټاخ څخه پاپ ثبت | Rd ← سټیک | هیڅ نه | 2 |
د MCU کنټرول لارښوونې | |||||
NOP | عملیات نشته | هیڅ نه | 1 | ||
خوب | خوب | (د خوب فعالیت لپاره ځانګړي ډیسریک وګورئ.) | هیڅ نه | 1 | |
WDR | د څار کتل بیا تنظیمول | (د WDR / ټایمر لپاره ځانګړي ډیسک وګورئ.) | هیڅ نه | 1 | |
BREAK | ماتول |
سرعت (میګا هرټز) (1) | عرضه کولtage (V) | د حرارت درجه | بسته (2) | د امر کولو کوډ (3) |
10 | ۲۲۰ – ۲۴۰ | صنعتي
(-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 | ۲۲۰ – ۲۴۰ | صنعتي
(-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. د سرعت په مقابل کې د عرضې حجمtage، برخه وګورئ 21.3 پا 163ه کې "سرعت".
ټولې کڅوړې Pb-free ، halide-free او مکمل زرغون دي او دا د خطرناکو مادې (RoHS) محدودیت لپاره د اروپا لارښوونې سره مطابقت لري.
د کوډ شاخصونه
H: NiPdAu مخکښ پای
U: میټ ټین
R: ټیپ او رییل
دا وسایل هم د ویفر په ب inه چمتو کیدی شي. مهرباني وکړئ د تفصيلي سپارښتنې معلوماتو او لږترلږه مقدارونو لپاره د اتیم پلور سیمه ایز دفتر سره اړیکه ونیسئ.
اراټا
اریټا ایټینی 25
پدې برخه کې د بیاکتنې لیک د ATtiny25 وسیله بیاکتنه ردوي.
Rev D - F
نه پېژندل شوې اریټا.
Rev B - C
د EEPROM لوستل ممکن په ټیټ عرضه کولو کې ناکام شيtage / د ټیټ ساعت فریکونسۍ
د EEPROM لوستل ممکن په ټیټ عرضه کولو کې ناکام شيtage / د ټیټ ساعت فریکونسۍ
د EEPROM لوستلو هڅه کول په ټیټ ساعت فریکونسۍ او/یا د کم عرضه حجمtage کیدای شي د ناسم معلوماتو پایله ولري.
ستونزه فکس / ورکارونډ
EEPROM مه کاروئ کله چې د ساعت فریکونسۍ د 1MHz څخه ښکته وي او د عرضې حجمtage د 2V څخه ښکته دی. که چیرې عملیاتي فریکونسی د 1MHz څخه پورته نشي نو د عرضې حجمtage باید د 2V څخه ډیر وي. په ورته ډول، که د عرضې حجمtage د 2V څخه پورته نشي کیدی نو د عملیاتي فریکونسۍ باید د 1MHz څخه ډیر وي.
دا به د تودوخې انحصار پیژندل کیږي مګر ځانګړنه نده شوې. لارښوونې یوازې د خونې تودوخې لپاره ورکول کیږي.
ریو A
نه sampرهبري شوی.
اریټا ایټینی 45
پدې برخه کې د بیاکتنې لیک د ATtiny45 وسیله بیاکتنه ردوي.
Rev F - G
نه پېژندل شوې اریټا
Rev D - E
د EEPROM لوستل ممکن په ټیټ عرضه کولو کې ناکام شيtage / د ټیټ ساعت فریکونسۍ
د EEPROM لوستل ممکن په ټیټ عرضه کولو کې ناکام شيtage / د ټیټ ساعت فریکونسۍ
د EEPROM لوستلو هڅه کول په ټیټ ساعت فریکونسۍ او/یا د کم عرضه حجمtage کیدای شي د ناسم معلوماتو پایله ولري.
ستونزه فکس / ورکارونډ
EEPROM مه کاروئ کله چې د ساعت فریکونسۍ د 1MHz څخه ښکته وي او د عرضې حجمtage د 2V څخه ښکته دی. که چیرې عملیاتي فریکونسی د 1MHz څخه پورته نشي نو د عرضې حجمtage باید د 2V څخه ډیر وي. په ورته ډول، که د عرضې حجمtage د 2V څخه پورته نشي کیدی نو د عملیاتي فریکونسۍ باید د 1MHz څخه ډیر وي.
دا به د تودوخې انحصار پیژندل کیږي مګر ځانګړنه نده شوې. لارښوونې یوازې د خونې تودوخې لپاره ورکول کیږي.
Rev B - C
PLL لاک کول نه
د غوښتنلیک کوډ څخه لوستل شوي EEPROM د لاک بایټ حالت 3 کې کار نه کوي
د EEPROM لوستل ممکن په ټیټ عرضه کولو کې ناکام شيtage / د ټیټ ساعت فریکونسۍ
په OC1B- XOC1B کې د ټیمر کاونټر 1 PWM تولید تولید په سمه توګه کار نه کوي
PLL لاک کول نه
کله چې د 6.0 MHz لاندې فریکونسیو کې ، PLL به تالا نه کړي
د ستونزې حل / کاري حل
کله چې PLL کاروئ ، په 6.0 میګاهرتز یا له هغې لوړ ځئ.
د غوښتنلیک کوډ څخه لوستل شوي EEPROM د لاک بایټ حالت 3 کې کار نه کوي
کله چې د حافظې لاک بټ LB2 او LB1 حالت 3 ته برنامې ورکړل شي ، نو د EEPROM لوستل د غوښتنلیک کوډ څخه کار نه کوي.
ستونزه حل / شاوخوا کار کول
د لاک بټ محافظت حالت 3 مه ترتیب کوئ کله چې د غوښتنلیک کوډ د EEPROM څخه لوستلو ته اړتیا ولري.
د EEPROM لوستل ممکن په ټیټ عرضه کولو کې ناکام شيtage / د ټیټ ساعت فریکونسۍ
د EEPROM لوستلو هڅه کول په ټیټ ساعت فریکونسۍ او/یا د کم عرضه حجمtage کیدای شي د ناسم معلوماتو پایله ولري.
ستونزه فکس / ورکارونډ
EEPROM مه کاروئ کله چې د ساعت فریکونسۍ د 1MHz څخه ښکته وي او د عرضې حجمtage د 2V څخه ښکته دی. که چیرې عملیاتي فریکونسی د 1MHz څخه پورته نشي نو د عرضې حجمtage باید د 2V څخه ډیر وي. په ورته ډول، که د عرضې حجمtage د 2V څخه پورته نشي کیدی نو د عملیاتي فریکونسۍ باید د 1MHz څخه ډیر وي.
دا به د تودوخې انحصار پیژندل کیږي مګر ځانګړنه نده شوې. لارښوونې یوازې د خونې تودوخې لپاره ورکول کیږي.
د OC1B - XOC1B کې د ټیمر کاونټر 1 PWM تولید تولید په سمه توګه کار نه کوي
د ټیمر کاونټر 1 PWM محصول OC1B-XOC1B سم کار نه کوي. یوازې په هغه حالت کې کله چې د کنټرول بیټونه ، COM1B1 او COM1B0 په ترتیب ډول د COM1A1 او COM1A0 په ورته حالت کې وي ، د OC1B-XOC1B راوتل په سمه توګه کار کوي.
ستونزه حل / شاوخوا کار کول
یوازینی کار د COM1A [1: 0] او COM1B [1: 0] کنټرول بټونو کې د ورته کنټرول ترتیب کارول دي ، د معلوماتو پا dataه کې جدول 14- 4 وګورئ. ستونزه د Tiny45 Rev D لپاره ټاکل شوې ده.
ریو A
د بریښنا مصرف ډیر لوړ بریښنا
ڈیبګ ویر اړیکه له لاسه ورکوي کله چې مداخلو ته یو قدم وي
PLL لاک کول نه
د غوښتنلیک کوډ څخه لوستل شوي EEPROM د لاک بایټ حالت 3 کې کار نه کوي
د EEPROM لوستل ممکن په ټیټ عرضه کولو کې ناکام شيtage / د ټیټ ساعت فریکونسۍ
د بریښنا مصرف ډیر لوړ بریښنا
درې حالتونه به د بریښنا مصرف د ډیر لوړ بریښنا المل شي. دا دي:
یو خارجی ساعت د فیوز لخوا غوره شوی ، مګر I / O PORT لاهم د آوټ پټ په توګه فعال شوی.
EEPROM د بریښنا ښکته کولو ته ننوتلو دمخه لوستل شوی.
VCC 4.5 ولټ یا لوړ دی.
رد کول: پدې سند کې معلومات د اتمیل محصولاتو په اړه چمتو شوي. د دې سند لخوا یا د اتمیل محصولاتو پلورلو په تړاو هیڅ ډول جواز ، څرګند یا ضمیمه ، د ایسټوپیل یا بل ډول ، د فکري ملکیت حق ته نه ورکول کیږي. پرته له دې چې په اتمیل کې موقعیت لري د پلور په شرایطو او شرایطو کې ټاکل شوي WEBسایټ، ATMEL هیڅ ډول مسؤلیت نه مني او د دې محصولاتو پورې اړوند هر ډول څرګند، ضمیمه یا قانوني تضمین ردوي چې پکې شامل دي، مګر محدود نه دي، د پورتنی تضمین، د تضمین لپاره د تضمین تضمین. په هیڅ صورت کې به ATMEL د کوم مستقیم، غیر مستقیم، پایلې، مجازاتو، ځانګړي یا تصادفي زیانونو لپاره مسؤل نه وي (پشمول، پرته له کوم محدودیت، د ضایعاتو او ګټې لپاره د زیانونو په شمول)، د امریکا د غیرقانوني کارونې، د غیرقانوني سوداګرۍ، د غیرقانوني سوداګرۍ لپاره دا سند، حتی که ATMEL ته د داسې زیانونو د احتمال په اړه مشوره ورکړل شوې وي.
اتمل د دې سند د مینځپانګو دقت یا بشپړتیا په اړه هیڅ ډول استازیتوب یا تضمین نه کوي او حق لري چې هر وخت پرته له خبرتیا څخه مشخصاتو او محصولاتو توضیحاتو کې بدلون راولي. اتمل هیڅ ژمنه نه کوي چې دلته موجود معلومات تازه کړي. پرته لدې چې په ځانګړي ډول بل ډول چمتو شوي وي ، د اتمیل محصولات د موټرو غوښتنلیکونو لپاره مناسب ندي او نه به کارول کیږي. د اتمیل محصولات د ژوند ملاتړ یا دوام لپاره په غوښتنلیکونو کې د اجزاو په توګه د کارولو لپاره مطلوب ، مجاز یا تضمین ندي.