فیلم آموزش استاندارد MISRA C

فیلم آموزش استاندارد MISRA C ، دستورالعمل های استفاده از زبان C در سیستم های حیاتی را خواهیم آموخت. همۀ برنامه نویسان میکروکنترلر باید مخاطب این آموزش باشند.

۵۳۳,۰۰۰ تومان

فروش ویژه

تخفیف و هدیه

اخبار جدید یوبرد در اینستاگرام

جلسات اول فیلم های آموزشی در یوبرد رایگان

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

زمان فیلم آموزشی

7 ساعت و 25 دقیقه

مخاطبین

هر فردی که برای میکروکنترلرها به زبان C برنامه نویسی می کند، باید مخاطب این آموزش باشد.

رضا اسدی

رضا اسدی

مدیر یوبرد، خالق و توسعه دهندۀ پلتفرم یوبرد، مجری پروژه های الکترونیکی، فعال در صنعت آسانسور، سابقه فعالیت در صنعت خودرو و همکاری در صنعت پزشکی و صنایع دیگر، آموزگار آموزش های یوبرد

به‌روزرسانی رایگان

آپدیت رایگان و مادام‌العمر بدون هزینه

پشتیبانی ویژه

کلاس خصوصی و مشاوره آموزش با 30% تخفیف

دسترسی سریع

دانلود بلافاصله پس از پرداخت

راهنمای استفاده

پلیر اختصاصی، تنها Windows، یک سیستم

فیلم آموزش استاندارد MISRA C جلسۀ چهارم آموزش زبان C میکروکنترلرها در یوبرد است. در این آموزش به استاندارد MISRA C که مجموعه دستورالعمل هایی برای استفاده از زبان C در سیستم های حیاتی است، می پردازیم. رسالت MISRA کمک به صنعت خودرو در زمینۀ ایجاد نرم افزار ایمن و قابل اعتماد برای سیستم های خودرویی است. امروزه MISRA C برای تمامی سیستم های دیجیتال برنامه پذیر استاندارد با زبان C، مورد استفاده قرار می گیرد.

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

در آموزش استاندارد MISRA C می بینیم که به دلایلی، استفاده از برخی ابزارها و ساختارها، ممنوع شده و برخی دیگر باید به طور محدود استفاده شوند. در دستورالعمل های این استاندارد مهم نحوۀ استفاده از ابزارها و ساختارها بیان شده است. قوانین دیگری در این سند وجود دارند که مربوط به ساختارهای کد و محدود کردن نحوۀ کدنویسی هستند. برای مباحث مختلف زبان C، قوانینی وجود دارند که رعایت کردن آنها برای سیستم های حیاتی ضروری است. یعنی اگر برنامه ای مطابق با استاندارد MISRA C بنویسیم، باید همۀ این قوانین را در آن رعایت کنیم. آنگاه می توانیم بگوییم برنامه ای که نوشته ایم، منطبق با MISRA C است. البته خود این استاندارد در یک قسمت بطور دقیق تر بیان می کند که باید چکار کنیم که بتوانیم ادعای انطباق سورس کد خود بر MISRA C را بکنیم.

تصویر استاندارد MISRA C

تصویر 1 – سند MISRA C

 

استاندارد بودن برنامه از این جهت ضرورت دارد که در سیستم های حیاتی نباید کوچک ترین مشکلی به وجود بیاید. چرا که در بسیاری از سیستم های حیاتی مثل وسایل نقلیه و تجهیزات پزشکی، جان انسان ها در میان است (در این آموزش منظور از سیستم های حیاتی را بهتر متوجه خواهیم شد.). استاندارد MISRA C که برای برنامه نویسی سیستم های خودرو بوجود آمده، می تواند در بسیاری از سیستم های دیگر مورد استفاده قرار گیرد. امروزه دیگر این استاندارد صرفا در راستای هدفی که برای آن بوجود آمده استفاده نمی شود. می توان گفت امروزه تمامی توسعه دهندگان امبدد سیستم ها مخاطب این استاندارد مهم هستند. اگر برنامه ای نوشته باشیم که منطبق با MISRA C باشد، این برنامه قابل اطمینان است. در سیستم های حیاتی، خاصیت قابل اطمینان بودن اهمیت فراوان دارد. «از سال 1998 که نسخۀ اول MISRA C ارائه شد، موفقیت ها و استفاده های جهانی از آن در صنایع خودرو، هوافضا، پزشکی و صنایع دیگر سرسام آور بوده است». این جمله می تواند اهمیت این استاندارد را نشان دهد. باتوجه به اینکه حوزۀ فعالیت ما در یوبرد پوشش ابعاد مختلف توسعۀ یک امبدد سیستم است، آموزش قوانین استاندارد MISRA C را نیز در یوبرد ارائه کرده ایم. نظر ما بر این است که همۀ برنامه نویسان میکروکنترلر باید مخاطب این آموزش باشد.

فیلم آموزش ARM STM32 مقدماتی

فیلم آموزش میکروکنترلرهای AVR مقدماتی

فیلم آموزش آردوینو مقدماتی

قانون 20.9 از MISRA C

تصویر 2 – قاون الزامی 20.9 از MISRA C

 

MISRA C چیست؟

MISRA مخفف Motor Industry Software Reliability Association است و انجمنی است که دستور العمل های MISRA C و MISRA C++ را تهیه و منتشر می کند. این انجمن یک همکاری بین تولید کننده های خودرو، تأمین کنندگان قطعات و مشاوران مهندسی است که به دنبال ترویج بهترین روش در توسعه سیستم های الکترونیکی مرتبط با ایمنی در وسایل نقلیه جاده‌ای و سایر سیستم های نهفته هستند. MISRA C مجموعه دستور العمل هایی برای زبان برنامه نویسی C است که توسط کنسرسیوم میسرا تهیه و منتشر شده است. MISRA C با هدف کمک به صنعت خودرو برای ایجاد نرم افزارهای قابل اطمینان تهیه شد. اما در صنایع دیگر نیز مورد استفاده قرار گرفت. اولین نسخۀ MISRA C مربوط به سال 1998 است و نسخه های دیگر در سال های 2004 و 2012 و 2016 و 2020 منتشر شده اند. نتیجۀ رعایت قوانین MISRA C در برنامه نویسی به زبان C، نرم افزاری قابل اطمینان برای سیستم های حیاتی است.

چرا آموزش MISRA C یوبرد؟

از ویژگی های این آموزش، می توانیم به موارد زیر اشاره کنیم:

  • فیلم آموزش MISRA C یوبرد، اولین آموزش کامل استاندارد MISRA C به زبان فارسی است. در زمان تهیۀ فیلم آموزش استاندارد MISRA C یوبرد، یعنی تابستان 1400، آموزش مشابهی که هم کامل و هم به زبان فارسی باشد، در سطح اینترنت وجود نداشت. البته ویرایش فعلی این آموزش یک ویرایش اساسی در بهار 1402 است. که در این ویرایش بطور کلی آموزش یک مرتبۀ دیگر از ابتدا ضبط شده است.
  • این آموزش، مثل دیگر آموزش های یوبرد، از بالاترین کیفیت محتوایی برخوردار است. هر آنچه که در سند MISRA C نسخۀ 2004 آمده است را تشریح کرده ایم.
  • باتوجه به دشواری درک بسیاری از قوانین این سند، مقدمات زیادی را در این سند ارائه کردیم که همۀ آشنایان با زبان C، بتوانند مفاهیم این آموزش را متوجه شوند.
  • تجربیات بسیاری از ما در استفاده از این استاندارد توسط ما و همچنین راهنمایی های ما در این آموزش ارائه شده است.
  • کیفیت بالای صوت و تصویر.

قانون 14.7 از MISRA C

تصویر 3 – قانون الزامی 14.7 از MISRA C

 

سرفصل های فیلم آموزش استاندارد MISRA C

