ماشین حالت ابزاری برای مدلسازی رفتار سطح بالای سیستم است. در اکثریت قریب به اتفاق نرمافزارهای نهفته، رفتار سطح بالا با ماشین حالت مدلسازی میشود و استفاده از این مفهوم اجتنابناپذیر است.
پیادهسازی تمام قابلیتهای ماشین حالت، کاری پیچیده است. ابزارهای سادهای مانند if else یا switch case، علیرغم آنکه مفهوم اولیه ماشین حالت را محقق میکنند، ولی پیادهسازی مفاهیمی مانند Entry, Exit, Transition با این ابزارها کاری دشوار است. در مورد ماشین حالت چندسطحی که مفاهیم پیچیدهتری دارند، این روشها به هیچوجه جوابگو نیستند.
کتابخانه ماشین حالت ابزاری جامع برای پیادهسازی هر نوع ماشین حالتی است و تمام امکانات مورد نیاز در سیستمهای نهفته را فراهم میکند.
ویژگیهای کلیدی
- نوشته شده به زبان C (قابل استفاده در پروژه های C/C++)
- مستقل از نوع پردازشگر و IDE مورد استفاده
- بدون وابستگی نرمافزاری
- قابلیت پیادهسازی ماشین حالت تکسطحی (FSM) و چندسطحی (HSM)
- قابلیت تعریف توابع Entry, Exit و Do برای هر حالت
- قابلیت تعریف توابع Event, Guard و Action برای هر انتقال
- قابلیت تزریق رویداد و جلوگیری از سرایت رویداد در سطوح مختلف
- قابلیت فعال/غیرفعالسازی هر یک از حالتها و انتقالها
- پشتیبانی از تخصیص حافظه استاتیک و دینامیک
- مطابق با استاندارد MISRA-C
- تستشده با بیش از ۱۳۰ سناریو (با استفاده از کتابخانه یونیتی)
- قابلیت اطمینان بالا
برای اطلاع از نحوه دسترسی به کتابخانه، با شرکت تماس بگیرید.