سلام.
این برد یه شتاب سنج و ژایروسکوپ 3 محوره هست که به خاطر راه اندازی راحت تر و دقت و ... برای من از mpu ها بهتر جواب داد.آفتاب این سنسور و به قسمت شتاب و زاویه هم اضافه کنید به نظرم.
این ماژول اونجور که دیدم در اصل مخصوص تلفن هوشمند هست و چیزهایی مثل لمس تکی یا دوبار لمس صفحه و ... رو تشخیص می ده.
این کتابخونه این برد هست که برای میکرو stm32f103 تابستون نوشتم.با یکم تغییر رو بقیه میکروها هم باید جواب بده.اگه مشکلی داشت و درست نوشته نشده بود شرمنده دیگه.
چیزهایی که باید تغییر کنه تابع delay و توابع مربوط به spi و پایه NSS که تو کد CSB هست و include ها هست که رو هر میکرو فرق می کنه.
تنظیمات مربوط به ژایرو و شتاب سنج هم جلوی defineها هست معلومه.هرجوری نیازه همون رو بذارید.
کد زیر رو هم استفاده کنید برای خوندن از سنسور. صبر می کنه تا رجیستر مربوط به آماده بودن مقادیر ژایرو و شتاب سنج یک بشه بعد مقادیرو بخونه:
{}(while((SPI1_GetData(0x1B) & 0xC0) != 0xC0
فایل BMI160_driver-master هم کتابخانه خود شرکت بوش هست.