اتصال قطعات الکترونیکی به AVR
اتصال قطعات الکترونیکی به AVR
برای اتصال قطعات به میکروکنترلر AVR بایستی ملاحظاتی را در نظر گرفت. به شکل زیر دقت کنید.
این شکل مدارداخلی مربوط به پینهای ورودی و خروجی AVR را نشان می دهد. همان طور که مشاهده می شود هر یک از پینهای ورودی و خروجی دارای دیودهای محافظتی هستند. ولی بهتر است از ورود ولتاژ بیش از حد مجاز به پین خودداری گردد. همچنین هر پین با یک خازن داخلی زمین شده است. البته این خازن مقدار کمی دارد. از طرف دیگر همانطور که مشاهده می شود هر پین می تواند به وسیله مقاومت [pmath size=3]R_pu[/pmath] به تغذیه میکرو متصل گردد. یعنی برای Pull-up کردن پایه های میکروکنترلر نیازی به وصل مقاومت Pull-up خارجی نیست. در هر دیتاشیت الکترونیکی آیتمی به نام Absolute Maximum Rating همراه با یک جدول وجود دارد که حداکثر استرس به IC را نشان می دهد. باید توجه داشت که این مقادیر در زمان کوتاه است و در صورت ادامه دار شدن باعث صدمه به IC خواهد شد. مثلاً برای ATMEGA8A مقادیر زیر را داریم. به خاطر سپردن این مقادیر در انتخاب میکرو کنترلر مؤثر است.
دمای فعال |
از -۵۵ درجه تا +۱۲۵ درجه سانتیگراد |
دمای نگهداری |
از -۶۵ درجه تا +۱۵۰ درجه سانتیگراد |
ولتاژ روی هر پین بجز RESET نسبت به زمین |
-۰٫۵V تا Vcc+0.5V |
ولتاژ روی پین RESET نسبت به زمین |
-۰٫۵V تا +۱۳V |
حداکثر ولتاژ کاری |
۶V |
مقدار جریان DC برای هر پین |
۴۰ mA |
مقدار جریان Vcc و GND |
۳۰۰ mA |
حداکثر جریانی که می تواند به پین وارد و یا از آن خارج شود در دیتاشیت آن مشخص شده است. مقدار آن معمولاً برای همه مدلها یکی است. معمولاً جریانی که پین های پورت می دهد قابلیت روشن کردن LED و Buzzer را دارد. به خاطر داشته باشید که جریانی که میکرو از هر پین می کشد بیشتر از جریانی است که می تواند به عنوان منبع تزریق کند. بنابراین بهتر است قطعات خارجی با منطق منفی به میکروکنترلر وصل شوند.
نحوه فعال کردن Pull-up هر پین
پین های ورودی در میکروکنترلرها معمولاً باید با مقاومت Pullup شود.
در میکروکنترلرهای AVR می توان با استفاده از رجیسترها Pullup داخلی پورت را فعال کرد. برای فعال کردن Pullup مربوط به هر پین از پورت، بیت متناظر با آن را در رجیستر PORTX برابر ۱ می کنیم یا به عبارت دیگر روی پین مربوطه ۱ می نویسیم.
Codevision: DDRA = 0x00;
PORTA = 0xFF;
Assembly: LDI R16, 0x00
OUT DDRA, R16
LDI R16, 0xFF
OUT PORTA, R16
لازم به ذکر است در حین اجرای برنامه می توان به تناوب پینها را حسب نیاز به صورت ورودی یا خروجی تعریف کرد.
حالت tristate (حالت سوم)
پین ها می توانند سه حالت داشته باشند. ورودی، خروجی و حالت امپدانس بالا. برای تعریف به صورت امپدانس بالا روی رجیسترهای PORT و DDR متناظر ۰ می نویسیم:
Codevision: DDRA = 0x00;
PORTA = 0x00;
Assembly: LDI R16, 0x00
OUT DDRA, R16
OUT PORTA, R16
در این حالت ورودی پین امپدانس بالا بوده یعنی باری روی مداری که به آن از خارج وصل شده اعمال نمی کند. این خاصیت کاربردهای فراوانی دارد که از جمله آنها اتصال چند میکروکنترلر به یک باس داده است.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.