01-23-2024 12:19 PM
HI
I am using BMA400 sensor. I want to interface it with PIC18F97J60 controller using I2C communication. Can you explain me how to initiliaze the BMA400 sensor because it has many registers. What all the registers should I used to initialize the BMA400 sensor and also I need calculations to measure X,Y and Z axis.
In hardware part how should i connect the BMA400 sensor to the controller? I have EVBBMA400 board.
Can you give me the example code?
Thank you.
01-23-2024 02:47 PM - edited 01-23-2024 03:13 PM
Hi Roshan1512,
You can refer to schematic in BMA400 data sheet https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bma400-ds000.pdf
And refer to the official BMA400 software https://github.com/boschsensortec/BMA400-API
01-24-2024 01:07 PM
Hi,
Thank you for your reply.
I have many doubts. In my BMA400 sensor board I have pins called SDI and SDO , there is no specific SDA pin. Now, In my PIC18f97j60 controller I have SDA pin,to which pin I should connect . whether I should connect to SDI or SDO? In I2C mode, should I want to hardwired the CS pin? Can you give me pin description.
In code, Can you explain step by step process. Mainly I need sensor initilization, What are the registers to initiliaze? It has lot of registers.
I have already worked in sensor WSEN-ITDS 3 axis accelerometer sensor.
void ACC_Sensor_Init(void)
{
WriteI2C_sensor(ITDS_CTRL_1_REG,0x00);
WriteI2C_sensor(ITDS_CTRL_1_REG,0x66);
WriteI2C_sensor(ITDS_CTRL_2_REG,0x0C);
WriteI2C_sensor(ITDS_CTRL_6_REG,0x30);
}
It has initialized like this and I am getting the datas properly.
Like this can you give me what to initialize for BMA400 Sensor? Can you give me calculation to measure X,Y,Z axis?
03-08-2024 08:43 AM
Hi Roshan1512,
The SPI and I2C pins of BMA400 are multiplexed. As shown in the schematic in the data sheet, the SDA of I2C should be connected to the SDI pin of BMA400. In I2C mode, the CS pin of BMA400 should be connected to VDDIO.
If you don't know how to operate BMA400 registers, we recommend using BMA400's sensor API&example directly, as it has encapsulated the process of accessing registers into an API, and you only need to call the API to access BMA400 registers.