روش کار میکرو کنترلر چگونه است؟

میکروکنترلرها قهرمانان گمنام دنیای دیجیتال هستند. این قطعات در تمام ابعاد زندگی روزمره ما حضور دارند و در سکوت عملکرد دستگاه‌های بی شماری را در اطراف ما کنترل می‌کنند. از ساعت هوشمند روی مچ شما گرفته تا پنل کنترل یک ربات صنعتی، میکروکنترلرها مغزهای کوچک اما قدرتمندی هستند که  درون این دستگاه ها قرار دارند. در این راهنما، سفری خواهیم کرد برای درک عملکرد پیچیده و روش کارمیکروکنترلرها، بررسی انواع مختلف میکروکنترلر مانند میکروکنترلرهای AVR و ARM و بینش عملی برای تهیه میکروکنترلرها را ارائه خواهیم کرد.

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

در حقیقت میکروکنترلر یک مدار مجتمع فشرده است که یک واحد پردازش مرکزی (CPU)، حافظه و طیف وسیعی از لوازم جانبی ورودی/خروجی (I/O) را در خود جای داده است و همه در یک تراشه واحد قرار دارند. برخلاف CPUهای موجود در رایانه‌ها که برای کارهای محاسباتی همه منظوره طراحی شده‌اند، میکروکنترلرها برای برنامه‌های خاص برنامه ریزی و پروگرام می‌شوند. این قطعات وظایف از پیش تعریف‌شده را در شرایط سخت اجرا می‌کنند. هر نوع مشخص از میکروکنترلرها در صنایع خاصی مورد استفاده قرار می‌گیرند. به طور مثال خرید میکروکنترلر avr  ( در ادامه مطلب درباره این نوع میکروکنترلر کامل توضیح می‌دهیم) بیشتر در صنعت سرگرمی و آموزشی رایج است.

آناتومی یا اجزای تشکیل دهنده میکروکنترلر

1. CPU (واحد پردازش مرکزی): CPU به عنوان مغز میکروکنترلر، مسئول اجرای دستورالعمل های فراخوانی شده از حافظه را بر عهده دارد. این بخش انجام عملیات حسابی، منطقی و کنترلی لازم برای عملکرد میکروکنترلر را انجام می‌دهد.

2. حافظه: میکروکنترلرها معمولاً دو نوع حافظه دارند:

• ROM (حافظه فقط خواندنی): سفت‌افزار یا کد برنامه‌ای را ذخیره می‌کند که به میکروکنترلر نحوه کارکرد را آموزش می‌دهد. تمامی کدهای نوشته شده بعد از کامپایل در این حافظه قرار می‌گیرند.

• RAM (حافظه دسترسی تصادفی): ذخیره سازی فرار برای داده ها و متغیرها را در طول اجرای برنامه فراهم می‌کند. معمولا نتایج محاسبات در این نوع حافظه قرار می‌گیرند. این حافظه با قطع برق پاک می‌شود.

3. لوازم جانبی یا پریفرال ها: پریفرال‌ها شامل تایمر، شمارنده، مبدل آنالوگ به دیجیتال (ADC)، مبدل دیجیتال به آنالوگ (DAC)، رابط های ارتباطی (UART، SPI، I2C) و ورودی/خروجی عمومی (GPIO) می‌شود. پین‌ها لوازم جانبی میکروکنترلر را قادر می‌سازد تا با محیط خارجی تعامل داشته باشد و کارهایی مانند سنجش ورودی‌ها، تولید خروجی‌ها و برقراری ارتباط با سایر دستگاه‌ها را تسهیل کند.

 

عملکرد و روش کار میکرو کنترلر

شاید برای شما سوال باشد که یک میکروکنترلر چگونه کار می کند؟ باید بگوییم روش کار میکرو کنترلر بسیار جالب اما پیچیده است. این قطعات از طریق یک سری مرحله معروف به چرخه fetch-decode-execute عمل پردازش را انجام می دهند:

1. Fetch: این قسمت اولین مرحله در روش کار میکروکنترلراست. در این مرحله میکروکنترلر یک دستورالعمل را از حافظه بازیابی می‌کند.

2. رمزگشایی: در مرحله رمزگشایی،  پردازشگر دستورالعمل فراخوانی شده را تفسیر می‌کند.

3. اجرا: در این مرحله از روش کار میکرو کنترلر، این قطعه عملیات مشخص شده در دستورالعمل را انجام می‌دهد.

این چرخه به طور مداوم تکرار می‌شود و به میکروکنترلر اجازه می‌دهد تا وظایف مورد نظر خود را انجام دهد. علاوه‌بر این، میکروکنترلرها می‌توانند به رویدادهای خارجی از طریق وقفه پاسخ دهند و به طور موقت جریان اجرای فعلی برنامه را برای رسیدگی به درخواست وقفه، متوقف کنند. وقفه ها برای رسیدگی به کارهای حساس به زمان و رویدادهای ناهمزمان ضروری هستند. وقفه ها می توانند توسط عوامل خارجی مثل تغییر وضعیت یک پین و یا توسط عوامل داخلی مثل سر ریز یمک تایمر به وقوع بپیوندند. 

انواع میکروکنترلر

میکروکنترلرها دارای انواع گوناگونی هستند که هر کدام برای مقاصد خاصی استفاده می شوند. در کشور ما دو خانواده میکروکنترلرهای AVR و میکروکنترلرهای ARM محبوبیت و مصرف گسترده تری دارند. به همین دلیل هم دارای منابع آموزش فارسی بیشتری هستند.

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

میکروکنترلرهای AVR که توسط شرکت Atmel (در حال حاضر Microchip Technology) ساخته می‌شوند، این میکرو کنترلرها به دلیل سادگی، سهولت استفاده و مصرف انرژی کم شناخته شده‌اند. آن‌ها به طور گسترده در کاربردهای مختلف، از لوازم الکترونیکی مصرفی گرفته تا اتوماسیون صنعتی استفاده می‌شوند. یکی از نمونه‌های استفاده از این سری محبوب، برد آردوینو Uno است که در پروژه‌های سرگرمی و آموزشی مورد استفاده قرار می‌گیرد.

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

 میکروکنترلرهای ARM (Advanced RISC Machine) به دلیل عملکرد بالا، تطبیق پذیری و مقیاس پذیری شهرت دارند. خرید میکروکنترلر arm در صنایع مختلف رایج است. آن‌ها طیف وسیعی از دستگاه‌ها، از جمله گوشی‌های هوشمند، تبلت‌ها، سیستم‌های خودرو و دستگاه‌های IoT را تامین می‌کنند. نمونه هایی از میکروکنترلرهای ARM عبارتند از سری STM32 از شرکت STMicroelectronics و همچنین یک مورد استفاده محبوب از این میکروکنترلرها، Raspberry Pi، یک کامپیوتر تک برد که به طور گسترده برای اهداف آموزشی و نمونه سازی استفاده می‌شود.

انتخاب و تهیه میکروکنترلر

هنگام خرید انواع میکروکنترلر، عوامل متعددی برای تصمیم گیری وجود دارند که با توجه به آن‌ها باید میکروکنترلر مناسب را انتخاب نمود:

1. الزامات برنامه: درک الزامات خاص پروژه شما بسیار مهم است. عواملی مانند قدرت پردازش، نیاز به حافظه و نیاز به تجهیزات جانبی خاص را در نظر بگیرید.

2. برند میکروکنترلر: همیشه سعی کنید برند معتبری را انتخاب کنید که با محصولات با کیفیت، پشتیبانی قابل اعتماد و در دسترس بودن طولانی مدت شناخته می‌شوند. برندهای مورد اعتماد اغلب اسناد جامع، کتابخانه‌های نرم افزاری و ابزارهای توسعه را برای کمک به فرآیند توسعه ارائه می‌کنند.

3. ابزارهای توسعه: در دسترس بودن ابزارهای توسعه و اکوسیستم‌های نرم افزاری سازگار با میکروکنترلر انتخابی را ارزیابی کنید. یک جامعه توسعه پر جنب‌وجوش و منابع در دسترس می‌تواند به طور قابل توجهی روند یادگیری و توسعه را تسهیل کند.

4. ملاحظات هزینه: در حالی که هزینه یک عامل مهم است، باید با ویژگی ها و قابلیت های مورد نیاز برای پروژه متعادل شود. گزینه‌های ارزان‌تر ممکن است فاقد ویژگی‌های خاص یا پشتیبانی طولانی‌مدت باشند که به طور بالقوه منجربه عوارض بعدی می‌شود.

5. در دسترس بودن و زمان تحویل: اطمینان حاصل کنید که میکروکنترلر انتخابی به راحتی در مقادیر مورد نیاز در دسترس است و زمان های دسترسی به محصول قابل مدیریت دارد. تاخیر در تدارکات می تواند زمان بندی پروژه را مختل کند و هزینه های اضافی را به همراه داشته باشد.

سخن پایانی

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

 

نظرات کاربران

محسن کمالی
1403/04/17
همانطورکه فرمودید میکروکنترلرها مغز دستگاه هستند من سوالی داشتم اگر باپیامک درگوشیم پاسخ بدید ممنون میشم ۱--ایکه میکن میکروکنترلر دریک برد خراب شده چه بلایی سرش اومده آیا احیامی شود۲--به نظرمن میکروکنترلر باهمان زبان برنامه نویسی دستورات روبراش براشون می نویست واگر بله نحوه نوشتن به چه شکلی است .باتشکر لطفآ سوالم روبدون پاسخ نگذارید حتی اگر طول بکشه .باتشکر
پاسخ مدیر: سلام دوست عزیز وقت بخیر. متاسفانه امکان پاسخ به صورت پیامک برای ما مقدور نیست. در مورد سوال اول: زمانی گفته میشود که یک میکروکنترلر سوخته با خراب است که مدارات داخلی آن آسیب دیده باشد و معمولا قابل تعمیر نیست. در مورد سوال دوم : برای برنامه نویسی میکرو کنترلرها از زبان های مختلفی استفاده میشود که یک نرم افزار این برنامه نوشته شده را کامپایل و کد مناسب میکرو رو تولید و پس از آن این کد بر روی میکروکنترلر آپلود میشود. آموزش میکروکنترلر مبحث بسیار مفصلی هست در صورتی که علاقه دارید منابع زیادی در وب برای این منظور وجود دارد. موفق باشید