جدول محتوایی
میکروکنترلر (Microcontroller) چیست ؟
میکروکنترلر یک تراشه کامپیوتری کوچک و همهکاره است که برای کنترل دستگاههای الکترونیکی استفاده میشود. برخلاف میکروپروسسورها (مثل CPUهای کامپیوتر)، میکروکنترلرها همه اجزای لازم را در یک تراشه دارند (پردازنده، حافظه، ورودی/خروجی و …) با ما همراه باشید تا انواع میکروکنترلر و کاربردهای آن را توضیح دهیم.
اجزای اصلی یک میکروکنترلر
جزء | توضیح |
---|---|
پردازنده (CPU) | مغز میکروکنترلر (معمولاً مبتنی بر معماری ARM, AVR, PIC, RISC-V) |
حافظه فلش (Flash) | ذخیرهسازی برنامههای کاربر (مثل کد C) |
RAM | حافظه موقت برای اجرای برنامه |
EEPROM | حافظه غیرفرار برای ذخیره دادههای پایدار (مثل تنظیمات) |
ورودی/خروجی (I/O) | پینهای دیجیتال و آنالوگ برای اتصال به سنسورها، موتورها و … |
مبدل آنالوگ به دیجیتال (ADC) | تبدیل سیگنالهای آنالوگ (مثل دماسنج) به دیجیتال |
تایمر/کانتر | کنترل زمانبندی و PWM (برای مثال، تنظیم سرعت موتور) |
پروتکلهای ارتباطی | UART, SPI, I2C, USB, CAN برای ارتباط با سایر دستگاهها |
خرید هاست لینوکس اشتراکی ارزان
کاربردهای میکروکنترلر
وسایل خانگی : مایکروویو، ماشین لباسشویی، سیستمهای HVAC
صنعت : کنترل موتورها، رباتیک، PLCها
خودرو : ECU (واحد کنترل موتور)، سیستمهای روشنایی
IoT : سنسورهای هوشمند، دستگاههای پوشیدنی
پزشکی : دستگاههای مانیتورینگ، پمپهای انسولین
مقایسه میکروکنترلر با میکروپروسسور
ویژگی | میکروکنترلر | میکروپروسسور (مثل Intel Core) |
---|---|---|
معماری | همهچیز در یک تراشه (All-in-One) | نیاز به قطعات جانبی (RAM, GPU, Chipset) |
مصرف انرژی | بسیار کم (مناسب برای باتری) | بالا (نیاز به خنککننده) |
قیمت | ارزان (از چند هزار تومان) | گران |
پیچیدگی برنامهنویسی | سادهتر (اغلب با C/Assembly) | پیچیده (نیاز به سیستمعامل) |
مثالها | Arduino, STM32, ESP32 | Intel i7, AMD Ryzen |
انواع معروف میکروکنترلرها
AVR (مورد استفاده در Arduino) → مناسب برای شروع یادگیری
ARM Cortex-M (مثل STM32) → پرکاربرد در صنعت و IoT
PIC (ساخته Microchip) → قدیمی اما هنوز پراستفاده
ESP32/ESP8266 → دارای وایفای/بلوتوث، محبوب در IoT
چگونه با میکروکنترلرها کار کنیم ؟
یادگیری برنامهنویسی C/++C : زبان اصلی توسعه برای میکروکنترلرها
کار با بردهای توسعه : شروع با Arduino یا STM32 Nucleo
آشنایی با ابزارها :
کامپایلر : Keil, STM32CubeIDE, PlatformIO
پروتکلها : UART, SPI, I2C
تمرین پروژههای عملی : مثل کنترل LED، خواندن سنسور دما، ساخت ربات ساده