- صفحه اصلی /
- برنامه نویسی و IT /
- دوره Embedded C مقدماتی
دوره Embedded C مقدماتی
نگاهی کلی به دوره آموزشی Embedded C مقدماتی
مدت دوره | شهریه | پیش نیاز |
---|---|---|
28 ساعت | 3,100,000 تومان | ندارد |
آشنایی با دوره Embedded C مقدماتی
امروزه برنامهنویسی سیستمهای نهفته (ازجمله AVR,ARM,PIC,dsPIC)، SBCها (ازجمله BeagleBone و Raspberry pi) و انواع CPUها و همچنین تولید سیستمعاملهای جدید و نرمافزارهای کاربردی از طریق زبان برنامهنویسی C صورت میگیرد. کاربرد وسیع این زبان برنامهنویسی و مقبولیت آن نزد توسعهدهندههای سیستم نهفته (Embedded System developers)، ناشی از عوامل مختلفی همچون پشتیبانی از کلیه میکروکنترلرها و تراشههای با قابلیت برنامهریزی، قابلیت پیادهسازی سیستمهای بلادرنگ و Real Time، بازدهی بالا، دسترسی به سختافزار و حافظه، وجود استاندارد، برنامهنویسی بهصورت ماژولار، پشتیبانی از اشارهگرها، structureها و unionها و مواردی از این دست میباشد.
علاقمندان به یادگیری میکروکنترلرها و پردازندههای سیستمهای دیجیتال DSP میبایست از تسلط کافی در امر برنامهنویسی این سیستمها برخوردار باشند که در دوره برنامهنویسی زبان C ویژه سیستمهای نهفته مهارت لازم برای ورود به آن ایجاد میشود.
سرفصل آموزشی دوره Embedded C مقدماتی
• مقدمات زبان C :
معرفی انواع زبان های برنامه نویسی کاربردی سیستم های نهفته
دسترسی بیتی به رجیسترها (bit masking)
آشنایی با ساختار برنامه نویسی و مفاهیم اولیه
انواع داده ها در زبان برنامه نویسی C مانند signed ,unsigned ,int و...
معرفی متغیرها و ثابت ها و نحوه استفاده از آن ها در برنامه نویسی سیستم های نهفته
معرفی عملگرهای محاسباتی ، رابطه ای ، منطقی ، بیتی و نحوه استفاده از آن ها
معرفی تابع main و نحوه استفاده از آن در برنامه نویسی میکروکنترلر
به کارگیری دستور #include جهت اضافه کردن کتابخانه های استاندارد
استفاده از دستور پیش پردازنده #define
آشنایی با بهینه سازی الگوریتم ها
معرفی مفهوم blocking و non_blocking
• حلقه های تکرار و ساختارهای تصمیم گیری :
آشنایی با حلقه های تکرار do-while) while, (for, و دﺳﺗورات break وcontinue
آشنایی با کاربرد حلقه های تکرار تو در تو
آشنایی با ساختارهای تصمیم گیری( if , else if, switch) و نحوه به کارگیری آن ها در برنامه نویسی میکروکنترلر
• آرایه ها و رشته ها :
تعریف آرایه های تک بعدی و چند بعدی و کاربرد آن ها
آشنایی با نحوه مقداردهی به آرایه ها
آشنایی با رشته ها و مقدار دهی به آن ها
به کار گیری string ها در برنامه نویسی سیستم های نهفته
• توابع و برنامه نویسی ساخت یافته :
آشنایی با روش های تابع نویسی
معرفی انواع توابع از نظر ورودی و خروجی
تعریف متغیرهای محلی و عمومی
مدیریت استفاده از چند تابع در یک برنامه
طراحی برنامه های دارای منوی انتخابی با استفاده از توابع فرعی
• الگوریتم و حل مسئله :
آﺷﻧﺎﯾﯽ ﺑﺎ ﻣﻔﺎھﯾم ﭘﺎﯾه اﻟﮕورﯾﺗم ھﺎ و ﺣل ﻣﺳﺋﻠه
طراﺣﯽ و ﺗﺣﻠﯾل اﻟﮕورﯾﺗم ھﺎ ﺑرای ﺑﮭﯾﻧه ﺳﺎزی ﺑرﻧﺎﻣه ھﺎ
به کارگیری روشھﺎی ﺣل ﻣﺳﺋﻠه در ﭘروژه ھﺎی ﻣﯾﮑروﮐﻧﺗرﻟری
• برنامه نویسی میکروکنترلر AVR :
آشنایی کلی با میکروکنترلر AVR و عملکرد واحدهای آن
معرفی ساختار میکروکنترلر AVR
آشنایی با مفاهیم پالس ساعت ، ریست و شیوه های برنامه ریزی میکروکنترلر
معرفی رجیسترهای واحد I/O میکروکنترلر AVR
آموزش کار با کامپایلر Codevision
به کارگیری LED به عنوان نمایشگر در پروژه ها
آموزش مفاهیم pull up / pull down در سیستم های دیجیتال
نحوه خواندن کلید فشاری به عنوان ورودی توسط میکروکنترلر
معرفی توابع چاپ دیتا بر روی نمایشگر LCD کاراکتری
آشنایی با نرم افزار Proteus به عنوان شبیه ساز پروژه های embedded system
راه اندازی LED به عنوان نمایشگر در پروژه ها
پروژه ها و تمرین های دوره
- پیاده سازی انواع شمارنده ها (Up counter, Down counter, Ring counter, Johnson counter)
· ﻧﺣوه ﺑﮫ ﮐﺎرﮔﯾری ﮐﯾﭘد ﺗﻠﻔﻧﯽ در ﭘروژه ھﺎی ﻣﯾﮑروﮐﻧﺗرﻟری
· راه اﻧدازی ھﻣزﻣﺎن ﭼﻧد دﺳﺗﮕﺎه ﺑﺎ روش ) polling ﺳرﮐﺷﯽ(
· راه اﻧدازی button Push ﺑﮫ ﻋﻧوان ورودی ﺳﯾﺳﺗم ﺑﺎ روشھﺎی blocking و non-blocking و اﻟﮕورﯾﺗم ھﺎی ﺗﺷﺧﯾص
· راه اﻧدازی switch DIP ﺑﺎ اﺳﺗﻔﺎده از ﻣﯾﮑروﮐﻧﺗرﻟرAVR
· راه اﻧدازی ﻧﻣﺎﯾﺷﮕر LCD ﮐﺎراﮐﺗری ﺗوﺳط ﻣﯾﮑروﮐﻧﺗرﻟرAVR
· راه اﻧدازی ﻧﻣﺎﯾﺷﮕر ھﻔت ﻗﺳﻣﺗﯽ (7-segment) ﺗوﺳط ﻣﯾﮑروﮐﻧﺗرﻟر AVR ﺑﺎ روش ﻣﺎﻟﺗﯽﭘﻠﮑﺳﯾﻧﮓ و روشھﺎی non-blocking وblocking
· طراﺣﯽ ﻣﺑدل BCD ﺑﮫ -segment7
· طراﺣﯽ و ﭘﯾﺎدهﺳﺎزی ﻣﺎﺷﯾن ﺣﺳﺎب ﭼﮭﺎر ﻋﻣل اﺻﻠﯽ ﺑﺎ اﺳﺗﻔﺎده ازAVR
· ﮐﺎر ﺑﺎ ﻧرم اﻓزار Proteus ﺑﮫ ﻋﻧوان ﺷﺑﯾﮫﺳﺎز ﭘروژه ھﺎیsystem embedded
توصیه مدرس
مهندس محمدجعفر یادگاری
کارشناس سیستم های نهفته و مدرس دانشگاهمهندس حمید صالحی
کارشناس سیستم های نهفتهمهندس احمد محتشم متین
کارشناس سیستمهای نهفتهدانشجویان و علاقمندانی که تمایل دارند به حوزههای مختلف ازجمله برنامهنویسی تحت سیستم عامل و یا برنامهنویسی میکروکنترلرها و سایر ریزپردازندهها ورود کنند، میتوانند با یادگیری زبان C بهعنوان اولین قدم، پیمودن این مسیر جذاب را آغاز نمایند. یادگیری کلیه زبانهای برنامهنویسی، به ذهنی خلاق و تمرکز بالا در حین یادگیری نیاز دارد. در نتیجه، توصیه میشود برای یادگیری بهتر و مطلوبتر، با ذهنی آرام و آماده یادگیری در کلاس C حضور یابید. همچنین انجام تمرینهای متعددی که با هدف ایجاد تسلط بیشتر دانشجویان طراحی گردیده است میتواند موفقیت هرچه بیشتر شما را فراهم آورد.
آینده شغلی دوره Embedded C مقدماتی
برنامهنویسی C ویژه سیستمهای نهفته در بسیاری از زمینهها همچون حملونقل، تجهیزات پزشکی، سامانههای هوشمند، تجهیزات امنیتی، سیستمهای مخابراتی، دستگاههای بیسیم، لوازم خانگی، صنایع خودروسازی، صنایع نظامی و ... کاربرد دارد و به عبارت دیگر، میتوان بخش عظیمی از الکترونیک دیجیتال را وابسته به Embedded Systemها و برنامهنویسان آن دانست. با توجه به این موضوع بازار کار مناسبی، چه در کشور ایران و چه در کشورهای دارای صنعت الکترونیک دیجیتال، میتوان برای برنامهنویسان سیستم نهفته متصور شد. همچنین روزانه آگهیهای مختلفی برای استخدام مهندسان توانمند در امر طراحی، توسعه و پیادهسازی امبدد سیستمها شامل میکروکنترلرها، میکروپروسسورها، کامپیوترهای تکبردی و پردازندههای دیجیتال، در سایتها و روزنامههای منتشرکننده آگهیهای استخدامی درج میشود. بنابراین آموزش زبان C شروع بسیار مناسبی برای ورود به بازار کار سیستمهای نهفته برای شما خواهد بود.
روش برگزاری دوره Embedded C مقدماتی
کلاس برنامهنویسی C، محیطی پرنشاط، پویا و صمیمی است و برخلاف دورههای برنامهنویسی دانشگاهی که عمدتاً بهصورت تئوری برگزار میگردد. با انجام پروژههای متعدد در طول دوره، آموزش برنامهنویسی از صفر بهصورت کاملاً عملی و واقعی انجام میشود و دانشجویان در خلال انجام تمرینها و پروژهها با مفاهیم و تکنیکهای برنامهنویسی آشنا میشوند.
هدف دوره آموزشی برنامهنویسی امبدد سیستم مقدماتی ایجاد تسلط بر برنامهنویسی C و پیادهسازی الگوریتمها برای میکروکنترلرها است. این مهارت برای کلیه میکروکنترلرها ازجمله AVR, ARM, PIC, dsPIC عمومیت دارد و خاص یک میکرو نیست. اما برای تمرکز بیشتر و سهولت یادگیری میکروکنترلر AVR برای پیادهسازی تمرینها و کار عملی این دوره انتخاب شده است. برنامهنویسی در محیط نرمافزار Codevision انجام میشود و برای تست و کار عملی از محیط شبیهساز Proteus استفاده میشود.
توانایی دانشجو در پایان دوره Embedded C مقدماتی
شما پس از آموزش برنامهنویسی C در این دوره میتوانید:
درک مناسبی از الگورتیمهای برنامهنویسی و مفاهیم برنامهنویسی ویژه میکروکنترلرها داشته باشید.
انواع دادهها، نحوه تبدیل آنها به یکدیگر، آرایهها و رشتهها در زبان C را مورد استفاده قرار دهید.
با ساختارهای کنترلی برنامه مانند IF و Switch آشنا شده و جایگاه درست استفاده از هرکدام را درک کنید.
با انواع حلقههای تکرار for , while و do while و نحوه استفاده آن در سیستمهای نهفته آشنا شوید.
برنامهنویسی بر روی تراشههای برنامهپذیر ازجمله میکروکنترلرها را انجام دهید.
از کامپایلر Codevision برای محیط برنامهنویسی استفاده کند.
تجربه برنامهنویسی واحد I/O میکروکنترلر AVR را کسب نمایید. (در دوره میکروکنترلر AVR مقدماتی واحد I/O بهطور کامل مورد بررسی قرار خواهد گرفت.)
LCD کاراکتری، نمایشگر LED، کیپد ماتریسی، 7segment را فرامیگیرد.
سوالات متداول دانشجویان
برای یادگیری زبان C چه پیشنیازی لازم است؟
دوره برنامهنویسی C نیراسیستم ویژه افرادی طراحی شده که سطح خاصی در برنامهنویسی ندارند و یا درک عمیقی از این حوزه کسب نکردهاند و برای این دوره پیشنیازی لازم نیست.
آیا دوره زبان C هم بهصورت عملی برگزار میشود؟
بله، تمامی دورههای نیراسیستم صرفنظر از دورههای عملی و یا نرمافزاری بهصورت عملی تدریس و در طول دوره پروژهها و تمرینهای متعددی جهت پیادهسازی توسط دانشجویان انجام میشود. در این دوره تمامی مباحث پس از تدریس تئوری توسط مدرس، تحت قالب تمرینها و پروژههای متعدد بهصورت عملی در نرمافزارهای کاربردی طراحیشده با این منظور توسط دانشجویان کدنویسی میگردد.
آیا امکان ثبت نام بصورت اقساطی وجود دارد؟
بله، با استفاده از درگاه اسنپ پی می توانید دوره مورد نظر خود را در 4 قسط پرداخت کنید .
تفاوت این دوره با دورههای دانشگاهی چیست؟
در بسیاری از دانشگاهها در این واحد درسی اصول برنامهنویسی و طراحی الگوریتم تدریس نمیشود و همین امر موجب ایجاد مشکل برای یادگیری مناسب و عدم درک کامل مباحث و توانمندی ضعیف دانشجویان در برنامهنویسی میشود. در دوره زبان C نیراسیستم، علاوه بر آموزش طراحی الگوریتم، تلاش میشود با حل مثالهای متعدد و برنامهنویسی در محیط کامپیوتر، تسلط لازم برای برنامهنویسی به بهترین شکل ممکن ایجاد گردد.
آیا گذراندن این دوره برای شروع یادگیری AVR ضروری است؟
بله؛ برای یادگیری هر میکروکنترلری ازجمله میکروکنترلر AVR تسلط بر مباحث برنامهنویسی و مفاهیم آن بهصورت کامل ضروری است.
آیا در انتهای دوره برای شرکتکنندگان گواهینامه صادر میشود؟
درصورتیکه دانشجو در پایان دوره نمرهی لازم را کسب کند، موفق به دریافت گواهینامه خواهد شد. حد نصاب نمره 70 از 100 بوده و از مجموع نمرات فعالیتهای کلاسی، کوییزها، تمرینات و آزمون پایانی دانشجو محاسبه میشود.
آیا برای این دوره جزوه یا کتاب خاصی باید خریداری شود؟
در تمامی دورههای آموزشی کتابها، مراجع و فایلهای آموزشی مختلفی توسط اساتید معرفی میگردد.
نحوه برگزاری آزمون پایانی دوره به چه صورت است؟
مدت زمان مشخصی از جلسه پایانی هر دوره به برگزاری آزمون اختصاص مییابد. این آزمون کاملاً عملی بوده و سوال مطرحشده در قالب یک پروژهی ترکیبی ارائه میشود.
گالری تصاویر دوره
پاسخ به پرسش های شما
قوانین آموزشگاه arrow_backward
از قوانین آموزشگاه قبل از ثبت نام آگاه شوید
می خواهم ثبت نام کنمarrow_backward
با مشاهده تقویم آموزشی دوره Embedded C مقدماتی ثبت نام کنید
نظر دانشجویان نیراسیستم درباره دوره Embedded C مقدماتی
آقای سوری
من دوره c که شرکت کردم تصورم از دوره این نبود. فکر میکردم یه سری آموزشهای زبان c هست که خیلی از مراکز آموزش تدریس میکنند، ولی آموزشهای شما در دوره c رو میشه دوره میکروکنترلری در نظر گرفت بهخاطر اینکه واقعاً آموزشها کامل و همراه با شبیهسازی هست. به همین دلیل واقعاً من نسبت به این دوره راضی هستم. استاد هم کاملاً مسلط به آموزش بدون هیچ کموکاستی بودند. سپاسگزارم
احسان عطایی
از نظر من مهمترین مزیتی که شرکت در کلاس embedded c مقدماتی برای کسانی که میخواهند در آینده طراح سیستمهای نهفته بشن نسبت به خواندن منابع و کتابهای مرجع یادگیری زبان c داره، اینه که اولاً خیلی سریعتر و بهینهتر مباحث اصلی و مهم این زبان رو یاد میگیرن و وقتشون رو صرف خواندن یه کتاب قطور با جزییات و مباحث مفصل که شاید بعداً به کارشون هم نیاد نمیکنن. دوماً چون سرفصلهای این دوره با نگاه به حوزهی طراحی سیستمهای نهفته برنامهریزی شده، این دوره گذار از یادگیری زبان c تا یادگیری برنامهنویسی میکروکنترلرها رو برای دانشجویان سادهتر و دلچسبتر میکنه. سوماً استاد دوره با سابقه بالا در امر تدریس، تسلط کامل بر مباحث، فن بیان عالی و اخلاق خوب، نقش خیلی مهم و تأثیرگذاری در انتقال مفاهیم و بالا بردن انگیزه دانشجویان برای یادگیری بیشتر ایفا میکنند و همچنین تمرینات کلاسی و پروژههایی که در طول دوره به دانشجویان داده میشود کاملاً چالشبرانگیز هست و نقش بسیار مهمی رو در تثبیت این آموزشها در ذهن داره.
علی عبادی
برای اولین بار در کلاسهای embedded c مجموعه نیرا سیستم شرکت میکنم. کلاسها در اکثر موارد با حداکثر نظم برگزار میشه و از لحاظ نحوه تدریس و انتقال مفاهیم، شیوه مطلوب و قابل قبولی داره. و امیدوارم بهزودی کلاسها با ظرفیت بالاتری برگزار بشه. بهنوبه خودم از برگزارکننده کلاسها و اساتید تشکر میکنم.