: درصورتی که بیت های قفل برنامه ریزی شده باشند برنامه ریزی این بیت به همراه بیت JTAGEN باعث می شود که سیستم ON CHIP DEBUG فعال شود. برنامه ریزی شدن این بیت به قسمت هایی ازمیکرو امکان می دهد که درمدهای SLEEP کارکنند که این خود باعث افزایش مصرف سیستم می گردد. این بیت به صورت پیش فرض برنامه ریزی نشده(1) است.
JTAGEN: بیتی برای فعال سازی برنامه ریزی میکرو از طریق استاندارد ارتباطی IEEE که درحالت پیش فرض فعال است ومیکرو می تواند از این ارتباط برای برنامه ریزی خود استفاده کند.
پایه های PC 5002 در این ارتباط استفاده می شود.
SPIEN: درحالت پیش فرض برنامه ریزی شده ومیکرواز طریق سریال SPI برنامه ریزی
می شود.
CKOPT: انتخاب کلاک که به صورت پیش فرض برنامه ریزی نشده است عملکرد این بیت بستگی به بیت های CKSEL دارد.
EESAVE: درحالت پیش فرض برنامه ریزی نشده ودرزمان پاک شدن میکرو حافظه EEPROM پاک می شود ولی درصورتی که برنامه ریزی شود محتویات EEPROM درزمان پاک شدن میکرو، محفوظ می ماند.
BOOTZ 0, BOOTSZ 1: برای انتخاب مقدار حافظه BOOT طبق جدول زیر برنامه ریزی می شود ودرصورت برنامه ریزی فیوز بیت BOOTRS اجرای برنامه از آدرس حافظه BOOT آغاز خواهد شد.
پیکره بندی پورت ها
برای تعیین جهت پایه پورت ها از این پیکره بندی استفاده می کنیم. جهت یک پایه
می تواند ورودی یا خروجی باشد.
CoFig portx= state
ConFig pinx.y= state
X,y بسته به میکرو می توانند به ترتیب پایه های 0 تا 1 پورت های A,B,C,D,E,F باشند. STATE نیز می تواند یکی از گزینه های زیر باشد:
INPUT یا0: در این حالت رجیستر جهت داده پایه یا پورت انتخاب صفر می شود وپایه یا پورت به عنوان ورودی استفاده می شود.
OUTPUT یا 1: در این حالت رجیستر جهت داده پایه یا پورت انتخاب یک می شود وپایه یا پورت به عنوان ورودی استفاده می شود.
زمانی که بخواهید از پورتی بخوانید بایستی از رجیستر PIN پورت مربوط استفاده کنید ودر هنگام نوشتن در پورت بایستی در رجیستر PORT بنویسید.
بررسی پورت های میکروATMEGA 32
در این بخش قصد داریم برای آشنایی بیشتر با عملکرد پورت ها ورجیسترهای مربوطه به طور نمونه به بررسی پورت های میکرو ATMEGA 32 بپردازیم.
پورت A
پورت A یک دو طرفه 8 بیتی است. سه آدرس از مکان حافظه اختصاص به PORT دارد. یک آدرس برای رجیستر داده PORT، دومی رجیستر جهت داده DDRA وسومی پایه ورودی پورت PIN, A است. آدرس پایه های ورودی پورت A فقط قابل خواندن است درصورتی که رجیستر داده ورجیستر جهت داده هم خوانی وهم نوشتنی هستند. تمام پایه های پورت دارای مقاومت Pull- up مجزا هستند. بافر خروجی پورت Aمی تواند تا Ma20 را Siml کند درنتیجه LED را مستقیماً راه اندازی کند. هنگامی که پایه های PA0-PA 1 با مقاومت های Pull- down خارجی، خروجی استفاده میشوند، آن ها SOURCE جریان می شوند زمانی که مقاومت های Pull- up داخلی فعال باشند.
(رجیسترهای پورت A)
رجیسترهای پورت A عبارتند از:
- رجیستر داده پورت
- رجیستر جهت داده پورت DDRA-A
- بایت آدرس پایه های ورودی پورت PINA-A
PINA یک رجیستر نیست این آدرس دسترسی به مقدار فیزیکی بر روی هریک از پایه های پورت A را ممکن می سازد. زمانی که پورت A خوانده می شود، داده لچ پورت A خوانده می شود وزمانی که از PINA خوانده می شود مقدار منطقی که برروی پایه ها موجود است خوانده می شود.
Comment Pull_up
PUD in SFLOR PORTxn DDXN
Tri_ State(Hi-z) No Input X 0 0
Pxn will source
Current if ex1. Pulled low Yes Input 0 1 0
Tri- state (Hi-z) No Input 1 1 0
Output low(sink) No Output X 0 1
Output High(source) No Output X 1 1
تمام 8 پایه موجود زمانی که به عنوان پایه های دیجیتال استفاده می شوند دارای عملکرد مساوی هستند. PAN، پایه ی عمومی، بیت DDAn در رجیستر DDRA مشخص کننده جهت پایه است. اگر DDAn یک باشد، Pan به عنوان یک پایه ی خروجی مورد استفاده قرار می گیرد واگر DDAn صفرباشد، Pan به عنوان یک پایه ورودی در نظر گرفته می شود. اگر port An یک باشد هنگامی که پایه به عنوان ورودی تعریف شود، مقاومت Pull-up فعال می شود برای خاموش کردن مقاومت باید port An صفر شود یا این که پایه به عنوان خروجی تعریف شود. پایه های پورت زمانی که ری ست(Reset) اتفاق می افتد، به حالت Tri-state می رود.
دیگر کاربردهای پورت A
پورت A به عنوان ADC هم استفاده می شود. اگر تعدادی از پایه های پورت A خروجی تعریف شوند این نکته بسیار مهم است که درزمان نمونه برداری از سیگنال آنالوگ توسط ADC سوئیچ نشوند. این کار ممکن است عملیات تبدیلی ADC را نامعتیر کند.