🔔 با توجه به بهبود نسبی اینترنت، آمادهسازی دورهها آغاز شده است. به دلیل تداوم برخی اختلالات، بارگذاری دورهها ممکن است با کمی تأخیر انجام شود. مدت اشتراکهای تهیهشده محفوظ است.
لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش سیستمهای توکار و توسعه سیستم عامل
- آخرین آپدیت
دانلود Embedded Systems and Operating System Development
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
تبدیل به متخصص سیستمهای تعبیهشده: دورهی جامع توسعهی سیستمعامل و طراحی PCB
آیا میخواهید یک متخصص در زمینهی سیستمهای تعبیهشده شوید؟ در این دوره، شما با توسعهی یک سیستمعامل (OS) اختصاصی با استفاده از زبانهای C و Assembly، و طراحی PCB (برد مدار چاپی) آشنا خواهید شد.
آنچه در این دوره خواهید آموخت:
ساخت سیستمهای تعبیهشده از پایه: یاد بگیرید چگونه یک سیستم تعبیهشده را از صفر تا صد بسازید. این دوره بینش عمیقی در مورد پلتفرم هدف ارائه میدهد (اختیاری: استفاده از شبیهساز رایگان یا کیت استارتر).
برنامهنویسی میکروکنترلر از ابتدا: با تنظیم سیمکشی، کلاک، اتصال برنامهنویس، و فلش کردن برنامههای باینری به تراشه آشنا شوید.
درک عمیق سیستمعاملها: بفهمید یک سیستمعامل چیست، چه زمانی به آن نیاز دارید و چگونه در پلتفرمهای تعبیهشده کار میکند.
آشنایی با مفاهیم کلیدی OS: با هستهها (Kernels)، چندوظیفگی (Multitasking)، تعویض زمینه (Context Switching)، زمانبندی (Scheduling)، بخشهای بحرانی (Critical Sections)، و همگامسازی وظایف (Task Synchronization) از دیدگاه عملی آشنا شوید.
آشنایی با معماری CPU: معماریهای CPU را به طور کلی درک کنید و نحوه انتخاب یک CPU هدف را بیاموزید. درک عمیق از جزئیات معماری MIPS32، مانند رجیسترها و چیدمان حافظه.
برنامهنویسی پیشرفته برای میکروکنترلر PIC32 (MIPS32): یاد بگیرید چگونه برنامههای پیشرفتهای را برای میکروکنترلر PIC32 توسعه دهید.
توسعه بستههای پشتیبانی از برد (BSP): برای یک پلتفرم هدف، بستههای پشتیبانی از برد (BSP) را توسعه دهید.
ارتباطات دادهها: درک عمیق و عملی از ارتباط دادهها از طریق باسهای SPI و I2C، و همچنین ارتباط سریال از طریق ماژولهای UART (شامل USB-to-Serial).
توسعه کرنل پیشگیرانه و مشارکتی: یاد بگیرید چگونه یک کرنل پیشگیرانه و مشارکتی را بر اساس کد Assembly مخصوص CPU برای تعویض زمینه وظیفه توسعه دهید.
مدیریت زمان، وظایف و حافظه: یاد بگیرید چگونه سرویسهای داخلی کارآمدی را برای مدیریت زمان، وظایف و حافظه ارائه دهید.
ارتباطات بین فرآیندی (IPC): یاد بگیرید چگونه ارتباطات بین فرآیندی (IPC) با استفاده از Mailbox و صف پیامها ایجاد کنید.
محدودیتهای زمان واقعی: درک عمیق و پیادهسازی محدودیتهای زمان واقعی برای تبدیل شدن سیستمعامل به یک RTOS (سیستمعامل زمان واقعی).
مشکل معکوسسازی اولویت: درک و پیادهسازی اقدامات متقابل برای مشکل معکوسسازی اولویت.
توسعهی درایورهای دستگاه: توسعهی گام به گام درایورها برای دستگاههای جانبی پلتفرم هدف، مانند نمایشگر و کارت MicroSD.
واسطهی کاربردی به OS: واسطهکردن برنامههای کاربردی به سیستمعامل.
Bootloader و تصویر باینری: یاد بگیرید چگونه یک تصویر باینری را در زمان اجرا به Program Flash پلتفرم هدف بنویسید و یک Bootloader USB/UART ایجاد کنید.
Porting سیستمعامل: یاد بگیرید چگونه سیستمعامل را Porting کنید و آن را بر روی معماریهای مختلف CPU قابل اجرا کنید.
(اختیاری) طراحی PCB: درک شماتیک الکتریکی و طراحی PCB پلتفرم هدف.
پیشنیازها:
مهارتهای برنامهنویسی C پایه توصیه میشود، اما الزامی نیست. پیادهسازی کد به صورت عملی انجام میشود و توضیحات به صورت لحظهای ارائه میگردد. هیچ دانش قبلی خاصی مورد نیاز نیست. اگر سوالی دارید، کافی است یک پیام برای من ارسال کنید؛ به شما پاسخ خواهم داد.
در این دوره، شما یاد خواهید گرفت که چگونه یک سیستمعامل تعبیهشده را از صفر تا صد بسازید.
شما گام به گام در ایجاد هر ماژول نرمافزاری فنی تشکیلدهندهی یک سیستمعامل تعبیهشده، و همچنین در توسعهی دستگاه هدف خودتان (اختیاری: میتوانید از یک شبیهساز رایگان یا یک کیت استارتر آماده استفاده کنید) از ابتدا با قطعات الکترونیکی اساسی و یک پردازنده استاندارد صنعتی، راهنمایی خواهید شد.
شما یاد خواهید گرفت که چگونه درایورهای دستگاه را گام به گام ایجاد کنید برای اجزای سختافزاری واقعی مانند نمایشگرها، حافظه SD card، Wi-Fi، واحدهای اندازهگیری اینرسی (IMU، به عنوان مثال شتابسنج و ژیروسکوپ)، ارتباط USB، جوی استیکهای آنالوگ، ماژولهای دوربین حرارتی و موارد دیگر.
در پایان این دوره، شما در برنامهنویسی سطح سیستم در زبانهای اسمبلی و C، و همچنین فرآیندهای فنی حاکم بر تعامل بین CPU و حافظه تسلط خواهید یافت. به لطف تجربههای عملی و نمایشهای کاربردی متعدد، شما توانایی به دست آوردن کنترل کامل بر روی دستگاه را با دستکاری ثبتکنندههای CPU، پشته، اشارهگر دستورالعمل، آدرسهای بازگشت و موارد دیگر توسعه خواهید داد. در پایان بخش توسعه نرمافزار، شما یاد خواهید گرفت که چگونه یک porting را به معماری دیگری مانند x86 ایجاد کنید.
اگرچه بخش توسعه سختافزار اختیاری است، اما اگر به یک آزمایشگاه الکترونیک دسترسی دارید، شما همچنین توانایی نمونهسازی مدار خود، طراحی و مونتاژ PCB هدف خود را توسعه خواهید داد.
سرفصل ها و درس ها
Set, Ready, Go!-آماده، حرکت!
Set, Ready, Go!
Course Presentation-معرفی دوره
Course Presentation
نمایش نظرات