در این فیلم آموزشی به مباحث زیر پرداخته ایم:

  • توضیحات پیش از ورود به سند MISRA C: در این بخش مقدمات لازم برای ورود به این سند که توسط ما جمع آوری شده اند، ارائه شده است.
  • مقدمه و پیشگفتار MISRA C (فصل 0): در این بخش که اولین بخش سند MISRA C است، به سلب مسئولیت و پیشگفتار آن می پردازیم.
  • فصل 1 – پیشینه: که شامل مباحث «استفاده از C در صنعت خودرو»، «عدم امنیت زبان و زبان C»، «استفاده از C برای سیستم های مرتبط با ایمنی»، «استانداردسازی C» و «مقدمه ای بر این نسخه» است.
  • فصل 2 – چشم انداز: که شامل دو قسمت «دلیل منطقی برای تولید MISRA C» و «اهداف MISRA C» است.
  • فصل 3 – محدوده: که مباحث ارائه شده در آن عبارتند از «مسائل مربوط به زبان های پایه»، «موضوعاتی که به آنها پرداخته نشده»، «قابل اعمال بودن»، «دانش پیش نیاز»، «موضوع C++» و «کدهایی که به صورت خودکار ساخته می شوند».
  • فصل 4 – استفاده از MISRA C: که شامل بخش های «زمینۀ مهندسی نرم افزار»، «زبان برنامه نویسی»، «تصویب زیرمجموعه»، «ادعای انطباق» و «بهبود مستمر» است.
  • فصل 5 – آشنایی با قوانین: که در این بخش مطالبی دربارۀ قوانین MISRA C وجود دارد. و شامل مباحث «دسته بندی قوانین»، «سازماندهی قوانین»، «افزونگی در قوانین»، «ارائۀ قوانین» و «Source reference» است.
  • فصل 6 – قوانین MISRA C: که در این بخش به آموزش قوانین MISRA C می پردازیم. آموزش دستورالعمل های MISRA C شامل 21 بخش است. که شامل موارد زیر است:
    • Environment– محیط کدنویسی
    • Language extensions– افزونه های زبان
    • Documentation– مستند سازی
    • Character sets– مجموعه کارکترها
    • Identifiers– شناسه ها
    • Types– انواع
    • Constants– ثابت ها
    • Declarations and definitions– اعلان ها و تعریف ها
    • Initialisation– مقدار دهی اولیه
    • Arithmetic type conversions– تبدیل نوع های محاسباتی
    • Pointer type conversions– تبدیل نوع های اشاره گر
    • Expressions– عبارات
    • Control statement expressions– عبارت های دستور کنترلری
    • Control flow– کنترل جریان
    • Switch statements– دستورهای switch
    • Functions- توابع
    • Pointers and arrays– اشاره گرها و آرایه ها
    • Structures and unions– استراکچرها و یونیون ها
    • Preprocessing directives– دستورهای پیش پردازنده
    • Standard libraries– کتابخانه های استاندارد
    • Run-time failures– خطا(خرابی)های زمان اجرا

قانون 12.1 از MISRA C

تصویر 4 – قانون الزامی 12.1 از MISRA C

 

مخاطبان و پیش نیازهای آموزش MISRA C یوبرد

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

امروزه بر روش های استاندارد برنامه نویسی تأکید بسیاری می شود. تکیه بر اصول و روش های استاندارد و پیروی از قواعد تعیین شدۀ استاندارد، موجب برنامه ای ایمن، قابل اطمینان و با حداقل خطای ممکن می شود. در جهان همیشه خودروسازان متولی استانداردها در زمینه های مختلف بوده اند. از آنجا که خودروسازی، جزء صنایع حساس و حیاتی است، استانداردهایی هم که برای آن وجود دارد، با حداکثر الزامات و محدودیت ها برای افزایش ایمنی و به حداقل رساندن خطای سیستم هاست. استاندارد MISRA C برای کمک به صنعت خودرو در زمینۀ ایجاد نرم افزار ایمن و قابل اعتماد است. می توان این استاندارد را برای سیستم های موجود در صنایع دیگر هم به کار گرفت. چرا که با این وصف، حداکثر قابلیت اطمینان و حداقل خطا را موجب می شود. امروزه این کار رواج پیدا کرده است. صنایع بسیاری از این استاندارد مهم استفاده می کنند. بنابراین می توان گفت که استفاده از قوانین و الزامات MISRA C برای همۀ امبدد سیستم ها با کدنویسی مبتنی بر زبان C ضروری است.

اهداف یوبرد از آموزش MISRA C

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

قانون 11.4 از MISRA C

تصویر 5 – قانون الزامی 11.4 از MISRA C

 

پیش نمایش 1 – بخشی از لزوم استفاده از MISRA C

 

پیش نمایش 2 – بخشی از معرفی سیستم های حیاتی

 

پیش نمایش 3 – بخشی از ادعای انطباق بر MISRA C

 

پیش نمایش 4 – بخشی از تبدیل انواع محاسباتی در MISRA C

آقای محمد جوادیان

دکتر جوادیان، استاد دانشگاه در  برخی دانشگاه های کشور از جمله دانشگاه صنعتی شریف، دانشگاه شهید شمسی پور و … هستند.

بخش پروتکل can از دوره arm را دیده ام. توضیحات پروتکل بسیار عالی بود. نکات گفته شده خیلی خوب بود،
از بخش تایمرها هم ویدیو را مشاهده کردم. یکی از موضوعاتی که برای من جذاب بود تسلط استاد بر رجیسترها بود، به هرحال بنده خودم گاهی تدریس میکنم، مطالب رجیسترها بسیار حوصله سربر و گاها پیچیده هستند، اما استاد اسدی بسیار روان و جذاب توضیح میدادند که اصلا حوصله سر نمیرفت، و برای بنده واقعا تحسین برانگیز بود.
دوره زبان c هم یا سرعت مرور کردم، مطالب خوب و کامل گفته شده است.
خیلی دوست دارم زمان داشته باشم و دوره MISRA C و سایر دوره های میکروکنترلری، SIM800 و آلتیوم و مونتاژ و … رو هم ببینم که متاسفانه وقت نشده است.
اما بنده چون مهندس اسدی را دوست دارم و قبول دارم و ارادت دارم، همیشه دوست داشته ام دوره های ایشان را داشته باشم تا زمانیکه نیاز داشته باشم یا وقت شود، مراجعه کنم.

آقای یاسر دلدار

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

آقای عبدالبری روان

فایل صوتی

آقای رضا عارفی

تبریک میگم فعالیت مجددتون
واقعا شیوه تدریس جناب اسدی رو دوست دارم شیوا روان و پر از نکته های صنعتی و عملی
دمتون گرم واقعا منتظرتون بودیم جاتون خیلی در آموزش خالی بود
با قدرت ادامه بدید. یا علی🌹

آقای داود ایزانلو

تا بهار 1402، آموزشها لحیم کاری و طراحی صنعتی مدارات مشترک میکروکنترلری را تهیه کرده اند.
سلام وقت بخیر مهندس اسدی عزیز. خواستم تشکر کن ازتون بابت آموزش هاتون
واقعا لذت بردم میدونسم خوبه از قبل ولی فک نمیکردم کیفیت آموزش در لین حد باشه
یه دنیا ممنون 🙏🏼🙏🏼🌹🌹

ناشناس

خواستم تشکر کنم ازتون. من تو شهری نزدیک مرز هستم. دسترسی به اموزش و ابزار تقریبا خیلی سخته.
با اموزشهای شما توی سایت، کمک های خیلی زیادی بهم شده. خواستم ازتون تشکر کنم.
سلامت و تندرست باشید.

آقای علیرضا سلطانی

آموزش میکروکنترلر stm32f1 شما خیلی عالیه
مثال های کاربردی عملی و زیبا در آموزشتون بکار بردید که من در هیچ آموزشی ندیدم و برنامه نویسی حرفه ای که در مثال ها میبینم لذت میبرم . خواستم تشکر کنم.
کاش زودتر تهیه کرده بودم این آموزشهای شمارو 🙏🙋‍♂️❤️
(آقای سلطانی پس از آموزش STM32، آموزشهای دیگر از جمله زبان C را نیز تهیه کرد.)

آقای محمد رضایی

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

محمد رضایی

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

برخی مخاطبین یوبرد

شرکت رستافن
شرکت آریان آسانسور
دانشگاه صنعت هواپیمایی کشوری
شرکت بهرام گستر الکترونیک
شرکت بهرام گستر الکترونیک
شرکت آذرلیوپاد
شرکت-فناوري-پردازش-نوين-اطلاعات-خوارزمي
شرکت آذرلیوپاد
شرکت آذرلیوپاد

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

آموزش خصوصی زبان C مبتنی بر استاندارد، فوت کوزه گری

دیگر آموزش های یوبرد

آموزش TFT LCD با TouchGFX و STM32 یوبرد

گرافیک کاربرپسند با میکروکنترلر ST

آموزش FreeRTOS یوبرد

زمان واقعی در میکروکنترلر و پردازنده های کوچک با FreeRTOS

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

شروع بازی ST

آموزش طراحی PCB و نویز یوبرد

تجسم دنیای الکترونیک

آموزش زبان C و MISRA-C یوبرد

گام نخست دنیای میکروکنترلر

آموزش لحیم کاری و IPC-A-610 یوبرد

ساخت دنیای الکترونیک

آموزش آردوینو یوبرد

جادۀ آسفالت میکروکنترلر

آموزش ماژول های SIM800 یوبرد

تلفن همراه صنعت

آموزش زبان ++C و ++MISRA-C یوبرد

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

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

شاهکار 8 بیتی Atmel

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

یادگار فیلیپس

آموزش های شاخص

سفارش پروژه میکروکنترلر یوبرد

زیرساخت مطمئن صنعت

دانلود

لطفا برای دریافت لینک دانلود اطلاعات خواسته شده را وارد نمایید
ضبط پیام صوتی

زمان هر پیام صوتی 4 دقیقه است