من یه نکته جالب توی این مقاله دیدم که گفتم شاید برای شما هم سؤالبرانگیز یا جذاب باشه.
موضوعش Super Loop در میکروکنترلرهای Bare Metal مثل STM32 هست.
این نوع میکروکنترلرها معمولاً خیلی کممصرف، با حافظه و توان سختافزاری محدود و در عوض ارزان و ساده طراحی میشن. و اغلب با زبان سی هم نوشته میشن . هدفشون اجرای چند تسک مشخص و تکراریه، مثل اینکه اگه دما از یه حدی بالاتر رفت، یه عمل خاص انجام بشه.
در برنامهنویسی Bare Metal، خبری از سیستمعامل یا Scheduler نیست. همهچیز مستقیم روی سختافزار اجرا میشه.
به همین خاطر، معمولاً یه ساختار تکرارشوندهی مرکزی داریم به اسم Super Loop. این حلقه وظیفهی اجرای مداوم کد اصلی رو بر عهده داره.
بهصورت کلی ساختارش این شکلیه:
while (1) {
// Your main code here
}
تمام کارهایی که میخوایم به شکل پیوسته انجام بشن، داخل این حلقه نوشته میشن.
مثلاً خوندن داده از سنسور، بررسی شرطها یا کنترل خروجیها.
در واقع Super Loop مثل قلب برنامهی Bare Metal عمل میکنه؛ همیشه در حال تپیدنه و هرگز متوقف نمیشه، مگر اینکه سیستم خاموش بشه یا وارد حالت Sleep یا Low Power بشه.
@AlgooForge
Post #796
84
Sisoog مرجع متن باز الکترونیک-سیسوگ 📌امبدد لینوکس با ArmSom 👈#سیسوگ 🖋 نویسنده: #smem 📍این مقاله درباره لینوکس نهفته (Embedded Linux) است و توضیح میدهد چطور از دل سیستمهای سادهی مبتنی بر میکروکنترلر، نیاز به سیستمعاملهای قویتر برای دستگاههای هوشمند شکل گرفت. مزایای اصلی آن مانند متنباز…
- 👍 2