طراحی کنترلر، مدارت دلخواه، پروژه ها و تمرینات درس میکروکنترلرها
این پروژه یک مدار واسط I/O می باشد که دارای 12 خروجی رله است. توسط نرم افزار کنترلی که قابل نصب بروی ویندوز های XP, Win7, Win8, Win10 می باشد می توان هر 12 رله را به صورت مجزا فعال و غیر فعال کرد.این پروژه یک ماشین حساب مهندسی می باشد که تمامی کلید ها و توابع به صورت گرافیگی بر روی LCD نمایش داده می شود و با فشردن هر کلید روی کیپد کلید متناظر آن بر روی السیدی نیز تغییر حالت می دهد. نمای کلی و توابع قابل انجام توسط این ماشین حساب در تصاویر نمایش داده شده است. همچنین قابلیت رسم نمودار را دارد.این پروژه یک دماسنج ساده می باشد که توانایی اندازه گیری دما از منفی 40 تا مثبت 120 درجه سانتی گراد با دقت دو رقم اعشار را دارد.این پروژه در اصل یک قفل امنیتی است که می توان جلوی درب اصلی منزل (در کنار آیفون) آن را نصب کرد. از امکانات آن می توان به موارد زیر اشاره نمود: نمایش دما از 125 تا 55- درجه سانتیگراد، نمایش ساعت دقیق، نمایش تاریخ شمسی همراه با روز هفته به صورت فارسی، نمایش تعداد فرصت های باقیمانده برای وارد کردن رمز صحیح، و قفل شدن سیستم به مدت 15 دقیقه در صورتی که 4 بار رمز اشتباه وارد شود. امکان تغییر رمز و تنظیم کردن ساعت و تاریج و ...این پروژه یک ساعت آنالوگ، تاریخ شمسی و روزه هفته به زبان فارسی به همراه ساعت دیجیتال می باشد. قابلیت تنظیم ساعت و تاریخ توسط سه عدد میکروسوئچ
پروژه کنترل رله توسط پورت USB با AVR و C شارپ 12 کاناله

MCP-39

پروژه کنترل رله توسط پورت USB با AVR و C شارپ 12 کاناله
پروژه ماشین حساب مهندسی با السیدی گرافیکی و avr

MCP-11

پروژه ماشین حساب مهندسی با السیدی گرافیکی و avr
پروژه دماسنج ساده با avr

MCP-29

پروژه دماسنج ساده با avr
پروژه دربازکن الکترونیکی خانه قفل رمز با avr

MCP-5

پروژه دربازکن الکترونیکی خانه قفل رمز با avr
ساعت آنالوگ با AVR و lcd گرافیکی به زبان c

MCP-36

ساعت آنالوگ با AVR و lcd گرافیکی به زبان c

ثبات

آموزش ميكرو كنترلر 8051 قسمت دوم (معرفي دستورات)

در مورخه : يكشنبه، 27 دي ماه، 1388 موضوع : اسمبلی8051

  دستور EQU  و DB 
البته اين دو دستور جزء قالب هاي دستوري 8051 نيست يعني اصلا ميكرو چنين دستوري را ندارد و اجرا هم نمي كند. اين دو دستور را فقط كامپايلر ها مي شناسد كه به رهنمون هم معرف هستند اينها براي راحتي كار و برنامه نويسي هستند.
EQU به كمك اين دستور مي توان يه متغير تهريف كنيم مثلا ما در يك پروژه داريم كه در آن يك كليد به نام OK وجود دارد ما مي خواهيم OK را روي بيت 3 از پورت 2 قرار دهيم يعني اينكه P2.3=OK براي راحتي كار در طول برنامه ممكن از اين كليد بخواهيم زياد استفاده كنيم به همين دليل اول برنامه اين بيت را به متغيير OK نسبت مي دهيم به روش زير:


OK   EQU  P2.3
…………………….
JB  OK,LOOP


برنامه اينطور مي باشد كه P2.3 به OK اختصاص داده شده و در برنامه اصلي ما مي خواهيم كه هر گاه اين بيت يك شد به آدرس LOOP پرش كند. پس ما مي نويسيم اگر OK يك شده به LOOP  پرش كن.
DB اگه با LCD سرو كار داشته باشيم براي نمايش پيغام ها روي LCD بايد كد اسكي آنها رو نوشت كه خيلي كار سخت و وقت گيري به همين دليل در برنامه پيغام خود را به صورت زير مي نويسيم:



 بیشتر

آموزش ميكرو كنترلر 8051 قسمت ششم (تايمرها و شمارنده ها)

در مورخه : يكشنبه، 4 بهمن ماه، 1388 موضوع : اسمبلی8051

تايمرهاي 8051
8051 دو تايمر به نام هاي تايمر صفر 0و تايمر 1 دارد. همانطور كه در مطالب بلي گفتيم براي ايجاد يك تاخير دقيق نمي توان از حلقه و ساير دستورات استفاده كرد به همين دليل اگر ما تايمر هاي 8051 را فعال كنيم قادر هستيم تا زمانهايي با دقت بسيار بالا توليد كنيم. براي راه اندازي تايمرها بايد ابتدا ثبات TMOD و خود ثبات تايمر ها را بشناسيم.
ابتدا ثبات تايمرهاي 0 و 1:
در 8051 ثبات هاي تايمر 16 بيتي هستد كه به TL بايت سبك و TH بايت سنگين تجزيه مي شوند. كه اگر ما از تايمر صفر استفاده كنيم اين ثبات ها TL0 و TH0 ناميده مي شود و اگر از تايمر يك استفاده كنيم اين ثبات ها TL1‌و TH0 ناميده مي شود.



 بیشتر

ثبات های عمومی ریزپردازنده 8086/8088

در مورخه : جمعه، 15 مرداد ماه، 1389 موضوع : الکترونیک

همانطوریکه اشاره شد ریزپردازنده 8086/8088 یک ریزپردازنده 16 بیتی است. پس ثبات های عمومی آن 16 بیتی است و می توانند همزمان 16 بیت داده را در خود جای دهند. (در فهرست مقالات میکرو رایانه جستجو کنید) ریزپردازنده 8086/8088 دارای چهار ثبات عمومی به نام های AX , BX , CX , DX است، که هر کدام از آنها به صورت 8 بیتی هم قابل استفاده است و به ترتیب به نام های AL , AH , BL , BH , CL , CH , DL , DH نامیده می شوند. یعنی مثلا نیمه کم ارزش ثبات AX ثبات AL و نیمه پرارزش آن ثبات AH است و ...

بدین ترتیب با استفاده از این ثبات های 8 بیتی ، ریزپردازنده 8086/8088 همانند ریزپردازنده های 8 بیتی قادر خواهد بود پردازش بر روی داده های 8 بیتی را هم به راحتی انجام دهد. معمولا شماره گذاری بیت های ثبات های ریزپردازنده از شماره صفر خواهد بود. پس بیت شماره صفر هر ثبات، کم ارزش ترین بیت و بیت شماره 7 (در ثبات های 8 بیتی) یا 15 (در ثبات های 16 بیتی) پرارزش ترین آن خواهد بود. با وجود آنکه در اکثر دستورالعمل ها می توان تمام ثبات های عمومی را مورد استفاده قرار داد ولی در بعضی موارد نقش خاصی بر عهده هر کدام گذاشته می شود که در اینجا به بعضی از آنها اشاره می شود. (توضیحات بیشتر بعدا" و بتدریج داده خواهد شد):



 بیشتر