
- صفحه اصلی /
- برنامه نویسی و IT /
- دوره Embedded C مقدماتی
دوره Embedded C مقدماتی
نگاهی کلی به دوره آموزشی Embedded C مقدماتی
مدت دوره | شهریه | پیش نیاز |
---|---|---|
28 ساعت | 2,110,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
- معرفی انواع زبانهای برنامهنویسی کاربردی سیستمهای نهفته
- آشنایی با ساختار برنامهنویسی و مفاهیم اولیه برنامهنویسی
- انواع دادهها در زبان برنامهنویسی C
- معرفی انواع متغیرها و ثابتها و نحوه بهکارگیری آن در برنامهنویسی امبدد سیستمها
- آشنایی با نحوه مقداردهی متغیرها
- معرفی عملگرهای محاسباتی، رابطهای، منطقی، بیتی و نحوه استفاده از آنها
- معرفی تابع main و نحوه استفاده از آن در برنامهنویسی میکروکنترلر
- بهکارگیری دستور #include جهت اضافه کردن کتابخانهها به برنامه
- استفاده از دستور پیشپردازنده #define
برنامهنویسی میکروکنترلر AVR
- آشنایی کلی با میکروکنترلر AVR و عملکرد واحدهای آن
- معرفی ساختار میکروکنترلر AVR
- آشنایی با مفاهیم پالس ساعت، ریست و شیوههای برنامهریزی میکرو
- معرفی رجیسترهای واحد I/O میکروکنترلر AVR
- آموزش کار با کامپایلر Codevision
- بهکارگیری LED بهعنوان نمایشگر در پروژهها
- آموزش مفاهیم pull up / pull down در سیستمهای دیجیتال
- نحوه خواندن کلید فشاری بهعنوان ورودی توسط میکروکنترلر
- معرفی توابع چاپ دیتا بر روی نمایشگر LCD کاراکتری
- آشنایی با بازر (buzzer) و راهاندازی آن بهصورت عملی
- آشنایی با نرمافزار Proteus بهعنوان شبیهساز پروژههای embedded system
حلقههای تکرار و ساختارهای تصمیمگیری
- آشنایی با حلقههای تکرار for(), while(), do … while()
- آشنایی با کاربرد حلقههای تکرار تو در تو
- آشنایی با ساختارهای تصمیمگیری if , else if, switch و نحوه بهکارگیری آن در برنامهنویسی میکروکنترلر
- اجرای انواع تمرینهای رقص نور بر روی LED
- نحوه بهکارگیری کیپد تلفنی در پروژههای میکروکنترلری
- طراحی و پیادهسازی انواع شمارندههای بالاشمار، پایینشمار، حلقوی، جانسون و ...
آرایهها و رشتهها
- تعریف آرایههای تکبعدی و چندبعدی کاربرد آنها
- آشنایی با نحوه مقداردهی به آرایه
- آشنایی با رشتهها و مقداردهی به آنها
- بهکارگیری stringها در برنامهنویسی سیستمهای نهفته
- نمایش کاراکترها و حروف بر روی LCD کاراکتری
- راهاندازی نمایشگر هفتقسمتی 7segment توسط میکروکنترلر AVR
توابع و برنامهنویسی ساختیافته
- آشنایی با روشهای تابعنویسی
- معرفی انواع توابع از نظر ورودی و خروجی
- تعریف متغیرهای محلی و عمومی
- مدیریت استفاده از چند تابع در یک برنامه
- طراحی برنامههای دارای منوی انتخابی با استفاده از توابع فرعی
- پیادهسازی توابع دارای مقدار برگشتی
پروژه ها و تمرین های دوره
- راهاندازی LED بهعنوان نمایشگر در پروژهها
- پیادهسازی انواع شمارندههای Up counter, Down counter, Ring counter, star و ...
- اجرای انواع تمرینهای رقص نور بر روی LED
- راهاندازی Push button بهعنوان ورودی سیستم
- راهاندازی کیپد ماتریسی در پروژههای میکروکنترلری
- راهاندازی نمایشگر LCD کاراکتری توسط میکروکنترلر AVR
- ایجاد منوی انتخابی چندصفحهای با استفاده از میکرو و نمایش روی LCD
- راهاندازی نمایشگر هفتقسمتی 7segment توسط میکروکنترلر AVR
- ایجاد منوی انتخابی چندصفحهای با استفاده از میکرو و نمایش روی 7Segment
- طراحی و پیادهسازی ماشینحساب چهار عمل اصلی با استفاده از AVR
- کار با نرمافزار Proteus بهعنوان شبیهساز پروژههای embedded system
توصیه مدرس

