DPS310 is a fast sensor with typical measurement time of 27.6 ms for standard mode, down to 3.6 ms in low precision mode.
The digital measurements are in 24-bit resolution. Up to 32 results can be stored in a FIFO buffer.
Pressure 3 click has both I2C and SPI outputs. The four interface configuration buttons are soldered to mikroBUS™ I2C pins by default. The click uses a 3.3V power supply.
Type | Altitude,Pressure |
Applications | Weather stations, elevetion gain, GPS supplementation |
On-board modules | Infineon DPS310 digital barometric pressure sensor |
Key Features | Measurement range: 300-1200 hPa w/ relative accuracy of 0.06 hPa |
Key Benefits | FIFO buffer, Fast operation (22.76 ms) |
Interface | GPIO,I2C,SPI |
Input Voltage | 3.3V |
Compatibility | mikroBUS |
Click board size | S (28.6 x 25.4 mm) |
Pressure 3 click carries an Infineon DPS310 digital barometric pressure sensor.
Pressure 3 click has an operating range from 300 to 1200 hPa with a relative accuracy of 0.06 hPa and absolute accuracy of 1 hPa. DPS310 is a fast sensor with typical measurement time of 27.6 ms for standard mode, down to 3.6 ms in low precision mode.
DPS310 integrates a FIFO (First In First Out) buffer that can store the last 32 measurumenets. Using the buffer saves power because the target MCU doesn't have to constantly poll for resources.
The sensor is callibrated. Callibration coefficients are used to compensate the measurement results. The data sheet contains detailed instructions on how to convert compensated results to pressure and temperature values.
Pressure 3 click has both I2C and SPI outputs. The four interface configuration buttons are soldered to mikroBUS™ I2C pins by default. Additionally, there is an Interrupt pin that can be triggered whenever a new measurement is available or if a FIFO buffer is full.
This snippet initializes all necessary pins and functions for using Pressure 3 Click, and performs a test by writing test values to the click, and then reading them back to the user through UART communication.
1 void main() { 2 3 Display_Init(); 4 I2C1_Init_Advanced(400000, &_GPIO_MODULE_I2C1_PB67); 5 delay_ms(300); 6 Pressure_3_hal_init(0x76, MODE_I2C); 7 8 Set_Status(0x07); 9 10 while (1) 11 { 12 pressure3_calculate_coefficients(); 13 calculate_temperature_pressure(); 14 15 FloatToStr(Pressure, txt); 16 FloatToStr(Temperature, txt1); 17 TFT_Set_Font(TFT_defaultFont, CL_WHITE, FO_HORIZONTAL); 18 TFT_Write_Text("Pressure:", 30, 70); 19 TFT_Write_Text(txt, 100, 70); 20 TFT_Write_Text("Temperature:", 30, 100); 21 TFT_Write_Text(txt1, 120, 100); 22 Delay_ms(500); 23 TFT_Set_Font(TFT_defaultFont, CL_TEAL, FO_HORIZONTAL); 24 25 TFT_Write_Text("Pressure:", 30, 70); 26 TFT_Write_Text(txt, 100, 70); 27 TFT_Write_Text("Temperature:", 30, 100); 28 TFT_Write_Text(txt1, 120, 100); 29 } 30 }
Code examples that demonstrate the usage of Pressure 3 click with MikroElektronika hardware, written for mikroC for ARM, AVR, dsPIC, FT90x, PIC and PIC32 are available on Libstock.