Advertisement
Guest User

Wireless Altimeter Rev 0.02

a guest
Aug 2nd, 2012
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CON
  2. _clkmode = xtal1 + pll16x
  3. _xinfreq = 5_000_000
  4.  
  5. XB_Rx = 0 ' XBee DOUT
  6. XB_Tx = 1 ' XBee DIN
  7. XB_Baud = 9600
  8. CR = 13 ' Carriage Return value
  9.  
  10. START_ALT = 1317 ' Your starting altitude in feet.
  11. OBJ
  12. XB : "FullDuplexSerial"
  13. alt : "29124_altimeter"
  14. Pub Start | a, p, t
  15. XB.start(XB_Rx, XB_Tx, 0, XB_Baud) ' Initialize comms for XBee
  16.  
  17. waitcnt(clkfreq + cnt)
  18.  
  19. alt.start(alt#QUICKSTART, alt#BACKGROUND) ' Start altimeter for QuickStart with background processing.
  20. alt.set_resolution(alt#HIGHEST) ' Set to highest resolution.
  21. alt.set_altitude(alt.m_from_ft(START_ALT * 100)) ' Set the starting altitude, based on average local pressure.
  22.  
  23. repeat
  24. a := alt.altitude(alt.average_press) ' Get the current altitude in cm, from new average local pressure.
  25. XB.str(string("Altitude:"))
  26. XB.str(alt.formatn(a, alt#METERS, 8)) ' Print altitude in meters
  27. XB.tx(13)
  28. XB.str(alt.formatn(a, alt#TO_FEET, 18)) ' Print altitude in feet, clear-to-end, and CR. \
  29. XB.tx(13)
  30.  
  31. p := alt.current_press
  32. XB.str(string("Barometric Pressure:"))
  33. XB.str(alt.formatn(p, alt#MILLIBARS, 8))
  34. XB.tx(13)
  35. XB.str(alt.formatn(p, alt#TO_INCHES, 18))
  36. XB.tx(13)
  37.  
  38. t := alt.current_temp
  39. XB.str(string("Temperature:"))
  40. XB.str(alt.formatn(t, alt#DEGC, 8))
  41. XB.tx(13)
  42. XB.str(alt.formatn(t, alt#TO_DEGF, 18))
  43. XB.tx(13)
  44. XB.tx(13)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement