Home / میکروکنترلر / آموزش میکروکنترلر AVR / آموزش میکروکنترلر AVR قسمت هشتم(فیوزبیت های میکروکنترلر های AVR)
فیوزبیت AVR
فیوزبیت AVR

آموزش میکروکنترلر AVR قسمت هشتم(فیوزبیت های میکروکنترلر های AVR)

فیوزبیت چیست؟

  • فيوز بيت ها قسمتي از حافظه ي ميكروكنترلر AVR هستند كه امكانات و تنظیماتی  را در اختيار كاربر قرار مي دهند و با  پاک شدن ميكرو مقدار آن ها تغيير نمي كند.
  • يك به معني غير فعال بودن و صفر فعال بودن هر بيت مي باشد.
  • تعداد و نام فیوزبیت ها در میکروکنترلر های AVR تقریبا باهم برابر است.
  • هر میکروکنترلر با توجه به امکاناتی که در آن وجود دارد . دارای فیوز بیت های معینی می باشد.

لیست فیوز بیت های میکروکنترلر های AVR:

فیوزبیت OCDEN :

OCDEN : on-chip Debug Enable

این فیوزبیت در صورت برنامه ریزی شدن به همراه فیوز بیت JTAGEN برای سیستم اشکال زدایی داخل مدار (on-chip debug) استفاده می شود.

اگر این فیوز بیت فعال باشد دیگر قادر به استفاده از پورتی که JTAG بر روی آن قرار دارد نیستیم (به طور مثال پورت C در ATmega 32) پس برای استفاده از این پورت باید این فیوز بیت را غیر فعال کینم یعنی 1 کنیم.

فیوزبیت JTAGEN :

JTAGEN : JTAG Enable

این فیوز بیت برای فعال کردن قابلیت برنامه ریزی از طریق رابط JTAG قابل استفاده و در حالت پیش فرض برنامه ریزی شده است.

فیوزبیت SPIEN:

SPIEN : SPI Enable

این فیوز بیت برای فعال کردن کردن قابلیت برنامه ریزی از طریق رابط SPI قابل استفاده و در حالت پیش فرض برنامه ریزی شده است. اگر این بیت را 1 کنیم رابط SPI از کار افتاده و دیگر میکرو از طریق SPI پروگم نشده و تقریبا غیر قابل استفاده می شود.

فیوزبیت  EESAVE:

EESAVE : EEprom Save

در صورت برنامه ریزی شدن این فیوزبیت به هنگام شدن ERASE کردن میکروکنترلر فقط حافظه ی FLASH  می شود و حافظه EEPROM داخلی پاک نمی شود.

فیوزبیت BOOTSZ1,0 :

BOOTSZ : Boot size

این فیوز بیت برای تعیین اندازه و مکانشروع حافظه BOOT  مورد استفاده قرار میگیرد. این دو فیوز بیت به صورت پیش فرض برنامه نویسی شده است.

فیوزبیت BOOTST :

BOOTST : BOOT Reset

این فیوز بیت برای انتخاب بردار RESET  استفاده می شود ودر حالت پیش فرض برنامه ریزی نشده است در صورت برنامه ریزی شدن این فیوزبیت آدرس بردار RESET به ابتدای حافظه ی BOOT انتقال می یابد.

فیوزبیت BODEN :

BODEN : Brown-Out Detector Enable

این فیوز بیت برای فعال کردن وتحد Brown-Out  استفاده می شود. از این فیوزبیت و فیوز بیت BODLEVEL بطور هم زمان استفاده می شود.

فیوزبیت BODLEVEL :

BODLEVEL : Brown-Out Detection LEVEL

اگر ابن فیوزبیت برنامه ریزی نشده باشد (حالت پیش فرض) در صورتی که ولتاژ تغذیه پایه VCC از مقدار 2.7 ولت کمتر شود. میکروکنترلر در حالت Reset قرار می گیرد و در صورت برنامه ریزی شدن میکروکنترلر با ولتاژ کمتر از 4  ولت در حالت Reset قرار می گیرد.

فیوزبیت های CKSEL3..0:

CKSEL : Clock Select

این فیوزبیت برای انتخاب منبع تولید کلاک استفاده می شود. همان طور که در پست قبلی اشاره شد کلاک سیستم میکروکنترلر می تواند از 5 منبع تولید شود. این فیوزبیت ها در واقع منبع انتخاب شده توسط کاربر به میکرو معرفی می شود.

فیوزبیت CKSEL
فیوزبیت CKSEL

فیوزبیت CKOPT:

این فیوزبیت برای انتخاب کلاک اسیلاتور استفاده می شود. با برنامه ریزی کردن این فیوزبیت خازن های داخلی میکرو با مقدار 36pf فعال می شوند و دیگر نیازی به استفاده از خازن های خارجی بر روی کریستال نیست.

این فیوزبیت همیشه غیرفعال است مگر زمانی که از کریستال یا رزوناتور خارجی بیشتر از 8 mhz استفاده شود.

فیوزبیت SUT1.0:

