BHI160b driver porting guide

OP #6324007
Lesenswert?

Guten Morgen Leute!

Ich habe mir das BHI160b Shuttle Board bestellt um die Lagedaten 
auszulesen. Den Treiber der von Bosch angeboten wird gibt es 
https://github.com/BoschSensortec/BHy1_driver_and_MCU_solution . Ich bin 
nun dabei den Treiber auf meinen STM32L053R8 anzupassen. Hierfür gibt es 
einen MCU driver Porting guide, der Schritt für Schritt erklärt was 
alles angepasst werden muss um den Sensor zu betreiben. Zu beginn habe 
ich  folgende Zeilen aus dem File bhy_support.c entfernt.
1
#include "FreeRTOS.h"
2
#include "task.h"
3
extern int8_t sensor_i2c_write(uint8_t addr, uint8_t reg, uint8_t *p_buf, uint16_t size);
4
extern int8_t sensor_i2c_read(uint8_t addr, uint8_t reg, uint8_t *p_buf, uint16_t size);
5
extern void trace_log(const char *fmt, ...);

Diese sind ATMEL spezifische Befehle die für mit meinem µC nicht 
kompatibel sind. Desweiteren wird im porting guide noch erwähnt im File 
bhy_support.h die Zeile
1
twi.h
 zu entfernen da diese library auch ATMEL spezifisch ist.
Nach einem Rebuild werden folgende Fehler angezeigt:
1
..\Drivers\BHI160b_driver\inc\bhy_uc_driver_types.h(252): error: #20: identifier "uint8_t" is undefined           uint8_t sensor_id;

Diese Fehlermeldung wird im porting guide erwähnt und gibt als Lösung an 
im File bhy.h die folgenden fixed-width types zu definieren:
1
s8, s16, s32, u8, u16, u32
Ich weiß nur nicht wie ich die nun definieren soll, in diesem File gibt 
es schon definierte Datentypen nur weiß ich nicht mit welchem #define 
die richtigen aktivieren kann...

Zusätzlich kommt noch die I2C Verbindung, die ich auf dem STM32 mit der 
HAL library umsetzten möchte. Verlangt wird das im File bhy_support.c 
die Funktionen sensor_i2c_write() und sensor_i2c_read() erstellt werden. 
Der porting guide empfiehlt, dass die Reihenfolge der Parameter und der 
Rückgabewert die gleichen sind, was mir auch als sinnvoll erscheint. 
Gibt es da schon eine fertige Funktion in HAL die mir diese zwei 
Funktionen ausführt? Wie gehe ich am besten Schritt für Schritt vor um 
diese Verbindung zum Sensor herzustellen?

Vielen dank schon im vorraus für eure Ratschläge!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren