کتابخانه CMSIS بخش دوم

سلام دوباره

در ادامه بخش قبلیکتابخانه CMSIS بخش اولکه توضیح مختصری رو در مورد کتابخانه CMSIS بود صحبت کردم در ادامه این قسمت میخوام توضیحی در مورد بعضی قوانینی که در برنامه نویسی این کتابخانه ها استفاده شده ارائه بدم

کتابخانه CMSIS

داده ها

برای جلوگیری از هر گونه ابهام در کامپایلر , CMSIS از  نوع داده هایی استفاده می کند که در کتابخانه stdint.h در ANSI C مشخص شده اند . مشخص کردن نوع داده  (typedefs) اطمینان می دهد که اندازه داده در همه ی کامپایلر ها یکسان باشد .

چند نمونه از داده ها به صورت زیر هستند

1- int8_t یا همان Signed char که ۸ بیت را در حافظه اشغال می کند

۲- uint8_t یا همان Unsigned char که ۸ بیت را در حافظه اشغال می کند و برای ذخیره اعداد مثبت است

۳- int16_t یا همان signed int که ۳۲ بیتی است

۴- uint16_t یا همان Unsigned int که ۳۲ بیتی است و برای ذخیره اعداد مثبت است

** برای مشخص کردن رجیستر ها از unsigned استفاده می شود

 

نحوه دسترسی به داده ها

CMSIS همچنین نحوه دسترسی به رجیسترهای واحد ها را نیز مشخص می کند که عبارتند از :

۱- I__ برای دسترسی به رجیستر و قسمت های حافظه فقط خواندنی است

مطلب پیشنهادی:  معرفی معماری RISC در پردازنده های ARM

۲ـ O__ برای دسترسی به رجیستر ها و قسمت هایی است که فقط میتواند در آن نوشته شود

۳- IO__ برای دسترسی به رجیستر ها و قسمت هایی است که هم می تواند در آن نوشته شود و هم می تواند از آن خوانده شود

این بخش به پایان رسید .. این بخش پیش مقدمه ای بود برای بخش جالب سوم که توضیح میدم چه جوری رجیستر ها و بخش های مختلف در این کتابخانه مشخص شده اند و شاید خیلی از ابهام ها بر طرف بشوند

 

درباره ی علیرضا صادقی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *