Interfacing MPXV5100 pressure sensor to Atmega8
The MPX5100 series piezoresistive transducer is a state-of-the-art monolithic silicon pressure sensor designed for a wide range of applications, but particularly it is convenient to interface to microcontroller or microprocessor with A/D inputs. This is thin-film metallization, and bipolar processing to provide an accurate, high level analog output signal that is proportional to the applied pressure. More details can be found here MPXV5100

This sensor measures differential pressure comparing to atmospheric so when there is no pressure applied it shows 0kPa;

I was converting ADC value to pressure using this formula:
Pressure((((adc+0.3)/255)-0.04)/0.009); I didn’t make too much testing to tune it, I just calibrated it to zero by adding to ADC 0.3 value.
Here I will make example interfacing it to atmega8. Code is written in C using WINAVR toolkit and AVRLIB library. As you will see coding with AVLIB is very simple, just few lines, but compiled code is not very effective and takes lots of memory.

And here what results did I get:



Testing my lungs by blowing air to the straw. You can see 10 kPa.
Here I added archived demo WINAVR project. You can download and test it by your own.
Have fun.MPXV5100 pressure sensor to Atmega8
Blogsphere: TechnoratiFeedsterBloglines
Bookmark: Del.icio.usSpurlFurlSimpyBlinkDigg
RSS feed for comments on this post | TrackBack URI for this post
New on WinAVR Tutorial
Running TX433 and RX433 RF modules with AVR microcontrollers,Sometimes in embedded design you may want to go wireless. Might be you will want to log various readi …Programming AVR ADC module with WinAVR,Most of AVR microcontrollers have Analog to Digital Converter (ADC) integrated in to chip. Such solut … |
New on WinARM Tutorial
What are differences between WinARM and WinAVR,Everyone who is working with AVR microcontrollers knows this powerful tool – WinAVR (http://win …LPC2000 watchdog timer,As in all microcontrollers watchdog timers purpose isto reset microcontroller after reasonable amount … |

March 14th, 2007 at 11:28 am
Hey, thanks so much.
I think I may have already commented on your great articles, but again I really appreciate that you’ve done so much.
However I can’t see the pinout on the MPXV5100. I’m currently trying to implement a water pressure sensor and hope NOT to use op-amps.
Thanks again for your great work (even if some people don’t comment).
Cheers, Phil.
March 14th, 2007 at 1:45 pm
Thanks Phil,
Actually Pinout of MPXV5100 is simple - only three pins are used: Pin2 - VCC, Pin3 - GND and Pin4 - Vout. Other pins (1,5,6,7,8) are not connected. See datasheet.
In my opinion If your pressure is ranging near full scale, then you don’t need op amp as its output voltage will be in range 0 to VCC. Of course if Water pressure will reach like 5% of a full range, then you might want to add op amp with gain 20 in order to extend Vout value and resolution same way.
September 25th, 2007 at 9:39 am
[...] MPXV5100 pressure sensor to Atmega8Â - [Link] Filed in Parts, Mcu, [...]