High resolution barometric pressure sensor

From ScienceZero
Revision as of 23:15, 30 March 2009 by Bjoern (Talk | contribs)

Jump to: navigation, search

Development software used

  • IDE: µVision3 V3.72
  • Compiler: RealView MDK-ARM, version: 3.40


LCD interface

The timing is very important, use the hardware timer to make sure the delays are correct. If you use the 4 bit databus you need to read both nibbles, if not you may get the wrong value the next time.

I2C bus

Remember the pull-ups on both the clock and data line. First read the 24C02 EEPROM datasheet and the UM10161 - LPC2101/02/03 User manual carefully. Then read the HP03D datasheet. Clock the bus slowly in the beginning to reduce the chance of any problems.

Parts used

Suitable parts can be found at Futurlec

ET-BASE ARM2103 controller

  • CPU NXP LPC2103
  • RAM 8192 bytes
  • FLASH 32768 bytes
  • Clock rate 59 MHz
  • Supply voltage 5 V
  • Supply current 45 mA

LCD display Optrex 20434

  • 20 x 4 characters
  • 4 bit bus
  • Supply voltage 5 V
  • Supply current 3 mA

Pressure sensor HP03D

  • Pressure range 300-1100 hPa
  • 16 bit A/D
  • I2C Serial interface
  • Accurate to 0.5 hPa
  • Supply voltage: 2.2 - 3.6 V (provided by controller)
  • Supply current 500 uA during A/D conversion

Controller connections

LCD  Direction  LPC2103  Signal
EN     <---     P0.17    Enable (10 kOhm pull-up to 5 V on controller)
RW     <---     P0.18    Direction of data bus						   
RS     <---     P0.19    Data/instruction select
D4     <-->     P0.20    Data 0
D5     <-->     P0.21	  Data 1
D6     <-->     P0.22	  Data 2
D7     <-->     P0.23	  Data 3
HP03D      Direction  LPC2103        Signal
1 - VSS               -              GND
2 - VDD               -              +3.3 V
3 - MCLK     <---     P0.7 - MAT2.0  32768 Hz
4 - XCLR     <---     P0.4 - PIO     Reset (Active low, high during A/D operation)
5 - SDA      <-->     P0.3 - SDA0    I2C data (10 kOhm pull-up to 3.3 V)
6 - SCLK     <---     P0.2 - SCL0    I2C clock (10 kOhm pull-up to 3.3 V)