زمان کنونی: 11-19-2018, 05:46 AM درود مهمان گرامی! (ورودثبت نام)



میکروکنترلهای PIC


ارسال موضوع  ارسال پاسخ 
  • 0 رأی - میانگین امیتازات : 0
  • 1
  • 2
  • 3
  • 4
  • 5
امتیاز موضوع:
 
میکروکنترلهای PIC
نویسنده پیام
panel123 آفلاین
Banned

ارسال ها: 10
تاریخ عضویت: Dec 2017
ارسال: #1
میکروکنترلهای PIC
یک میکروکنترلر چیست ؟
تابلوسازی
میکروکنترلر در واقع یک کامپیوتر تک تراشه ای ارزانقیمت می باشد . کامپیوتر تک تراشه ای بدین معنی است که کل سیستم کامپیوتر در داخل تراشه مدار مجتمع جای داده شده است . میکرولنترلری که بر روی تراشه سیلیکونی ساخته می شود ٬ دارای خصوصیاتی مشابه خصوصیات کامپیوتر شخصی استاندارد است . نخستین ویژگی میکروکنترلر ٬ قابلیت ذخیره سازی و اجرای برنامه است ( که مهمترین ویژگی آن به شمار می رود ). میکروکنترلر دارای یکCPU (واحد پردازشگر مرکزی) ٬ حافظه RAM٬ حافظه ROM٬خطوط I/O (خطوط ورودی و خروجی ) ٬ درگاههای سریال و موازی و زمان سنج است و برخی اوقات نیز شامل ادوات جانبی نظیر مبدل A/D ( مبدل آنالوگ به دیجتال ) و مبدل D/A (مبدل دیجیتال به آنالوگ ) می باشد .

چرا از میکروکنترلر استفاده می شود ؟

میکرو کنترلرها ٬ کامپیوترهایی ارزانقیمت هستند . قابلیت ذخیره سازی و اجرای برنامه های منحصر به فرد ٬ موجب شده است تا میکرو کنترلرها بسیار انعطاف پذیر شوند . به عنوان مثال شخص می تواند میکرو کنترلر را به گونه ای برنامه ریزی کند که بر اساس شرایط از پیش تعیین شده ( وضعیت خطوط ورودی و خروجی ) ٬ تصمیم گیری نماید ( عملیات مورد نظر انجام دهد ). قابلیت انجام عملیات ریاضی و منطقی موجب شده است تا میکرو کنترلر بتواند عملکرد مدارهای منطقی پیچیده و مدار های الکترونیکی را تقلید کند .

برنامه های دیگر می توانند موجب شوند که میکرو کنترلر مشابه یک مدار در شبکه عصبی و یا به صورت یک کنترل کننده با منطق فازی عمل کند میکرو کنتر لرها وظیفه هوش مصنوعی را در دستگاههای مربوط به « حسابهای هوشمند » در فروشگاهها بر عهده دارند .

آینده الکترونیک مختص میکرو کنترلها می باشد

اگر به مجله الکترونیکی که در این کشور یا سایر کشور ها چاپ می شوند توجه کنید .مقاله هایی را مشاهد خواهید کرد که در طراحی مدارهای آنها ٬ به طور مستقیم و یا به صورت ترکیبی ٬ میکرو کنترلرها استفاده شده است . میکرو کنترلرها به دلیل انعطاف پذیری زیادی که دارند ٬ با صرف هزینه اندک می توانند قدرت زیاد ٬ کنترل و انتخابهای زیادی را ارائه کنند . به همین دلیل است که مهندسین الکترونیک و افرادی که علاقه مند به کارهای الکترونیکی هستند ٬ برنامه ریزی میکرو کنترلرها را فرا می گیرند تا از مزایای میکرو کنترلرها در مدارات خود بهره ببرند و سطح کیفی مدار خود را در حد بالایی حفظ کنند.

اگر دستگاههای الکترونیکی خانگی را بررسی کنید ٬ خواهید دید که از میکرو کنترلرها تقریبا در تمامی آنها استفاده شده است . این نیز دلیل دیگری برای آشنایی با میکروکنترلرهاست .

کامپیوترهای طراح

امروزه انواع بسیار زیادی از میکرو کنترلرها در بازار وجود دارند . تراشه های PIC ( یا تراشه های PICMicro ) ساخت شرکت Microchip Technology می باشد .

تراشه PIC

مجموعه میکرو کنترلرهای ساخت شرکت Microchip Technology به نام PIC نامیده می شوند . شرکت مذکور کلمه مذکور کلمه PIC را به عنوان علامت تجاری برگزیده و از آن برای مشخص کردن میکرو کنترلرهای خود استفاده می کند . کلمه PIC سر نام کلمات Programmable Interface Controller می باشد .

بهتر از هر مدار Stamp

کمپانی Parallax مجموعه ای از مدارهای مبتنی بر میکرو کنترلر را که استفاده از آنها ساده می باشد ٬ تهیه کرده و با نام Basic Stamp به فروش می رساند . در مدار های Basic Stamp ساخت شرکت Parallax ( به نامهای BSI و BS2 ) از میکرو کنترلرهای ساخت Microchip Technology استفاده شده است . عاملی که باعث شده است تا مدارهای Stamp بسیار متداول شوند این است که آنها را می توان به سادگی با استفاده از زبان بی***** برنامه ریزی کرد . فراگیری و کار با زبان بی***** بسیار ساده می باشد ٬ در صورتی که سایر سیستم ها ٬ منحنی آموزش طو لانی تری دارند زیر کاربر را وادار می کنند تا زبان اسمبلی را فرا گیرد ( زبان اسمبلی فقط مختص یک میکرو کنترلر خاص بوده و در مورد سایر میکرو کنترلرها کاربرد ندارد ).

Basic Stamp هم اکنون یکی از متداولترین سیستم های میکروکنترلی است که مورد استفاده قرار می گیرد . این نکته را دوباره تکرار می کنم که عامل مورد قبول واقع شدن و متداول شدن سیستم های Stamp ٬ سادگی و فراگیری و سهولت زبان بی***** می باشد . فراگیری و کار با سیستم زبان بی***** PIC بسیار ساده می باشد و همچنین میکرو کنترلرهای PIC داری مزایای فراوانی هستند که موجب می شود از انواع سیستم ها Stamp بهتر می باشد .

زبان بی***** PICBasic که ما از آن برای برنامه ریزی تراشه های PIC استفاده می کنیم ٬ مشابه زبانی است که در مجموعه سیستم های Basic Stamp به کار برده می شود. برنامه ریزی تراشه های PIC به سادگی برنامه ریزی سیستم های Stamp می باشد . حال شما می توانید از همان زبان ساده ای که سیستم های Basic Stamp ارائه می کنند استفاده کنید ٬ در ضمن از دو مزیت عمده دیگر نیز بهره خواهید برد این دو مزیت عبارتند از :

مزیت اول : سرعت بیشتر

تراشه های PIC برنامه ریزی شده ٬ برنامه خود را خیلی سریعتر اجرا می کنند . اگر برنامه بی***** مشابهی را در Basic Stamp و تراشه PIC ذخیره کنیم ٬ برنامه تراشه PIC ( بسته به دستور العمل ها ی استفاده شده ) حدود 20 تا 100 برابر سریعتر از Basic Stamp اجرا می شود . دلیل این امر در زیر آمده است :

سیستم های Basic Stamp مدل BS2 و BS1 از حافظه EEPROM سریال که به تراشه های PIC وصل شده اند برای ذخیره کردن برنامه های خود استفاده می کنند . فرمانهای زبان بی***** موجود در برنامه ٬ به صورت نشانه ها و علامتهای بی***** ذخیره می شوند .علائم و نشانه های بی***** نظیر خلاصه نویسی فرمانهای بی***** می باشد. هنگام اجرای برنامه ٬ Basic Stamp هر دستور العمل را می خواند ٬ سپس این علامت را تفسیر می کند ( علائم و نشانه ها را به زبان ماشین معادل تبدیل می کند تا برای PIC قابل فهم باشد )و دستور العمل را اجرا کرده و دستور العمل بعدی را می خواند و دوباره این رویه را تکرار می کند . هر دستور العمل برای اجرا شدن باید مراحل« انتقال سریال » ٬ « خواندن» « تفسیر و اجرا » را طی کند . روند خواندن واسطه سریال ٬ وقت زیادی را از CPU میکرو کنترلر تلف می کند.

در مقایسه با این عملیات٬وقتی یک تراشه PIC با استفاده از کامپایلر بی***** برنامه ریزی می شود٬ برنامه بی***** در ابتدا به برنامه زبان ماشین PIC ( فایل در مبنای 16) تبدیل می شود. سپس این برنامه که به زبان ماشین می باشد به داخل تراشه PIC انتقال می یابد . از آنجایی که زبان ماشین ٬ زبان اصلی PIC می باشد لذا نیاز نیست تا کدهای زبان ماشین به صورت علائم و نشانه ها ذخیره شده و برای اجرا شدن تفسیر شوند چرا که برنامه به زبان اصلی PIC نوشته شده است .

