پروژه های میكروكنترلر و نصب و پخش سیستم های حفاظتی (AVR , 8051)
دانلود و آموزش و پروژه های( دانلود 8051 , دانلود plc , دانلود avr ), نصب و پخش سیستم های حفاظتی اتومبیل و اماکن با نازلترین قیمت در محل ،پخش ریموت درب پارکینگ ها و منازل و دانلود نرم افزار موبایل و دانلود قالب وبلاگ
قبل از هر چیز سخت افزار پایه PIC جهت روشن شدن را در شكل زیر می بینیم. برای اینكه یك PIC را برنامه ریزی كنیم ابتدا باید قطعات زیر را حتما به میكرو وصل كنیم و بعد قطعات دیگر را باتوجه به طراحی آن پروژه به میكرو وصل كنیم.
Label (برچسب)
همانطوری كه از معنی این دستورات پیدا است به قسمتی از برنامه برچسب میزند. حال كاربرد این برچسب چیست؟ از برچسپ برای برای تكرار یك سری دستورات یا كل برنامه یا با تحقق یك شرط cpu به آن محلی كه برچسب خورده پرش می كند و دستورات نوشته شده بعد از label را اجرا می كند. برچسب می تواند هر كلمه ای باشد كه خودمان تعریف می كنیم و باید به یك نكته توجه كرد كه برچسب نباید با اعداد شروع شود. برچسب به حروف بزرگ یا كوچك حساس نیست. برای اینكه یك برچسب درست كنیم باید اول نام برچسب را بنویسیم و سپس از دو نقطه (:) جلویكلمه برچسب استفاده كنیم. حال كامپایلر این كلمه را به عنوان برچسب می شناسد و برای پروگرام كردن از آن استفاده می كند. دستوراتی كه برای پرش به برچسب وجود دارند عبارت اند از:
Goto از این دستور برای پرش به برچسب مورد نظر استفاده می شود
Gosub برای فراخوانی یا صدا زدن یك زیر برنامه كه با یك label مشخص شده است.
این دستورات شبیه به همون دستورات jump و call در 8051 می باشد. قالب آن به صورت زیر می باشد: دوستان غزیز هروقت در قسمتی از برنامه چند تا .... نقطه چین بود به معنای تعدای دستورات می باشد!
Label: ….
………
Goto label
در این مثال هرگاه دستورات .... اجرا شد دو باره به آدرس label پرش می كند و برنامه را تكرار می كند.
مثالی با gosob :
MGH: ……
Gosub mohsen
…………
………..
Goto MGH
Mohsen:…….
……………..
return
دوستان توجه كنید كه هرگاه از یك زیر برنامه استفاده می كنید بعد از اتمام دستورات زیر برنامه از return در پایان زیر برنامه حتما استفاده كنید. این كار باعث می شود تا بعد از اتمام زیر برنامه cpu آدرس شمارنده pc را كه در پشته ذخیره كرده بود و به mohsen رفت را دوباره به pc برگرداند و در نهایت به انجام ادامه برنامه اصلی برود. یعنی دستورات بعد از gosub mohsen را اجرا كند.
متغیر ها VAR
اول از همه متغیر چیست؟ متغیر همانطور از معنی اش پیدا است یعنی یه چیزی كه دائم در حال تغییر است و ثبات ندار. متغیر ها عموما در حافظه RAM قرار می گیرند و توسط دیگر دستورات مقدار آنها یا افزایش یا كاهش می بابد تا مثلا به مقدار یه شرط كه ما در برنامه تعریف كرده ایم رسید اند قسمت دیگری از برنامه را اجرا كنند.
متغیر ها را می توان به صورت بیتی bit یا بایتی byte یا یك كلمه word تعریف كرد. برای تعریف كرن یك متغیر ابتدا نام آن متغیر را می نویسم سپس دستور VAR و بعد از آن نوع داده یعنی بیتی یا بایتی یا كلمه را مشخص می كنیم.
mgh var bit
mgh var byte
mgh var word
در اولی مقدار یك بیت به متغیر mgh نسبت داده شده است.
در اولی مقدار یك بایت یا داده 8 بیتی به متغیر mgh نسبت داده شده است.
در اولی مقدار یك كلمه یا داده 16 بتی به متغیر mgh نسبت داده شده است.
مثال: كنترل یك led كه بیت 6 پورت b وصل می باشد.
Led_red var portb.6
Led_red=1
یا
Led_red=0
ما در اول برنامه بیت 6 از پورت B را به متغیر Led_red نسبت داده ایم حالا ما در هر جایی از برنامه می توانیم مسقیما این led را یا خاموش و یا روشن كنیم. و دیگر نیازی به نوشتن portb در طول برنامه نیست. فقط كافی است كه مقدار 0 یا 1 را به led_red بدهیم.
همچنین می توان كل 8 بتی مثلا پورت b را به MGH نسبت دهیم.
mgh var portb
mgh=6
پورت b به متغیر mgh نسب داده شد و در هر جایی از برنامه می توان روی این پورت عدد را كپی كنیم. مثلا در اینجا عدد 6 روی پورت b ریخته می شود.
Aliases نام مستعار
از این روش می توان قسمتی از یك متغیر را به عنوان متغیر دیگری تعریف مثلا در میكرو می توان كل پورت یا یك بیت به صورت برنامه ریزی كرد. یا میتونیم بگیم كه متغیر در متغیر میشه. به مثال زیر توجه كنید؟
mohsen var portb
k5 var mohsen.bit5
در این برنامه ما پورت B را به mohsen نسبت داده ایم . مثلا این پورت یك باس آدرس یا داده می باشد. حالا ما در یه جایی از برنامه مثلا می خواهیم هرگاه بیت 5 این پورت یك شد یه شرطی را برای ما انجام بدهد. در خط دوم بیت 5 از متغیر mohsen به k5 نسب داده شده است. و خود mohsen هم همون پورت B هست.
ارسال شده توسط:mohamad vahedian در پنجشنبه 19 شهریور 1388 | نظرات()
This is a new design of a
tutorial board based on the popular PIC16F84A microcontroller. It features eight
single leds, a 7-segment display, an LCD display and five push buttons. It is an
ideal solution for the beginner to take his/her first programming steps in the
world of microcontrollers. Having an in-circuit-programming (ICP) header, it can
be easily reprogrammed without unplugging the microcontroller each time,
provided that the programmer also supports this feature (like OziPic�er).
دانلود و آموزش و پروژه های( دانلود 8051 , دانلود plc , دانلود avr ), نصب و پخش سیستم های حفاظتی اتومبیل و اماکن با نازلترین قیمت در محل ،پخش ریموت درب پارکینگ ها و منازل و دانلود نرم افزار موبایل و دانلود قالب وبلاگ