J'arrive à lire l'ADC0 et l'afficher, c'est déjà un bon début ;-)
This commit is contained in:
39
Mesures/ADC/ADS1115/0_ads1115.lua
Normal file
39
Mesures/ADC/ADS1115/0_ads1115.lua
Normal file
@@ -0,0 +1,39 @@
|
||||
-- Lit le le petit convertisseur ADC ADS1115
|
||||
|
||||
function readADS1115()
|
||||
if verbose then print("\n 0_ads1115.lua zf200126.1525 \n") end
|
||||
|
||||
id = 0 sda = 5 scl = 6 addr = 0x48
|
||||
|
||||
i2c.setup(id, sda, scl, i2c.SLOW) sda = nil scl = nil
|
||||
|
||||
function read_ADS1115(ADCnum)
|
||||
ads1115.reset()
|
||||
adc1 = ads1115.ads1115(id, addr)
|
||||
|
||||
-- single shot
|
||||
adc1:setting(ads1115.GAIN_6_144V, ads1115.DR_128SPS, ads1115.SINGLE_0, ads1115.SINGLE_SHOT)
|
||||
-- start adc conversion and get result in callback after conversion is ready
|
||||
adc1:startread(function(volt, volt_dec, adc, sign) print(volt, volt_dec, adc, sign) end)
|
||||
|
||||
|
||||
end
|
||||
|
||||
--[[
|
||||
if verbose then print("ADC0: "..read_ADS1115(0).." V") end
|
||||
|
||||
id=nil sda=nil scl=nil addr=nil HUMIDITY=nil TEMPERATURE=nil r=nil
|
||||
read_HTU21D=nil readTemp=nil readHumi=nil readHTU21D=nil
|
||||
]]
|
||||
if verbose then print(node.heap()) end
|
||||
collectgarbage()
|
||||
if verbose then print(node.heap()) end
|
||||
end
|
||||
|
||||
readADS1115()
|
||||
read_ADS1115(0)
|
||||
|
||||
--[[
|
||||
read_ADS1115(0)
|
||||
|
||||
]]
|
||||
@@ -1,43 +0,0 @@
|
||||
-- Lit le capteur I2C HTU21D de mesure d'humidité et de température
|
||||
-- https://github.com/zuzu59/NodeMCU_Lua/tree/master/Mesures/humidity/bolo-thingspeak/docu/HTU21D.txt
|
||||
|
||||
function readHTU21D()
|
||||
if verbose then print("\n 0_htu21d.lua zf200119.1517 \n") end
|
||||
|
||||
id = 0 sda = 5 scl = 6 addr = 0x40
|
||||
HUMIDITY = 0xE5 TEMPERATURE = 0xE3
|
||||
i2c.setup(id, sda, scl, i2c.SLOW) sda = nil scl = nil
|
||||
|
||||
function read_HTU21D(zreg, zdelay)
|
||||
i2c.start(id) i2c.address(id, addr, i2c.TRANSMITTER)
|
||||
i2c.write(id, zreg) i2c.stop(id)
|
||||
i2c.start(id) i2c.address(id, addr, i2c.RECEIVER)
|
||||
tmr.delay(zdelay)
|
||||
r = i2c.read(id,3) i2c.stop(id)
|
||||
return r
|
||||
end
|
||||
|
||||
function readTemp()
|
||||
r = read_HTU21D(TEMPERATURE, 50000)
|
||||
r = (bit.band((bit.lshift(string.byte(r,1),8)+string.byte(r,2)),0xfffc)*17572)/65536-4685
|
||||
return tonumber(string.format("%.1f", tostring(r/100)))
|
||||
end
|
||||
|
||||
function readHumi()
|
||||
r = read_HTU21D(HUMIDITY, 16000)
|
||||
r = (bit.band((bit.lshift(string.byte(r,1),8)+string.byte(r,2)),0xfffc)*12500)/65536-600
|
||||
return tonumber(string.format("%.1f", tostring(r/100)))
|
||||
end
|
||||
|
||||
ztemp1=readTemp() zhum1=readHumi()
|
||||
if verbose then print("Temperature: "..ztemp1.." °C") end
|
||||
if verbose then print("Humidity: "..zhum1.." %") end
|
||||
|
||||
id=nil sda=nil scl=nil addr=nil HUMIDITY=nil TEMPERATURE=nil r=nil
|
||||
read_HTU21D=nil readTemp=nil readHumi=nil readHTU21D=nil
|
||||
if verbose then print(node.heap()) end
|
||||
collectgarbage()
|
||||
if verbose then print(node.heap()) end
|
||||
end
|
||||
|
||||
readHTU21D()
|
||||
Reference in New Issue
Block a user