code: func (h *MPL115A2Driver) getData() (p, t float32, err error) {
  	var temperature uint16
  	var pressure uint16
  	var pressureComp float32
  
  	if _, err = h.connection.Write([]byte{MPL115A2_REGISTER_STARTCONVERSION, 0}); err != nil {
  		return
  	}
  	time.Sleep(5 * time.Millisecond)
  
  	if _, err = h.connection.Write([]byte{MPL115A2_REGISTER_PRESSURE_MSB}); err != nil {
  		return
  	}
  
  	data := []byte{0, 0, 0, 0}
  	bytesRead, err1 := h.connection.Read(data)
  	if err1 != nil {
  		err = err1
  		return
  	}
  
  	if bytesRead == 4 {
  		buf := bytes.NewBuffer(data)
  		binary.Read(buf, binary.BigEndian, &pressure)
  		binary.Read(buf, binary.BigEndian, &temperature)
  
  		temperature = temperature >> 6
  		pressure = pressure >> 6
  
  		pressureComp = float32(h.A0) + (float32(h.B1)+float32(h.C12)*float32(temperature))*float32(pressure) + float32(h.B2)*float32(temperature)
  		p = (65.0/1023.0)*pressureComp + 50.0
  		t = ((float32(temperature) - 498.0) / -5.35) + 25.0
  	}
  
  	return
  }
docs: // getData fetches the latest data from the MPL115A2