به نام خدا سلام!

در این مطلب قصد دارم تا انواع مقاومت ها رو شرح بدم!

با دقت بخونید مطلب مهمی هست!

چند وقت پیش رفتم تا توی پرتئوس یه مداری طراحی کنم که با کلیک کردن چراغ LED روشن بشه و اگه کلید ول کنی خاموش بشه!

برای فهمیدن بهتر به نظر من کار هایی که میگم رو انجام بدید!

توی پرتئوس یک LED و یک ATMEGA16 و یک Buttom بسازید!

برنامه زیر رو به میکرو بدید (از طریق کدویژن کامپیال کنید و فایل .hex رو به میکرو بدید)


خواهید دید که با یک بار زدن دکمه (کلید) چراغ روشن میمونه و دیگه خاموش نمیشه! یا بلعکس چراغ خاموش میشه دیگه روشن نمیشه!

#include <mega16.h>

void main(void)

{

    DDRA=0X00;//ورودی کردن پورتی که دکمه یا همون کلید بهش وصله

    DDRC=0XFF;//خروجی کردن پورتی که ال ای دی بهش وصله

    while (1)

    {  if(PINA.0==1)PORTC.0=1;

        if(PINA.0==0)PORTC.0=0;

  }; }


بدون مقاومت خارجی

برای اینکار نیاز به مقاومت پول آپ یا پول دان داریم...

حالا یه مقاومت (RES) توی پرتئوس اضافه کنید بین کلید و میکرو قرار بدید و به زمین وصل کنید (Ground) یعنی به 0 ولت! برنامه اجرا کنید و موفقیت خودتون رو ببینید! به این که مقاومت به زمین وصله میگن مقاومت پول دان!

با مقاومت


حالا خودتون جاشون رو عوض کنید یعنی به مقاومت یه 5 ولت بدید و کلید رو به زمین یا 0 ولت وصل کنید! میبینید که بلعکس میشه! یعنی لامپه از اول روشنه و با زدن کلید خاموش میشه...!

به این میگن مقاومت پول آپ خارجی! حالا چرا خارجی؟ چون خارج از میکرو هست چون میکرو خودش مقاومت داره و با فعال کردن اون لازم به مقاومت پول آپ خارجی نیست!

برای اینکار برای یه کد رو اضافه کنیم که مقاومت رو فعال کنه و اون کد کد PORTA.0=1 هست با این کد میتونید مقاومت داخلی میکرو رو فعال کنید

برای همین دوباره توی کد ویژن کد زیر رو وارد کنید

#include <mega16.h>

void main(void)

{

    DDRA=0X00;//ورودی کردن پورتی که دکمه یا همون کلید بهش وصله

    PORTA=0XFF;//پول آپ کردن پورت ای از داخل میکرو

    DDRC=0XFF;//خروجی کردن پورتی که ال ای دی بهش وصله

    while (1)

    {

        if(PINA.0==0)PORTC.0=1;

        if(PINA.0==1)PORTC.0=0;

    };}

میتونید پول آپ خارجی رو توی پرتئوس حذف کنید و موفقیت خودتون رو ببینید! که با نگه داشتن کلید LED روشن و با رها کردن آن LED خاموش می شود!

امیدوارم خوب فهمیده باشید!

منتظر نظراتتون هستم!

فعلا یا علی....