طراحی کنترلر، مدارت دلخواه، پروژه ها و تمرینات درس میکروکنترلرها
یک کنترل کننده موتور با جریان خروجی 2 آمپر شامل کنترل جهت چرخش و سرعت می باشد. این مدار دارای نمایشگر LCD متنی بوده که سرعت و جهت چرخش موتور را نمایش می دهد.این پروژه قادر خواهد بود که یک ماشین را به صورت بیسیم در جهات جلو و عقب و چپ و راست با سرعت دلخواه کنترل و همچین با کلید استپ ماشین را ثابت (ترمز) نماید.این پروژه یک مدار گیرنده رادیویی 433 یا 315 مگاهرتز می باشد که قابلیت تعریف و ذخیره سازی انواع ریموت کنترل هایی از قبیل (ریموت دزدگیر ماشین، پارکینگ، بالابر و ...) را دارد. می توان رله مربوطه را روی هر کلید دلخواه تعریف نمود.اندازه گیری ظرفیت خازن از 1nf تا 2000uf - دارای دو حالت علمی اندازه گیری - دارای کالیبره سازی خودکار - نمایش اتوماتیک رنج خازن بر روی نمایشگراین پروژه یک فرستنده گیرنده رادیویی با برد 100 تا 200 می باشد، که قابلیت کنترل 20 کانال مجزا به همراه کنترل سرعت موتور DC را دارد. از ماژول HMT و HMR و 20 عدد دیپ سوئیچ و درایور L298N برای موتور استفاده شده است.
کنترل سرعت و جهت موتور DC

MCP-9

کنترل سرعت و جهت موتور DC
پروژه ماشین کنترلی بی سیم با avr

MCP-20

پروژه ماشین کنترلی بی سیم با avr
پروژه ریموت کنترل 433-315 مگاهرتز تک کاناله با قابلیت لرنینگ

MCP-30

پروژه ریموت کنترل 433-315 مگاهرتز تک کاناله با قابلیت لرنینگ
پروژه خازن سنج دو حالته از 1nf تا 2000uf

MCP-22

پروژه خازن سنج دو حالته از 1nf تا 2000uf
پروژه کنترل 20 کاناله-به همراه کنترل سرعت موتور با avr

MCP-10

پروژه کنترل 20 کاناله-به همراه کنترل سرعت موتور با avr

آموزش 8051 به زبان اسمبلی

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

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

قبل از همه چيز چرا 8051 ؟
ميكرولنترلر 8051 پايه و اساسي است براي يادگيري ديگر ميكروكنترلر ها دستورات اسمبلي اين ميكرو نسبت به AVR خيلي كمتر هست و داراي امكانات كمتري نسبت به ديگر ميكرو ها است به همين دليل يادگيري و فهم آن خيلي راحت و آسان مي باشد كه براي شروع ابتدا بايد مفاهيم منطق و ديجيتال را خوب فهميده باشيد و بعد از آن بايد سخت افرار 8051 و RAM و ROM داخلي آن را درك كرده باشيد تا بتوانيد يك برنامه كاربردي بنويسيد تا يك پروسه را كنترل كند. خيلي ها براي يادگيري ميگن كه ما كه مي خواهيم برنامه نويسي ميكرو را ياد بگيرم پس بهتر بالاترين ميكرو يعني AVR يا PIC ياد بگيريم در صورتي كه به نظر من كاملا اشتاه بوده و كار غلطي است كه اگه بخواهيد تا آخر ادامه دهيد كاري طاقت فرسا خواهد بود. مثل اين خواهد بود كه سقف طبقه اول يك ساختمان را درست نكرده باشيم و بخواهيم طبقه دوم را درست كنيم. در اين وبلاگ من تا بتوانم به زبان ساده و روان مطالب را بيان خواهم كرد كه البته اگه يكم علاقه و پشتكار داشته باشد مطمئن باشيد به ميكرو مسلط خواهيد شد و مي توانيد آن را به راحتي برنامه ريزي كنيد. قيمت اين ميكرو خيلي ارزان مي باشد در حدود 1000 تومان و حافظه ROM آن قابل پاك كردن و استفاده مجدد مي باشد پس شما به راحتي مي توانيد در خانه يا محل كار براي راحتي خود و افراد خانواده چيزهايي با آن بسازيد كه آدم باورش نشه كه اينو خودش ساخته و طراحي كرده.



 بیشتر

آموزش ميكرو كنترلر 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

دستورات منطقي و مقايسه اي
دستور  AND)  ANL)
اين دستور دو داده 8 بيتي رل با هم AND‌ مي كند. AND به معني "و" مي باشد يعني اينكه مثلا بيت P1.1 و P1.2 هرگاه صفر شدن فلان كار را ميكرو انجام دهد.
قالب دستوري آن به اين صورت مي باشد. ANL  REG,DATA عملوند مبدا يعني REG مي تواند يك ثبات يا يك حافظه باشد و عملوند مقصد DATA هم مي تواند ثبات يا حافظه يا يك داده فوري (عدد) باشد.بعد از انجام اين عمل منطقي نتيجه در انباره قرار مي گيرد.
مثال مي خواهيم عدد 56 و25 را با هم AND كنيم:
MOV    A,#56H
ANL    A,25H     A=4H
طبق جدول صحت گيت AND هرگاه ورودي هاي A وB  يك شد خروجي هم يك مي شود.
 طبق اين جدول براي AND كردن اين  دو داده داريم:



 بیشتر