Bez popisu

adc121c021.js 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*jslint node:true, vars:true, bitwise:true, unparam:true */
  2. /*jshint unused:true */
  3. /*global */
  4. /*
  5. * Author: Zion Orent <zorent@ics.com>
  6. * Copyright (c) 2015 Intel Corporation.
  7. *
  8. * Permission is hereby granted, free of charge, to any person obtaining
  9. * a copy of this software and associated documentation files (the
  10. * "Software"), to deal in the Software without restriction, including
  11. * without limitation the rights to use, copy, modify, merge, publish,
  12. * distribute, sublicense, and/or sell copies of the Software, and to
  13. * permit persons to whom the Software is furnished to do so, subject to
  14. * the following conditions:
  15. *
  16. * The above copyright notice and this permission notice shall be
  17. * included in all copies or substantial portions of the Software.
  18. *
  19. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  20. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  21. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  22. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  23. * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  24. * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  25. * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  26. */
  27. // Load ADC121C021 module
  28. var I2C_ADC = require('jsupm_adc121c021');
  29. // Instantiate an ADC121C021 on I2C bus 0
  30. var busID = I2C_ADC.ADC121C021_I2C_BUS;
  31. var I2CAddr = I2C_ADC.ADC121C021_DEFAULT_I2C_ADDR;
  32. var myI2C_ADC = new I2C_ADC.ADC121C021(busID, I2CAddr);
  33. // get the data every 50 milliseconds
  34. var myInterval = setInterval(function()
  35. {
  36. var val = myI2C_ADC.value();
  37. var voltsVal = myI2C_ADC.valueToVolts(val);
  38. console.log("ADC value: " + val + " Volts = " + voltsVal);
  39. }, 50);
  40. // Print message when exiting
  41. process.on('SIGINT', function()
  42. {
  43. clearInterval(myInterval);
  44. myI2C_ADC = null;
  45. I2C_ADC.cleanUp();
  46. I2C_ADC = null;
  47. console.log("Exiting...");
  48. process.exit(0);
  49. });