هنگامی که تراشه PIC برنامه ای را اجرا می کند٬ فرمانهای برنامه را که به زبان ماشین می باشند ٬ به طور مستقیم از حافظه ای که روی تراشه آن قرار دارد ٬ خوانده و آن دستور العمل را اجرا می کند. در طی این عملیات ٬ واسطه سریالی با حافظه EEPROM خارجی که زمان زیادی را تلف می کند ٬ وجود ندارد. دستور العمل هایی که به زبان ماشین هستند مشابه روش واسطه سریال به صورت بیت به بیت خوانده نشده بلکه به طور موازی خوانده می شوند. این دستور العمل ها به صورت مستقیم و بدون نیاز به مبدل علائم بی***** به زبان ماشین خوانده می شوند. این امر موجب می شود تا PIC های برنامه ریزی شده ٬ بتوانند کدهای خود را 20تا 100 برابر سریعتر از کد بی***** همان برنامه در سیستم Basic Stamp ٬ اجرا کنند.

مزیت دوم: قیمتی به مراتب پایین تر

عامل دوم قیمت می باشد . استفاده مستقیم از تراشه های PIC در مقایسه با سیستم های Basic Stamp موجب 75 درصد صرفه جویی در قیمت می شود. قیمت خرده فروشی BSI که دارای 256 بایت حافظه قابل برنامه ریزی است٬ 95/34 دلار می باشد. قیمت خرده فروشی BS2 که داری 2 کیلو بایت حافظه قابل برنامه ریزی است ٬ 95/49 دلار می باشد. میکروکنترلر PIC به شماره 84 F 16 دارای مشخصاتی است که با سیستم BS2 قابل مقایسه می باشد. این تراشه دارای 1 کیلو بایت حافظه قابل برنامه ریزی است. قیمت خرده فروشی تراشه 84 F 16 PIC مبلغ 95/6 دلار است . علاوه بر آن قیمت کریستال زمان سنجی و چند خازن و مقاومت و یک تثبیت کننده ولتاژ 7805را نیز باید اضافه کرد تا مدار ٬ معادل Stamp شود.مجموعه این قطعات ٬ قیمت کل را تا میزان 10 دلار افزایش می دهد که در این حالت نیز یک چهارم ( 75 درصد ) قیمت سیستم BS2 می باشد.

سایر مزایا

سطحی که میکرو کنترلر 84 F 16 PIC روی مدار اشغال می کند کمتر از سطحی است که BS2 اشغال می کند زیرا سیستم های Stamp از حافظه EEPROM با سریال بیرونی استفاده می کنند.در برخورد اول این طور به نظر می آید که BS2 کوچکتر است زیرا در یک محفظه پایه DIP قرار داده شده است ٬ ولی شما می توانید انواعی از 84 F 16 را که برای نصب سطحی تهیه شده اند٬ خریداری کنید . در نتیجه این کار سطح مدار کاهش می یابد.

نگاهی کلی بر برنامه ریزی PIC

برنامه ریزی میکروکنترلرهای PIC یک فرایند 3 مرحله ای ساده می باشد.

چه چیزی باید خریداری شود

برای شروع کار و پیاده سازی یک پروژه ٬ شما باید حداقل 3 قلم جنس را خریداری کنید . این اقلام عبارتند از : برنامه کامپایلر PICBasic ٬ برنامه ریزی کننده EPIC و تراشه PIC . پیشنهاد می شود کار با میکرو کنترلر PIC مدل 84 F 16 شروع کنید زیرا این تراشه دقیقا دارای 14*K1حافظه قابل باز نویسی است. این حافظه امکان استفاده مجدد از تراشه PIC را به منظور آزمایش و رفع عیب برنامه نویسی ٬ فراهم می کند.

کامپایلر PICBasic روی کامپیوترهای شخصی استاندارد اجرا می شود. این برنامه تحت سیستم عامل داس و یا در پنچره " MS_DOS Prompt " برای سادگی DOS نامیده می شود. برنامه تحت داس روی تمام کامپیوترهای شخصی XT به بالا دارای سیستم عامل نگارش 3/3 یا بالاتر هستند٬ اجرا می شود. این برنامه انواع زیادی از میکرو کنترلرهای PIC را پشتیبانی می کند.این کامپایلر٬ کد زبان ماشین در مبنای 16 تولید می کند که می توان از آن در سایر سیستم های برنامه ریزی کننده استفاده کرد. قیمت نرم افزار PICBasic 95/99 دلار می باشد. کامپایلر دیگر اندکی گرانتر است و PICBasic Pro نام دارد به قیمت 95/249 دلارفروخته می شود. این کامپایلر را خریداری نکنید زیرا فرمانهای Peek و Poke را به گونه ای متفاوت از کامپایلر استاندارد PICBasic به کار می برد.

مدار برنامه ریزی کننده EPIC دارای سوکتی است برای نصب تراشه PIC و اتصال دهنده ای برای اتصال آن به درگاه موازی ( درگاه چاپگر) کامپیوتر جهت برنامه ریزی است. مدار برنامه ریزی کننده با استفاده از یک اتصال دهنده DB25 به درگاه موازی ( درگاه چاپگر) کامپیوتر وصل می شود. اگر کامپیوتر فقط دارای یک درگاه چاپگر باشد که چاپگر به آن وصل شده است ٬ باید هنگام برنامه ریزی کردن تراشه PIC ٬ چاپگر را به طور موقت از درگاه موازی جدا کرد. همانند کامپایلر PICBasic ٬ سیستم برنامه ریزی کننده EPIC محدوده وسیعی از میکرو کنترلرهای PIC را تحت پوشش قرار می دهد . قیمت مدار به همراه دیسک نرم افزار مربوطه 95 دلار است .

مشخصات پایه های 84 F 16 PIC در شکل زیر نمایش داده شده است .

یک میکرو کنترلر بسیار قابل انعطاف با حافظه فلش می باشد. حافظه فلش اصطلاحی است که برای توصیف این نوع حافظه های قابل بازنویسی به کار می رود. حافظه فلش موجود در این تراشه ٬ تحمل حدافل 1000 مرتبه نوشتن و پاک شدن را دارد لذا می توانید تراشه PIC را حداقل 1000 بار برنامه ریزی کرده و استفاده کنید. زمان نگهداری برنامه بین چرخه نوشتن / پاک کردن تقریبا 40 سال می باشد . از 18 پایه موجود در تراشه ٬ 13 پایه آن مربوط به خطوط I/O می باشد. هر یک از این پایه ها ( کنترل جهت ورودی / خروجی)را می توان با برنامه ریزی تغییر داد. علاوه بر این ٬ ویژگیهای نظیر کاهش توان مصرفی در حالت خواب ٬ باز نشانی در هنگام روشن شدن ٬ زمان سنج هنگام روشن شدن و حفاظت کد برنامه ٬ از دیگر مزایای این تراشه می باشد .

قابلیتهای تراشه 84 F 16

عمومی

CPU از نوع RISC بوده و دارای 35 دستور العمل تک کلمه ای است ٬سرعت عملکرد می تواند از فرکانس DC تا ورودی کلاک 10 مگا هرتزی متغییر باشد

ا کیلو بایت حافظه برنامه دارد.

دستورالعملها 14 بیت پهنا دارند.

مسیر داده ها 8 بیت می باشد.

قابلیت آدرس دهی مستقیم ٬ غیر مستقیم و نسبی را دارد.

به تعداد 1000 بار چرخه نوشتن / پاک کردن را می توان اجرا کرد.

ادوات جانبی

13 پایه ورودی/ خروجی دارد که ورودی یا خروجی بودن هر یک را می توان به طور مجزا تعیین کرد.

جریان بالای Sink/Source برای راه اندازی مستقیم LED.

حداکثر جریان Sink برای هر پایه 25 میلی آمپر است.

حداکثر جریان Source برای هر پایه 20 میلی آمپر است.

TMRO: دارای شمارنده / زمان سنج 8 بیتی است و یک مقسم فرکانس قابل برنامه ریزی دارد.

مرحله 1 : نوشتن برنامه به زبان بی*****

برای نوشتن برنامه برای PICBasic به یک واژه پرداز نیاز دارید. هر واژه پردازی که بتواند فایل های متنی خود را به صورتASCII یا متن داس ذخیره کند ٬ قابل استفاده است . تقریبا تمامی واژه پردازها متداول٬ این قابلیت را دارند. از فرمان Save as استفاده کرده و یکی از گزینه هایMS-DOS text و یا ASCII text را انتخاب کنید.

فایل متنی را که شما توسط واژه پردازهای متداول می نویسید به یک برنامه ترجمه می شود. اگر واژه پردازی در اختیار ندارید٬ می توانید از برنامه Notepad ویندوز که همراه ویندوز که به همراه ویندوز X.3 و ویندوز 95 یا 98 ارائه می شود استفاده کرده و فایلی را حاوی متن برنامه به زبان بی***** است ٬ ایجاد کنید ( Notepad را باید در قسمت Accessories جستجو کنید ). در محیط داس٬ می توانید از برنامه EDIT برای تهیه فایل متنی استفاده کنید.