SUT : Start-Up Time

این فیوزبیت ها برای تعیین زمان Start-Up بکار برده می شوند و سرعت RESET میکرو را مشخص می کند.

فیوزبیت SUT
فیوزبیت SUT

فیوزبیت ها را هنگام پروگرم کردن میکرو در برنامه ای که برای پروگرم کردن استفاده می کنیم تنظیم می کنیم.

progisp

About علی عزتی

علی عزتی هستم. رشته ی مهندسی برق الکترونیک رو خوندم. علاقه ی من به یادگیری و به اشتراک گذاشتن چیز هایی که یاد گرفتم. باعث شد تا الکترولب ایجاد بشه. علاقه ی زیادی به الکترونیک دارم. و دوست دارم چیزهای جدید یادبگیرم و بسازم ... :))

Check Also

میکروپایتون و راه اندازی آن روی ESP8266 قسمت اول

پایتون یک زبان برنامه‌نویسی همه منظوره سطح بالا می باشد. قابلیت یادگیری آسان، آن را ...

9 comments

  1. ابراهیم محمدی

    با سلام مفید بود اگر در مورد وقفه ها هم مطلبی بنویسید عرض تشکر دارم- مهندسی کنترل ابزار دقیق

    • سلام
      درگیر امتحانات ترم تابستان هستم انشاالله بعد از امتحان یک پست مفصل درباره وقفه خواهیم داشت

  2. سلام دوست عزیز
    اول ازت تشکر میکنم بابت مطالب مفیدت
    یه سوال و دو درخواست هم ازت داشتم که اگه امکانش هست ممنون میشم انجام بدی
    سوالم اینه که توی بخش همین پروگرامر اگه بخوایم از یه کریستال خارجی با فرکانس بالای 8 مگاهرتز استفاده کنم باید از کجا این تنظیمات رو انجام بدم؟(من از نرم افزار prog isp استفاده میکنم و متاسفانه بخش nagivation با زبان چینی بالا میاد ! 🙁 )
    در خواستم ازت اینه که مطالب آموزشیت با چندتا پروژه ساده همراه باشه
    و دومین درخواستم اینه که اگه میشه یه پروژه کار با لودسل و استفاده از ad7730 یا ای سی مشابه رو پست بذاری ،چون خود من و خیلی های دیگه دنبالشن….
    اگه میشه خبرش رو هرچه زودتر برام ایمیل کنی واقعا ممنون میشم چون واقعا بهش نیاز دارم

    • سلام
      1. درباره ی نرم افزار prog isp بهتر و راحت تر این هست که از اینترنت ورژن درست و تازش رو دانلودکنید و استفاده کنید.
      اما راه دیگه ای هم هست که از این سایت استفاده کنید. AVR fuse calculator و تنظیمات خودتون رو اعمتال کنید و مقدار عددی اون روکه سایت میده به پروگرمرتون انتقال بدبد برای استفاده از فرکانس بالای 8 باید از کریستال خارجی استفاده بشه و من در تنظیمات پروگرمر برای مگا 32 lowbit=0xff و highbit=0xd9 تنظیم میکنم
      2. و اما در مورد لودسل تا پروژه ای پیش نیاد من نمی تونم قول بدم که آموزش لودسل رو در سایت قرار میدم بالاخره زندگی دانشجویی هست و هزینه هااجازه نمیده هر سخت افزاری رو خرید و استفاده ازش رو تجربه کرد.
      3. در مورد آی سی ad7730 یک مبدل آنالوگ به دیجیتا هست که کار باهاش یا IC مشابه رو احتمالا در سایت قرار میدم.

  3. با عرض سلام خدمت ادمین محترم

    آیا راهی برای بازگردانی میکروکنترولر های که گزینه ” programming disabled” در هنگام پروگرام کردن در برنامه ی “codevisoion “بر روی آنها استفاده شده، وجود داره؟
    یکی از میکروهام اینطور شده و نمیشه پروگرامشون کرد!

    سپاس از راهنمایی های مفیدتون

    • سلام
      وجود داره ولی با پروگرمر هایی که با ولتاژ 12 ولت میکرو رو پروگرم میکنند که این پروگرمر ها زاید در دسترس نیستند
      ولی می تونید این عبارت رو در گوگل سرچ کنید avr fusebit doctor این یک برد هست که شماتیک و PCB + سورس اون در دسترس هست و می تونه مشکل شما رو حل کنه

  4. حمید بایرامی

    با تشکر از دوست خوبمون که من تو فیوز بیت ها گیر کرده بودم که با توجه به متن فوق تونستم مشکلم رو حل کنم .تشکر فراوان

  5. سلام اگه امکان داره روش تنظیم روی بسکام رو اموزش بدید

    • تنظیم فیوز بیت در هنگام پروگرم کردن میکرو انجام می دهند و ربطی به زبان برنامه نویسی نداره تنظیمات فیوزبیت رو در برنامه ی که توسط اون میکروکنترلتون رو پروگرم می کنید تغییر بدید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.