MPX4250A series (MPX4250A, MPXA4250A)

MPX4250A series (MPX4250A, MPXA4250A) is a pressure sensor IC (20 to 250 kPa) made by NXP Semiconductors. This posting will provide the OSS-ECAL(Open Source Software for Electronic Components Abstraction Layer) for MPX4250A series .
MCU interface : ADC

CAUTION:Please be sure to refer to the latest version of the Datasheet prior to actual design.

MPX4250A series (MPX4250A, MPXA4250A)

General description

The MPX4250A/MPXA4250A Manifold Absolute Pressure (MAP) sensor for engine control is designed to sense absolute air pressure within the intake manifold. This measurement can be used to compute the amount of fuel required for each cylinder. The MPX4250A/MPXA4250A piezoresistive transducer is a state-of-the-art monolithic silicon pressure sensor designed for a wide range of applications, particularly those employing a microcontroller or microprocessor with A/D inputs. This transducer combines advanced micromachining techniques, thin-film metallization, and bipolar processing to provide an accurate, high-level analog output signal that is proportional to the applied pressure. The small form factor and high reliability of on-chip integration make the NXP sensor a logical and economical choice for the automotive system engineer.

Feature
  • 1.5 % maximum error over 0 °C to 85 °C
  • Specifically designed for intake manifold absolute pressure sensing in engine control systems
  • Patented silicon shear stress strain gauge
  • Temperature compensated over –40 °C to +125 °C
  • Offers reduction in weight and volume compared to existing hybrid modules
  • Durable epoxy unibody element or thermoplastic small outline, surface mount package
  • Ideal for non-automotive applications
  • Available in three small outline packages and two unibody packages
Application
  • Turbo boost engine control
  • Ideally suited for microprocessor or microcontroller-based systems

OSS-ECAL specification

API Function

etSTS oMPX4250A( etCMD cmd, float32* rlt )

Return value
Parameter IN
Parameter OUT

etSTS
etCMD cmd
float32* rlt

OSS-ECAL status code
OSS-ECAL command code
Pressure 20 to 250 [kPa]

etCMD
eCMD_START


Feature :
Command to start AD conversion.

Process :
1. AD conversion start.

Command API function :
etSTS oMPX4250A_START( void )

Return value :
eSTS_FIN
eSTS_ERR_HAL_ADC
eSTS_ERR_COMMAND_CODE
eSTS_ERR_OTHERS_RUN
eSTS_ERR_ADC_OBJECT

NOTE :
Arduino, Mbeb, ModusToolbox not supported.

eCMD_READ

Feature :
Command that reads the AD conversion value, converts the AD conversion value to a characteristic Pressure, and stores the Pressure in rlt.

Process :
1. Read AD conversion value.
2. Convert AD conversion value to Pressure.
Voltage value = (AD conversion value × VDD) / (2AD bit )
Pressure = ((voltage value – voltage offset value) / gain) + Pressure offset value (Min, Max Limit)
3. Store Pressure to rlt.

Command API function :
etSTS oMPX4250A_READ( float32* rlt )

Return value :
eSTS_FIN
eSTS_ERR_MIN
eSTS_ERR_MAX
eSTS_ERR_HAL_ADC
eSTS_ERR_COMMAND_CODE
eSTS_ERR_OTHERS_RUN
eSTS_ERR_ADC_OBJECT

NOTE :
Please execute this API function after starting AD conversion.
Arduino, Mbeb, ModusToolbox not supported.

eCMD_START_READ

Feature :
Command that starts AD conversion, waits for AD conversion to finish, reads out the AD conversion value, converts the AD conversion value to a characteristic Pressure, and stores the Pressure in rlt.

Process :
1. Read AD conversion value.
2. Wait until AD conversion is completed.
3. Read AD conversion value.
4. Convert AD conversion value to Pressure.
Voltage value = (AD conversion value × VDD) / (2AD bit )
Pressure = ((voltage value – voltage offset value) / gain) + Pressure offset value (Min, Max Limit)
5. Store Pressure to rlt.

Command API function :
etSTS oMPX4250A_START_READ( float32* rlt )

Return value :
eSTS_FIN
eSTS_ERR_MIN
eSTS_ERR_MAX
eSTS_ERR_HAL_ADC
eSTS_ERR_COMMAND_CODE
eSTS_ERR_OTHERS_RUN
eSTS_ERR_ADC_OBJECT

NOTE :

Files
Folder*Filesummary
MPX4250A_HALNAME/samplesample.c (.cpp)Sample Application Program
sample.hSample Application Header
MPX4250A_HALNAMEoMPX4250A.c (.cpp)OSS-ECAL Program for MPX4250A series
oMPX4250A.hOSS-ECAL Header for MPX4250A series
oss_ecal.hOSS-ECAL Common Header (Ver 01.00.00 or later)
user_setting.c (.cpp)Const and Table of User setting
user_setting.hHeader of User setting
readme.mdReadme
OSS-ECAL Terms of Use.txtOSS-ECAL Terms of Use

* For HALNAME, please refer to HAL Support.

HAL Support List
MCU/Board
manufacturer
HALMCU*Development environment*HALNAME
ArduinoArduino 1.8.6ATmega2560
ATmega328P
Mega 2560 Rev3
Arduino Pro Mini 3.3V
ARDUINO
ARMMbed 6.17.0STM32F401RETxSTM32 Nucleo-64 boardsMBED
InfineonModusToolbox HAL Cat1 2.4.3CYBLE-416045-02CY8CPROTO-063-BLE PSoC 6 BLE Prototyping KitModusToolbox
NXPMCUXpresso SDK
iMXRT1051B_1052B
ksdk2_0
CYBLE-416045-02IMXRT1050-EVKBiMXRT1051B1052B
RenesasSSP 2.4.0R7FS7G27H3A01CFCS7G2 SKSSP
STMSTM32Cube FW_F4 V1.27.1STM32F401RETxSTM32 Nucleo-64 boardsSTM32F4
NXPAUTOSAR (MCAL)MPC574XG-100DSMPC574XG-MB( Motherboard)
MPC574XG-100DS(Daughter boards)
MCAL

* MCU and development environment at the time of development. Even if the same HAL is used, different MCUs and development environments may not work together.

OSS-ECAL Download

Please login before downloading. To register as a new user, please click here.

“ABC.zip was blocked because this type of file can harm your device.” in Microsoft Edge.

If you are unable to download the File, please contact us and let us know the model number and HAL type. We will send you the file as an email attachment.

Built-in How to

How to incorporate OSS-ECAL into user programs

How to incorporate multiple OSS-ECALs in a user program (same MCU function)

How to incorporate multiple OSS-ECALs in a user program (different MCU function)

How to incorporate multiple identical electronic components into a user program

How to reduce the impact on user programs by replacing electronic components

OSS-ECAL English
error: Content is protected !!