کامپایلر نیاز دارد تا برنامه بی***** به صورت استاندارد (MS-DOS) یا ASCII در یک فایل متنی ذخیره شود زیرا علائم خاص صفحه بندی و کدهای چاپ که مختص خود واژه پردازها می باشد٬ در فایل هایی که به صورت ASCII یا داس هستند ٬ ذخیره نمی شوند.وقتی می خواهید فایلی را ذخیره کنید ٬ آن را با پسوند bas. ذخیره کنید به عنوان مثال اگر می خواهید برنامه ای را با نام Wink ذخیره کنید٬ برای آن نام Wink.bas را برگزینید. ذخیره کردن فایل با پسوند bas. اختیاری است. کامپایلر می تواند فایل را با هر پسوندی بخواند ولی استفاده از پسوند .bas به شما کمک می کند تا در یک دایر کتوری شلوغ بتوانید برنامه های PIC خود را به راحتی شناسایی کنید.

مرحله 2 : استفاده از کامپایلر

برنامه کامپایلر PICBasic با وارد کردن فرمان pbc که به دنبال آن نام فایل متنی حاوی برنامه نوشته شده است ٬ شروع به کار می کند. به عنوان مثال اگر نام فایل متنی که ایجاد کرده ایم Wink.bas باشد ٬ باید در خط فرمان داس عبارت زیر را وارد کنیم :

Pbc Wink. Bas

کامپایلر بی***** ٬ فایل مذکور را به دو فایل که پسوند یکی .asm( زبان اسمبلی) و دیگری .hex ( مبنای 16) است ٬ کامپایل می کند.

فایل wink.bas معادل زبان اسمبلی برنامه بی***** می باشد. فایل wink.hex نیز معادل زبان ماشین برنامه بی***** است در مبنای 16 نوشته شده است . فایل .hex همان فایلی است که در تراشه PIC بارگذرای می شود.

اگر کامپایلر در هنگام کامپایل کردن کد برنامه بی***** ٬ با مشکلی مواجه شود٬ خطا های موجود را نشان می دهد و سپس به کار خود خاتمه می دهد. خطاهای نشان داده شده٬ قبل از کامپایل شدن مجدد برنامه ٬ باید تصحیح شوند.

مرحله 3 : برنامه ریزی تراشه PIC

با استفاده از کابل DB25 ٬ برنامه ریزی کننده EPIC را به درگاه چاپگر کامپیوتر وصل کنید. نرم افزار تحت داس برنامه ریزی کننده را اجرا کنید. در خط فرمان داس عبارت زیر را وارد کنید:

EPIC

در نرم افزار گزینه Open File را انتخاب کرده و از فایل ها که در کادر مکالمه ای باز شده نمایش داده می شوند٬ Wink.hex را انتخاب کنید. فایل بار گذاری شده و اعدادی در داخل پنجره سمت چپ به نمایش در می آیند . مدار مجتمع 84 F 16 را در داخل سوکت جای داده و سپس دکمه Program را انتخاب کنید. حال میکرو کنترلر PIC برنامه ریزی شده و آماده است تا مورد استفاده قرار گیرد.

لیست قطعات برای انجام پروژه ها

کامپایلر PICBasic

برنامه ریزی کننده EPIC

میکرو کنترلر 84 F 16

کابل DB25 به طول 6 فوت

یک عدد کریستال 4 مگا هرتز

2 عدد خازن 22 پیکو فاراد

سایر قطعات

تخته آزمایش

خازن 1/0 میکروفاراد

8 عدد LED قرمز رنگ

8 عدد مقاومت 470 اهم ( دربسته بندی 16 پایه DIP نیز موجود است )

1 عدد مقاومت 7/4 کیلو اهم

8 عدد مقاومت 10 کیلو اهم

تثبیت کننده ولتاژ 7805

2 عدد کلید 4 وضعیته که روی مدار چاپی قابل نصب می باشد

سر باتری مخصوص ٬ برای باتری 9 ولت

منبع : computer2020.blogfa
(آخرین ویرایش در این ارسال: 03-08-2018 07:50 PM، توسط panel123.)
03-08-2018 07:49 PM
مشاهده وب سایت کاربر یافتن تمامی ارسال های این کاربر نقل قول این ارسال در یک پاسخ
تبلیغات
MapsaControl.ir

ارسال موضوع  ارسال پاسخ 


پرش به انجمن: