راهنمای شغل · آبان ۱۴۰۵

آموزش میکروکنترلر: مسیر یادگیری تا استخدام، هزینه دوره و درآمد ۱۴۰۵

شغل
از گروه شغلی طراحی الکترونیک و سخت‌افزار · خانواده‌ی برق، الکترونیک و اتوماسیون
عنوان‌های دیگر: برنامه‌نویس میکروکنترلر، برنامه‌نویس C، برنامه‌نویس ++C
ورود به این مسیر معمولاً مدرک دانشگاهی مرتبط می‌خواهد (مهندسی برق (الکترونیک)، مهندسی کامپیوتر (سخت‌افزار))؛ مهارت‌های تکمیلی‌اش را بیرون از دانشگاه هم می‌شود آموخت.

آموزش میکروکنترلر راه ورود به شغل توسعه‌دهنده نرم‌افزارهای نهفته است: کسی که برنامه تراشه داخل دستگاه‌ها را می‌نویسد. ما ۸۶ آگهی زنده این کار را در ۶ آبان ۱۴۰۵ خواندیم تا بگوییم از کدام خانواده شروع کنی، به چه ترتیبی جلو بروی و بعد از یادگیری چه کاری و چه درآمدی منتظرت است.

۸۶
آگهی فعال برنامه‌نویسی میکروکنترلر و امبدد، ۶ آبان ۱۴۰۵
۶۳
آگهی از همان ۸۶ آگهی که STM32 یا ARM خواسته بودند، آبان ۱۴۰۵
۴۰ تا ۶۰
میلیون تومان، میانه پیشنهاد ماهانه ۳۴ آگهی که عدد نوشته بودند، آبان ۱۴۰۵

مسیر آموزش میکروکنترلر تا اولین کار، در سه سطح

این سه سطح از روی مهارت‌هایی چیده شده که آگهی‌ها خواسته بودند. هر سطح را با یک پروژه کامل تمام کن، نه با یک گواهی.

پنج پروژه‌ای که رزومه برنامه‌نویس میکروکنترلر را می‌سازد

روی هر ایستگاه جاده بزن تا آن دوره را ببینی.

تازه نفسماهرسوپرحرفه‌ای
۱. زبان C برای میکروکنترلرتازه نفسصفحه‌ی کامل این دوره

کل این مسیر را کجا بخوانم؟

در حال بارگذاری…

فقط چند دوره را می‌خواهی؟ روی هر ایستگاه جاده بزن و «صفحه‌ی کامل این دوره» را باز کن؛ آموزشگاه‌های همان یک دوره آنجا هستند.

  1. ۱

    تازه‌نفس

    زبان C با تمرکز روی اشاره‌گر، بیت و ساختار داده؛ الکترونیک دیجیتال؛ یک خانواده ۸ بیتی مثل AVR یا برد آردوینو؛ درگاه‌های UART، SPI و I2C؛ کار با مولتی‌متر و اسیلوسکوپ. پایان این سطح: دستگاهی که سنسوری را بخواند، روی نمایشگر نشان دهد و به کامپیوتر بفرستد.

  2. ۲

    ماهر

    میکروکنترلر ۳۲ بیتی STM32 هم با HAL و هم در سطح رجیستر؛ FreeRTOS؛ پروتکل CAN؛ دیباگ با JTAG یا SWD؛ آشنایی با طراحی برد در Altium در حد خواندن و اصلاح شماتیک. این همان سطحی است که بیشتر آگهی‌های کارشناس می‌خواهند.

  3. ۳

    سوپرحرفه‌ای

    Embedded Linux و ساخت توزیع با ابزارهایی مثل Yocto، درایورنویسی، ESP32 و اینترنت اشیا، ارتباط بی‌سیم کم‌مصرف، طراحی کم‌مصرف، C++ برای امبدد، تست سخت‌افزار و رهبری تیم. آگهی‌های کارشناس ارشد این سطح را با پیشنهاد ۹۰ تا ۱۵۰ میلیون تومان خواسته بودند.

کارفرمای امبدد بیشتر از مدرک، کد و برد ساخته‌شده را نگاه می‌کند. این پنج پروژه به ترتیب سختی، همان مهارت‌های آگهی‌ها را نشان می‌دهند:

  • دماسنج ثبت‌کننده: سنسور I2C، نمایشگر SPI و ذخیره روی کارت حافظه. نشان می‌دهد درگاه‌ها را بلدی.
  • کنترل دور موتور با PWM: با بازخورد سرعت و تنظیم PID. تایمر، وقفه و کنترل را نشان می‌دهد.
  • دستگاه چندکاره با FreeRTOS: یک تسک برای سنسور، یکی برای ارتباط و یکی برای رابط کاربر، با صف بین آن‌ها.
  • دو برد که با CAN یا RS485 حرف می‌زنند: با بسته‌بندی داده و بررسی خطا؛ برای آگهی‌های خودرو و صنعت.
  • بوت‌لودر ساده: فریمور تازه از UART یا Wi-Fi روی تراشه بنشیند و اگر خراب بود، نسخه قبلی برگردد.

کد هر پروژه را در Git نگه دار، README بنویس و یک فیلم کوتاه از کار کردن برد بگذار. ۲۲ آگهی Git را به اسم خواسته بودند و مصاحبه‌کننده معمولا از همین پروژه‌ها شروع می‌کند.

نقشه آموزش میکروکنترلر در سه سطح: تازه‌نفس با زبان C و AVR (۲۴ آگهی)، ماهر با STM32 یا ARM (۶۳ آگهی) و RTOS (۲۶ آگهی)، سوپرحرفه‌ای با Linux (۲۵ آگهی)، و استاندارد فنی و حرفه‌ای AVR ۲۷۲ ساعت و ARM ۳۰۰ ساعت
سطح‌ها از روی آگهی‌های ۶ آبان ۱۴۰۵؛ ساعت‌ها از استانداردهای فنی و حرفه‌ای

میکروکنترلر چیست و برنامه‌نویس آن روی تراشه چه می‌نویسد؟

میکروکنترلر مغز دستگاه‌های کوچک است: یک تراشه که هم برنامه را نگه می‌دارد، هم اجرایش می‌کند و هم مستقیم به کلید، سنسور و موتور وصل می‌شود. برنامه‌ای که روی آن می‌نشیند فریمور نام دارد و نویسنده‌اش توسعه‌دهنده نرم‌افزار نهفته است.

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

میکروکنترلر از نگاه کسی که برنامه‌اش را می‌نویسد

برای برنامه‌نویس، میکروکنترلر مجموعه‌ای از واحدهای جانبی است که هر کدام با چند رجیستر تنظیم می‌شوند:

  • پایه‌های GPIO: روشن و خاموش کردن LED و رله، خواندن کلید و سنسورهای ساده.
  • تایمر و PWM: زمان‌بندی دقیق، کنترل سرعت موتور و شدت نور.
  • مبدل ADC: تبدیل ولتاژ یک سنسور به عددی که برنامه بتواند با آن حساب کند.
  • درگاه‌های UART، SPI و I2C: گفت‌وگو با سنسور، نمایشگر، حافظه یا تراشه‌ای دیگر.
  • وقفه یا Interrupt: واکنش فوری به یک رخداد، بدون اینکه برنامه اصلی منتظر بماند.

کار روزانه این شغل راه انداختن همین واحدها، گرفتن داده از آن‌ها و ساختن منطق دستگاه روی آن‌هاست. یک روز معمولی ترکیبی است از خواندن داده‌برگ تراشه، نوشتن کد به زبان C، ریختن برنامه روی برد، نگاه کردن سیگنال روی اسیلوسکوپ و پیدا کردن خطایی که فقط روی سخت‌افزار واقعی پیدا می‌شود. به همین دلیل آموزش میکروکنترلر بدون برد واقعی نیمه‌کاره می‌ماند. شبیه‌ساز برای قدم اول خوب است، اما نویز، زمان‌بندی واقعی و رفتار قطعه را نشان نمی‌دهد.

فرق این شغل با طراح مدار و طراح برد

طراح مدار تصمیم می‌گیرد چه قطعه‌ای در دستگاه باشد و طراح برد جای قطعه‌ها را روی PCB می‌چیند. برنامه‌نویس میکروکنترلر بعد از آن‌ها برد را زنده می‌کند. در شرکت‌های کوچک یک نفر هر سه کار را انجام می‌دهد: از ۸۶ آگهی که خواندیم، ۵۳ آگهی کار با Altium یا طراحی PCB را هم کنار برنامه‌نویسی نوشته بودند. پس هرچه از مدار بیشتر بفهمی، در آگهی‌های ایران دست بازتری داری. شرح کار مهندس طراحی الکترونیک و طراح pcb در صفحه خودشان آمده است.

آموزش میکروکنترلر را با کدام خانواده شروع کنیم؟

پرتکرارترین پرسش تازه‌کارها این است که AVR یاد بگیرند یا ARM. جدول زیر هر خانواده را کنار هم گذاشته و ستون آخر نشان می‌دهد در ۸۶ آگهی آبان ۱۴۰۵ چند بار نامش آمده بود.

خانواده‌های میکروکنترلر و تعداد آگهی‌هایی که نام هر کدام را آورده بودند، ۶ آبان ۱۴۰۵
خانوادهپهنای دادهکجا به کار می‌رودمحیط برنامه‌نویسی رایجدر ۸۶ آگهی
AVR، مثل ATmega32۸ بیتیدرس دانشگاه و هنرستان، دستگاه‌های ساده صنعتی، بردهای آردوینوCodeVisionAVR، Microchip Studio۲۴ آگهی
ARM Cortex-M، مثل STM32۳۲ بیتیتجهیزات صنعتی، خودرو، تجهیزات پزشکی، محصولات شرکت‌های دانش‌بنیانSTM32CubeIDE، Keil، IAR۶۳ آگهی، STM32 یا ARM
ESP32۳۲ بیتی با Wi-Fi و بلوتوثاینترنت اشیا، خانه هوشمند، دستگاه‌های متصل به اینترنتESP-IDF، Arduino IDE۱۶ آگهی
PIC و dsPIC۸ تا ۳۲ بیتیدستگاه‌های صنعتی قدیمی‌تر و کنترل موتورMPLAB X۴ آگهی
DSP، مثل سری C2000 شرکت TIپردازش سیگنالاینورتر، کنترل موتور، صوت و اندازه‌گیری لرزشCode Composer Studio۶ آگهی
هر آگهی ممکن است چند خانواده را نام برده باشد، پس جمع ستون آخر از ۸۶ بیشتر است. میکروکنترلرهای هولتک در هیچ‌کدام از این آگهی‌ها نام برده نشده بودند.

آموزش میکروکنترلر ARM: از اولین برنامه STM32 تا RTOS

STM32 یا ARM در ۶۳ آگهی از ۸۶ آگهی آمده بود و AVR در ۲۴ آگهی. اگر قرار است یک خانواده را عمیق یاد بگیری، بازار کار امروز ایران ARM را انتخاب کرده است.

ARM خودش تراشه نمی‌سازد. این شرکت هسته پردازنده‌ای به نام Cortex-M را طراحی می‌کند و سازنده‌های تراشه آن را با واحدهای جانبی خودشان می‌فروشند. STM32 خانواده‌ای از همین تراشه‌هاست که شرکت STMicroelectronics می‌سازد و در ایران از همه رایج‌تر است. سری‌های ساده‌تر آن برای شروع ارزان‌اند و سری‌های F4 و بالاتر دستورهای پردازش سیگنال و واحد ممیز شناور دارند.

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

ترتیب پیشنهادی آموزش میکروکنترلر ARM

  • قدم یک: نصب STM32CubeIDE، ساختن پروژه با CubeMX و نوشتن برنامه چشمک‌زن با کتابخانه HAL.
  • قدم دو: تنظیم ساعت سیستم، تایمر، PWM و وقفه خارجی؛ بعد UART برای فرستادن پیام به کامپیوتر.
  • قدم سه: ADC با DMA، و ارتباط با سنسور از راه SPI و I2C. در ۳۳ آگهی این سه درگاه به اسم آمده بود.
  • قدم چهار: یک بار همان کارها را در سطح رجیستر بنویس تا بفهمی HAL پشت پرده چه می‌کند. کارفرما در مصاحبه همین را می‌پرسد.
  • قدم پنج: FreeRTOS: تسک، صف، سمافور و اولویت. RTOS در ۲۶ آگهی خواسته شده بود.
  • قدم شش: پروتکل CAN برای خودرو و صنعت (۲۷ آگهی) و نوشتن بوت‌لودر یا به‌روزرسانی فریمور از راه دور (۱۳ آگهی).

دیباگر را از روز اول جدی بگیر. با ST-Link و درگاه SWD می‌توانی برنامه را وسط اجرا نگه داری، مقدار متغیرها را ببینی و خط به خط جلو بروی. برنامه‌نویسی که فقط با چاپ پیام روی UART خطا پیدا می‌کند، در پروژه واقعی چند برابر کندتر است.

آموزش میکروکنترلر DSP: برای چه کاری لازم می‌شود؟

DSP پردازنده‌ای است که برای حساب‌های تکراری روی سیگنال، مثل فیلتر و تبدیل فوریه، ساخته شده است. در ۸۶ آگهی فقط ۶ آگهی DSP را نام برده بودند؛ پس این آموزش قدم دوم است، نه نقطه شروع.

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

  • کنترل موتور و الکترونیک قدرت: اینورتر، درایو موتور BLDC، شارژر و منبع تغذیه دیجیتال. سری C2000 شرکت TI برای همین کار ساخته شده و بیشتر دوره‌های DSP در ایران را گروه‌های الکترونیک قدرت برگزار می‌کنند.
  • صوت، لرزش و اندازه‌گیری: حذف نویز، تحلیل فرکانسی و پایش سلامت ماشین‌آلات.
  • مخابرات و رادار: پردازنده‌های سنگین‌تر؛ یکی از آگهی‌ها DSP سری C66x یا تراشه Zynq خواسته بود.

راه ساده‌تر: DSP داخل همان ARM

هسته‌های Cortex-M4 و M7 دستورهای DSP و واحد ممیز شناور دارند و کتابخانه CMSIS-DSP فیلتر و تبدیل فوریه آماده در اختیارت می‌گذارد. یکی از آگهی‌ها دقیقا همین کتابخانه را نام برده بود. پس اگر STM32 را یاد گرفته‌ای، اولین قدم در پردازش سیگنال این است که روی همان تراشه یک فیلتر بنویسی و نتیجه را روی اسیلوسکوپ ببینی.

پیش از آموزش میکروکنترلر DSP این‌ها را مرور کن: سیگنال‌ها و سیستم‌ها، نمونه‌برداری و قضیه نایکوئیست، فرق عدد ممیز ثابت و ممیز شناور، و طراحی فیلتر در MATLAB. دوره «پردازش سیگنال با نرم‌افزار MATLAB» فنی و حرفه‌ای ۱۵۶ ساعت است و در آموزشگاه‌های آزاد تهران در ۱۴۰۵ حدود ۲۸٫۹ میلیون تومان شهریه دارد.

استخدام برنامه‌نویس میکروکنترلر: ۸۶ آگهی آبان ۱۴۰۵ چه خواسته‌اند؟

این شمارش نشان می‌دهد بعد از آموزش میکروکنترلر، کارفرما دقیقا چه چیزی را از تو می‌خواهد.

۸۶
آگهی برنامه‌نویسی میکروکنترلر و امبدد
۶ آبان ۱۴۰۵، از ۷۵ کارفرما
۷۳
آگهی زبان C خواسته بودند
۸۵ درصد آگهی‌ها
۶۳
آگهی STM32 یا ARM
AVR در ۲۴ آگهی
۳
آگهی دورکاری داشتند
بیشتر کار در محل شرکت است

چطور شمردیم: در یک سایت بزرگ کاریابی ۹ جست‌وجو انجام دادیم، از Embedded و Firmware تا میکروکنترلر، STM32، AVR و ESP32، و ۴۱۵ آگهی متفاوت پیدا شد. آگهی‌های DevOps، پشتیبانی، شبکه، PLC، فروش و آگهی‌هایی که فقط طراحی برد یا FPGA می‌خواستند کنار رفت. ۸۶ آگهی ماند: ۴۵ آگهی که عنوانشان امبدد، فریمور، میکروکنترلر یا IoT بود و ۴۱ آگهی مهندس الکترونیک یا سخت‌افزار که در متن، برنامه‌نویسی میکروکنترلر را شرط گذاشته بودند.

مهارت‌هایی که کنار میکروکنترلر خواسته شده بود

  • زبان‌ها: C در ۷۳ آگهی، C++ در ۳۶ و Python در ۱۸ آگهی.
  • درگاه‌ها و پروتکل‌ها: UART، SPI و I2C در ۳۳ آگهی، CAN در ۲۷ و Modbus در ۱۲ آگهی.
  • سیستم‌عامل: RTOS در ۲۶ آگهی و Linux در ۲۵ آگهی؛ بیشتر Linux خواسته‌ها برای بردهای قوی‌تر و Embedded Linux بود.
  • کار با سخت‌افزار: دیباگ با اسیلوسکوپ یا آنالایزر منطقی در ۳۵ آگهی، خواندن داده‌برگ در ۲۲ آگهی و Altium یا طراحی PCB در ۵۳ آگهی.
  • ابزار تیمی: Git در ۲۲ آگهی؛ بوت‌لودر و به‌روزرسانی فریمور از راه دور در ۱۳ آگهی.
  • خانواده‌های دیگر: ESP32 در ۱۶ آگهی، DSP در ۶ و PIC در ۴ آگهی.

شرط‌ها و شهرها

۶۳ آگهی، یعنی ۷۳ درصد، در استان تهران بود؛ بعد اصفهان با ۹، خراسان رضوی با ۴ و مازندران با ۳ آگهی. سطح ۷۱ آگهی کارشناس و ۱۲ آگهی کارشناس ارشد بود. ۷۹ آگهی رشته مهندسی برق را پذیرفته بودند و ۳۱ آگهی کامپیوتر را هم قبول داشتند. در ۱۷ آگهی که سابقه را با عدد نوشته بودند، میانه ۳ سال بود و ۸ آگهی یک یا دو سال سابقه را کافی می‌دانستند.

۶۴ آگهی نوشته بودند جنسیت تفاوتی ندارد. ۳۶ آگهی پایان خدمت یا معافیت را شرط گذاشته بودند و ۳۱ آگهی امریه سربازی را جزو مزایا آورده بودند. ۵۹ آگهی سقف سن داشتند با میانه ۳۵ سال. بیمه تکمیلی در ۵۵ آگهی آمده بود و کمک‌هزینه دوره آموزشی در ۱۵ آگهی. صنعت کارفرماها بیشتر تولیدی و صنعتی (۲۲)، خدمات مهندسی (۲۱)، فناوری اطلاعات و سخت‌افزار (۱۹) و خودرو (۱۰) بود.

در سایت آگهی محلی همان روز با جست‌وجوی میکروکنترلر و embedded در تهران حتی یک آگهی شغلی پیدا نشد؛ آگهی‌های الکترونیک آن‌جا بیشتر مونتاژ و تعمیر بود. پس برای این شغل، رزومه را در سایت‌های کاریابی تخصصی و مستقیم برای شرکت‌ها بفرست.

مهارت‌های خواسته‌شده در ۸۶ آگهی برنامه‌نویسی میکروکنترلر آبان ۱۴۰۵: زبان C در ۷۳، STM32 یا ARM در ۶۳، UART و SPI و I2C در ۳۳، RTOS در ۲۶، AVR در ۲۴ و DSP در ۶ آگهی؛ راهنمای آموزش میکروکنترلر arm و آموزش میکروکنترلر dsp
تعداد آگهی از ۸۶ آگهی، سایت کاریابی، ۶ آبان ۱۴۰۵
برای آموزشگاه‌ها

دوره میکروکنترلر ARM، AVR یا Embedded Linux برگزار می‌کنید؟

اگر آموزشگاه شما دوره برنامه‌نویسی میکروکنترلر، RTOS، پردازش سیگنال یا Embedded Linux دارد، می‌توانید در راه تا کار ثبت‌نام کنید تا دوره‌هایتان کنار مسیر یادگیری همین شغل دیده شود.

  • ثبت‌نام با شماره موبایل و مشخصات آموزشگاه
  • بررسی درخواست شما توسط تیم راه تا کار
  • ساخت صفحه آموزشگاه و ثبت دوره‌ها بعد از تایید
  • بررسی جداگانه هر دوره پیش از نمایش
درخواست همکاری آموزشگاه

ثبت درخواست به معنی تایید خودکار نیست؛ هر آموزشگاه و هر دوره جدا بررسی می‌شود.

دوره میکروکنترلر کجا بگذرانیم: فنی و حرفه‌ای، آموزشگاه آزاد یا آموزش ویدیویی؟

شهریه‌های جدول، شهریه مصوب آموزشگاه‌های آزاد فنی و حرفه‌ای تهران در ۱۴۰۵ است. آموزش ویدیویی ارزان‌تر است، اما کسی کنار برد تو نمی‌نشیند.

راه‌های آموزش میکروکنترلر و شهریه ۱۴۰۵ آموزشگاه‌های آزاد تهران
راه یادگیریساعتشهریه، میلیون تومانچه چیزی می‌دهدکمبود
استاندارد مدارهای میکروکنترلر AVR۲۷۲۱۵٫۱۲ حضوری، ۱۲٫۱۰ مجازیگواهی مهارت با کد استاندارد، کار عملی با بردخانواده ۸ بیتی، کمتر خواسته‌شده در آگهی‌ها
استاندارد مدارهای میکروکنترلر ARM۳۰۰۱۵٫۱۲ حضوری، ۱۲٫۱۰ مجازیخانواده پرتقاضای بازار، گواهی مهارتRTOS و CAN را باید جدا تمرین کرد
مدارهای دیجیتال با آردوینو۲۰۱۳۷٫۲۳ حضوری، ۲۹٫۷۸ مجازیشروع سریع و پروژه‌محور برای تازه‌کارکتابخانه‌های آماده، کار با رجیستر را پنهان می‌کند
پردازش سیگنال با MATLAB۱۵۶۲۸٫۸۹ حضوری، ۲۳٫۱۲ مجازیپایه لازم برای DSP و فیلتر دیجیتالروی تراشه اجرا نمی‌شود، فقط طراحی و شبیه‌سازی
آموزش ویدیویی و مقاله‌هابه سرعت خودترایگان یا پولی، بسته به سایتانعطاف زمانی، مثال‌های فراوان برای AVR و STM32بدون رفع اشکال روی برد و بدون گواهی معتبر
برای STM32، ESP32، Embedded Linux و اینترنت اشیا در فهرست فنی و حرفه‌ای استاندارد جدا نیست؛ این‌ها را آموزشگاه‌های آزاد و دوره‌های ویدیویی با سرفصل خودشان درس می‌دهند.

برای تمرین چه بردی و چه ابزاری لازم است؟

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

یک برد آموزشی ساده

برای AVR یک برد آردوینو Uno یا برد ATmega32، و برای ARM بردی با STM32F103 یا یکی از بردهای Nucleo که دیباگر روی خودش دارد.

پروگرامر و دیباگر

ST-Link برای STM32 و USBasp برای AVR. با دیباگر می‌توانی برنامه را وسط اجرا نگه داری و متغیرها را ببینی.

نرم‌افزار رایگان

STM32CubeIDE، Microchip Studio، MPLAB X، ESP-IDF و Arduino IDE همه رایگان‌اند. Git را هم از اولین پروژه کنارشان بگذار.

مولتی‌متر و آنالایزر منطقی

آنالایزر منطقی ارزان بیت‌های UART، SPI و I2C را روی کامپیوتر نشان می‌دهد و نصف خطاهای ارتباطی را همان‌جا پیدا می‌کنی.

اسیلوسکوپ در قدم دوم

برای دیدن PWM، نویز و زمان‌بندی دقیق لازم است. ۳۵ آگهی کار با ابزار اندازه‌گیری و دیباگ سخت‌افزاری را خواسته بودند.

شبیه‌ساز جای برد را نمی‌گیرد

Proteus برای هفته اول خوب است، اما زمان‌بندی، نویز و ایراد لحیم را نشان نمی‌دهد. هرچه زودتر سراغ برد واقعی برو.

درآمد برنامه‌نویسی میکروکنترلر در آگهی‌ها و گزارش حقوق

سه عدد را جدا بخوان: پیشنهادی که آگهی‌های آبان ۱۴۰۵ نوشته بودند، حقوقی که مهندسان برق در پایان ۱۴۰۴ واقعا گرفته‌اند و حقوقی که برای ۱۴۰۵ درخواست کرده‌اند.

حقوق در ایران
۲۶ تا ۴۲ میلیون تومان

ماهانه و خالص، تهران، مهندسان برق، سطح کارشناس، ۱۴۰۴. این عدد مربوط به کلِ گروه طراحی الکترونیک و سخت‌افزار است، نه یک عنوان شغلی خاص.

حقوق در خارج از کشور
آمریکا
۱۳۵,۹۸۰ دلار آمریکا
۱۰۵,۲۱۰ تا ۱۷۱,۹۸۰
کانادا
۹۵,۹۹۲ دلار کانادا
۶۲,۴۰۰ تا ۱۴۵,۰۵۹

سالانه و ناخالص، عددِ میانه و بازه‌ی نیمه‌ی میانیِ بازار. شغلِ متناظر: Software Developers. منبع: اداره‌ی آمار کار آمریکا (۲۰۲۵) و Job Bank کانادا (۲۰۲۵).

درآمد ماهانه برنامه‌نویس میکروکنترلر و مهندسان برق، میلیون تومان
منبعگروهمبلغ ماهانهتوضیح
پیشنهاد آگهی‌ها، آبان ۱۴۰۵همه ۳۴ آگهی که عدد نوشته بودند۴۰ تا ۶۰میانه حداقل تا میانه حداکثر؛ خالص یا ناخالص بودن گفته نشده
پیشنهاد آگهی‌ها، آبان ۱۴۰۵۱۶ آگهی با عنوان امبدد یا میکروکنترلر۴۳٫۵ تا ۶۰همان روش
پیشنهاد آگهی‌ها، آبان ۱۴۰۵استان تهران، ۲۴ آگهی۴۳٫۵ تا ۶۵همان روش
پیشنهاد آگهی‌ها، آبان ۱۴۰۵استان‌های دیگر، ۱۰ آگهی۳۰ تا ۴۷٫۵همان روش
پیشنهاد آگهی‌ها، آبان ۱۴۰۵کارشناس ارشد، ۳ آگهی۹۰ تا ۱۵۰نمونه کوچک
دریافتی پایان ۱۴۰۴مهندسان برق تهران، سطح کارشناسمیانه ۳۴، نیمه میانی ۲۶ تا ۴۲خالص، گزارش حقوق ۱۴۰۵
درخواستی ۱۴۰۵همان گروهمیانه ۴۸، نیمه میانی ۳۶ تا ۶۱عددی که برای کار بعدی خواسته‌اند
دریافتی پایان ۱۴۰۴مهندسان برق تهران، کارشناس ارشدمیانه ۴۵، نیمه میانی ۳۵ تا ۶۰خالص
دریافتی پایان ۱۴۰۴مهندسان برق شهرهای بزرگ، کارشناسمیانه ۲۸، نیمه میانی ۲۱ تا ۳۶خالص
حداقل حقوق قانونی ۱۴۰۵ برای کارگر مجرد حدود ۲۱٫۸ میلیون تومان ناخالص در ماه است.

دامنه عدد گزارش حقوق: گزارش حقوق ۱۴۰۵ گروه جدایی برای برنامه‌نویس امبدد ندارد. نزدیک‌ترین گروه، مهندسی برق با ۱٬۵۸۴ شرکت‌کننده است؛ ۷۹ آگهی از ۸۶ آگهی همین رشته را خواسته بودند و کار این شغل هم ساختن نرم‌افزار دستگاه‌های الکترونیکی است. عدد دریافتی برای سطح کارشناس در تهران است.

فاصله ۳۴ میلیون دریافتی با ۴۰ تا ۶۰ میلیون آگهی‌ها دو دلیل دارد: آگهی سقف بودجه کارفرماست و تخصص امبدد در میان مهندسان برق کمیاب‌تر است. ۳۴ آگهی، یعنی ۴۰ درصد، عدد نوشته بودند و کمترین پیشنهاد ۲۰ و بیشترین ۱۷۰ میلیون تومان بود. برای مقایسه، برنامه‌نویسان وب و اپ در سطح میانی تهران میانه دریافتی ۳۶ میلیون تومان داشتند.

چه چیزی درآمد را بالا می‌برد؟

  • رفتن از ۸ بیتی به ۳۲ بیتی: STM32، RTOS و CAN همان چیزی است که آگهی‌های پرپیشنهاد خواسته بودند.
  • Embedded Linux و C++: بالاترین پیشنهادها، ۹۰ تا ۱۵۰ و ۱۱۴ تا ۱۷۰ میلیون تومان، برای همین ترکیب بود.
  • شهر: پیشنهاد استان تهران ۴۳٫۵ تا ۶۵ و استان‌های دیگر ۳۰ تا ۴۷٫۵ میلیون تومان بود.
  • کار با سخت‌افزار: کسی که برد را هم می‌فهمد و دیباگ سخت‌افزاری بلد است، کمتر پیدا می‌شود.
درآمد برنامه‌نویس میکروکنترلر در آبان ۱۴۰۵: پیشنهاد آگهی‌ها ۴۰ تا ۶۰ میلیون تومان، تهران ۴۳٫۵ تا ۶۵، استان‌های دیگر ۳۰ تا ۴۷٫۵، دریافتی مهندسان برق تهران ۲۶ تا ۴۲ و درخواستی ۳۶ تا ۶۱ میلیون تومان
میلیون تومان در ماه؛ آگهی‌ها: میانه حداقل تا میانه حداکثر، گزارش حقوق: نیمه میانی؛ آبان ۱۴۰۵

برنامه‌نویس نهفته در آمریکا و کانادا

آمار رسمی آمریکا برنامه‌نویس نهفته را جدا نمی‌شمارد و آن را در گروه توسعه‌دهندگان نرم‌افزار می‌آورد. میانه درآمد سالانه این گروه در آمریکا ۱۳۵٬۹۸۰ دلار ناخالص است و نیمه میانی آن از ۱۰۵٬۲۱۰ تا ۱۷۱٬۹۸۰ دلار (اردیبهشت ۱۴۰۴، مه ۲۰۲۵). در کانادا میانه گروه توسعه‌دهندگان نرم‌افزار ۹۵٬۹۹۲ دلار کانادا در سال است و پایین و بالای آن ۶۲٬۴۰۰ و ۱۴۵٬۰۵۹ دلار کانادا. این عددها ناخالص و سالانه‌اند و هزینه زندگی آن کشورها را باید کنارشان دید.

برنامه‌نویسی میکروکنترلر به تو می‌آید؟

احتمالا لذت می‌بری اگر

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

شاید سخت باشد اگر

  • دنبال کاری هستی که بیشتر آن از خانه و دورکاری انجام شود؛ فقط ۳ آگهی از ۸۶ دورکاری داشتند.
  • نتیجه سریع و دیدنی مثل طراحی سایت را ترجیح می‌دهی؛ یک خطای سخت‌افزاری گاهی چند روز وقت می‌گیرد.
  • از کار با ابزار اندازه‌گیری و لحیم کردن دوری می‌کنی.
  • نمی‌خواهی در تهران یا چند شهر صنعتی بزرگ کار کنی.

این شغل در یک نگاه

کار با آدم‌ها۳۰٪
کار با دست و ابزار۷۵٪
تحرک و کار بدنی۳۰٪
شیفت عصر و شب۱۰٪
نظم و کار روتین۵۵٪
خلاقیت۶۰٪

این فهرست برداشت کلی است. تست راه تا کار علاقه‌ها و ترجیح‌هایت را دقیق‌تر کنار این شغل می‌گذارد.

شروع تست

پرسش‌های رایج درباره آموزش میکروکنترلر و کار با آن

میکروکنترلر ARM بهتر است یا AVR؟

برای پیدا کردن کار، ARM. در آگهی‌های آبان ۱۴۰۵، STM32 یا ARM در ۶۳ آگهی از ۸۶ آمده بود و AVR در ۲۴ آگهی. AVR ساده‌تر است و برای فهم پایه‌ها پله خوبی است، اما اگر فقط یکی را عمیق یاد می‌گیری، STM32 را انتخاب کن.

برای برنامه‌نویسی میکروکنترلر زبان C کافی است یا C++ و پایتون هم لازم است؟

C پایه کار است و ۷۳ آگهی از ۸۶ آن را خواسته بودند. C++ در ۳۶ آگهی آمده بود، بیشتر برای پروژه‌های بزرگ‌تر و Embedded Linux. پایتون در ۱۸ آگهی بود و بیشتر برای نوشتن ابزار تست و کار روی کامپیوتر به کار می‌رود، نه روی خود تراشه.

آردوینو با میکروکنترلر چه فرقی دارد؟

آردوینو خودش میکروکنترلر نیست؛ یک برد آموزشی و یک محیط برنامه‌نویسی است که روی میکروکنترلرهایی مثل ATmega328 از خانواده AVR ساخته شده است. کتابخانه‌های آماده آن شروع را آسان می‌کند، اما کار با رجیستر و زمان‌بندی را پنهان می‌کند. فقط یکی از ۸۶ آگهی آردوینو را نام برده بود.

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

هولتک سازنده‌ای تایوانی است که میکروکنترلرهای ارزان ۸ بیتی برای لوازم خانگی، ریموت و شارژر می‌سازد. اگر در کارخانه‌ای کار می‌کنی که با آن محصول می‌سازد، لازم می‌شود. در ۸۶ آگهی آبان ۱۴۰۵ هیچ‌کدام هولتک را نام نبرده بودند، پس برای شروع پیشنهاد نمی‌شود.

آموزش رایگان میکروکنترلر برای شروع کافی است؟

برای یاد گرفتن مفهوم‌ها بله؛ آموزش‌های ویدیویی و مقاله‌ای رایگان برای AVR و STM32 زیاد است. چیزی که آموزش رایگان نمی‌دهد، کسی است که کنار برد تو اشکال را ببیند و پروژه‌ای که از اول تا آخر خودت ساخته باشی. اگر خودت پروژه بسازی و در Git بگذاری، آموزش رایگان هم تو را به مصاحبه می‌رساند.

یادگیری میکروکنترلر چقدر طول می‌کشد؟

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

بدون مدرک برق می‌شود برنامه‌نویس میکروکنترلر شد؟

۷۹ آگهی از ۸۶ مهندسی برق را پذیرفته بودند و ۳۱ آگهی کامپیوتر را هم قبول داشتند. پس کامپیوتری‌ها هم راه دارند، به شرط اینکه مدار دیجیتال و کار با برد را یاد بگیرند. بدون مدرک دانشگاهی، استخدام در شرکت سخت‌تر است و نمونه‌کار باید خیلی قوی باشد.

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

کم است. ۶۳ آگهی از ۸۶ در استان تهران بود، ۹ آگهی در اصفهان، ۴ آگهی در خراسان رضوی و ۳ آگهی در مازندران. پیشنهاد حقوق ۱۰ آگهی استان‌های دیگر هم ۳۰ تا ۴۷٫۵ میلیون تومان بود، کمتر از تهران.

برنامه‌نویس میکروکنترلر دورکاری هم دارد؟

در استخدام خیلی کم: فقط ۳ آگهی از ۸۶ دورکاری داشتند، چون برنامه باید روی برد واقعی آزمایش شود. بعضی پروژه‌های کوچک را می‌شود از راه دور انجام داد، به شرط اینکه برد نمونه دست خودت باشد.

آگهی‌های امبدد خانم‌ها را هم می‌پذیرند؟

بیشتر آن‌ها بله. ۶۴ آگهی از ۸۶ نوشته بودند جنسیت تفاوتی ندارد و یک آگهی خانم را ترجیح داده بود. ۱۰ آگهی فقط آقا و ۱۱ آگهی ترجیحا آقا خواسته بودند. برای آشنایی با کل گروه شغلی، صفحه طراحی الکترونیک و سخت‌افزار را ببین.

پیش از خرید اولین برد، ببین این کار به تو می‌آید یا نه

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

شروع تست

سوالی درباره توسعه‌دهنده نرم‌افزارهای نهفته دارید؟

سوالتان را بپرسید. جواب را همین‌جا می‌نویسیم تا به کار بقیه هم بیاید.