مهندس محمدجعفر یادگاری
کارشناس سیستم های نهفته و مدرس دانشگاه
مهندس حمید صالحی
کارشناس سیستم های نهفتهدانشجویان و علاقمندانی که تمایل دارند به حوزههای مختلف ازجمله برنامهنویسی تحت سیستم عامل و یا برنامهنویسی میکروکنترلرها و سایر ریزپردازندهها ورود کنند، میتوانند با یادگیری زبان 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 هم بهصورت عملی برگزار میشود؟
بله، تمامی دورههای نیراسیستم صرفنظر از دورههای عملی و یا نرمافزاری بهصورت عملی تدریس و در طول دوره پروژهها و تمرینهای متعددی جهت پیادهسازی توسط دانشجویان انجام میشود. در این دوره تمامی مباحث پس از تدریس تئوری توسط مدرس، تحت قالب تمرینها و پروژههای متعدد بهصورت عملی در نرمافزارهای کاربردی طراحیشده با این منظور توسط دانشجویان کدنویسی میگردد.
تفاوت این دوره با دورههای دانشگاهی چیست؟
در بسیاری از دانشگاهها در این واحد درسی اصول برنامهنویسی و طراحی الگوریتم تدریس نمیشود و همین امر موجب ایجاد مشکل برای یادگیری مناسب و عدم درک کامل مباحث و توانمندی ضعیف دانشجویان در برنامهنویسی میشود. در دوره زبان C نیراسیستم، علاوه بر آموزش طراحی الگوریتم، تلاش میشود با حل مثالهای متعدد و برنامهنویسی در محیط کامپیوتر، تسلط لازم برای برنامهنویسی به بهترین شکل ممکن ایجاد گردد.
آیا گذراندن این دوره برای شروع یادگیری AVR ضروری است؟
بله؛ برای یادگیری هر میکروکنترلری ازجمله میکروکنترلر AVR تسلط بر مباحث برنامهنویسی و مفاهیم آن بهصورت کامل ضروری است.
آیا در انتهای دوره برای شرکتکنندگان گواهینامه صادر میشود؟
درصورتیکه دانشجو در پایان دوره نمرهی لازم را کسب کند، موفق به دریافت گواهینامه خواهد شد. حد نصاب نمره 70 از 100 بوده و از مجموع نمرات فعالیتهای کلاسی، کوییزها، تمرینات و آزمون پایانی دانشجو محاسبه میشود.
آیا برای این دوره جزوه یا کتاب خاصی باید خریداری شود؟
در تمامی دورههای آموزشی کتابها، مراجع و فایلهای آموزشی مختلفی توسط اساتید معرفی میگردد.
نحوه برگزاری آزمون پایانی دوره به چه صورت است؟
مدت زمان مشخصی از جلسه پایانی هر دوره به برگزاری آزمون اختصاص مییابد. این آزمون کاملاً عملی بوده و سوال مطرحشده در قالب یک پروژهی ترکیبی ارائه میشود.
گالری تصاویر دوره
قوانین آموزشگاه arrow_backward
از قوانین آموزشگاه قبل از ثبت نام آگاه شوید
می خواهم ثبت نام کنمarrow_backward
با مشاهده تقویم آموزشی دوره Embedded C مقدماتی ثبت نام کنید
نظر دانشجویان نیراسیستم درباره دوره Embedded C مقدماتی
آقای سوری
من دوره c که شرکت کردم تصورم از دوره این نبود. فکر میکردم یه سری آموزشهای زبان c هست که خیلی از مراکز آموزش تدریس میکنند، ولی آموزشهای شما در دوره c رو میشه دوره میکروکنترلری در نظر گرفت بهخاطر اینکه واقعاً آموزشها کامل و همراه با شبیهسازی هست. به همین دلیل واقعاً من نسبت به این دوره راضی هستم. استاد هم کاملاً مسلط به آموزش بدون هیچ کموکاستی بودند. سپاسگزارم
احسان عطایی
از نظر من مهمترین مزیتی که شرکت در کلاس embedded c مقدماتی برای کسانی که میخواهند در آینده طراح سیستمهای نهفته بشن نسبت به خواندن منابع و کتابهای مرجع یادگیری زبان c داره، اینه که اولاً خیلی سریعتر و بهینهتر مباحث اصلی و مهم این زبان رو یاد میگیرن و وقتشون رو صرف خواندن یه کتاب قطور با جزییات و مباحث مفصل که شاید بعداً به کارشون هم نیاد نمیکنن. دوماً چون سرفصلهای این دوره با نگاه به حوزهی طراحی سیستمهای نهفته برنامهریزی شده، این دوره گذار از یادگیری زبان c تا یادگیری برنامهنویسی میکروکنترلرها رو برای دانشجویان سادهتر و دلچسبتر میکنه. سوماً استاد دوره با سابقه بالا در امر تدریس، تسلط کامل بر مباحث، فن بیان عالی و اخلاق خوب، نقش خیلی مهم و تأثیرگذاری در انتقال مفاهیم و بالا بردن انگیزه دانشجویان برای یادگیری بیشتر ایفا میکنند و همچنین تمرینات کلاسی و پروژههایی که در طول دوره به دانشجویان داده میشود کاملاً چالشبرانگیز هست و نقش بسیار مهمی رو در تثبیت این آموزشها در ذهن داره.
علی عبادی
برای اولین بار در کلاسهای embedded c مجموعه نیرا سیستم شرکت میکنم. کلاسها در اکثر موارد با حداکثر نظم برگزار میشه و از لحاظ نحوه تدریس و انتقال مفاهیم، شیوه مطلوب و قابل قبولی داره. و امیدوارم بهزودی کلاسها با ظرفیت بالاتری برگزار بشه. بهنوبه خودم از برگزارکننده کلاسها و اساتید تشکر میکنم.