прошил на espruino вот такую вот платку: http://www.elecrow.com/wiki/index.php?title=ESP8266_IOT_Boar... прошивка 1.87. HTTP сервер заводится, К W-Fi подключается, вроде как все работает, но столкнулся с проблемой: не получается прицепить датчик температуры DS18B20. Код (Javascript): var ow = new OneWire(D5); setInterval(function() { var sensor = require("DS18B20").connect(ow); //.....если не спрятать подключение в функцию - то датчик не подхватывает ( по крайней мере так было с Iskra JS) sensor.getTemp(function (temp) { console.log("Temp is "+temp+"°C"); }); }, 1000); результат: Код (Text): 1v87.tve_master_b3dc05b Copyright 2016 G.Williams Espruino is Open Source. Our work is supported only by sales of official boards and donations: http://espruino.com/Donate Flash map 4MB:512/512, manuf 0xe0 chip 0x4016 >echo(0); =undefined >Uncaught Error: No DS18B20 found at line 1 col 185 ...ow Error("No DS18B20 found");this.type=parseInt(this.sCode[0... ^ in function "c" called from line 1 col 10 new c(b,a) ^ in function "connect" called from line 1 col 43 ...quire("DS18B20").connect(ow); //.....\xD0\xB5\xD1\x81\xD0\xB... ^ in function called from system Uncaught Error: No DS18B20 found at line 1 col 185 ...ow Error("No DS18B20 found");this.type=parseInt(this.sCode[0... ^ На искре - все работает, а вот на этой плате так и не понял, какой вывод чему соответствует, и на какой именно по уму надо этот датчик вешать
И про резисторы не забыли? "... Connect as in the table below, with a 4.7k resistor between data and the 3.3v line..." http://www.espruino.com/DS18B20
накинул такую вот конструкцию: Код (Javascript): var pin = D2; // update for your hardware! var ow = new OneWire(pin); ds = require("https://raw.githubusercontent.com/espruino/EspruinoDocs/master/devices/DS18B20.js"); setInterval(function () { var s = ow.search(); console.log({ search : s }); }, 1000); и путем ручного перебора пинов вычислил только два соответствия. а именно: D2 в коде - D4 на плате D3 в коде - RX на плате. больше выходов и соответствий не нашел. думаю надо перебором по латинским буквам и цифрам с разным регистром пройтись, но вопрос в диапазоне. какие значения могут быть? к тому же мне еще нужно как-то подцепить на i2c часы реального времени. как пины этой шины определить?
извините, не очень понял. Это как? Просканировал сегодня еще модуль ESP-07 с той же прошивкой: D2 - GPIO2 D13 - GPIO13 Больше двух каналов не нашел, хотя если попытаться вытащить из платы глобальные переменные: Код (Javascript): let alphabet = 5; let numbers = 20; let pins = Array(alphabet).fill(0).reduce(function(m, v, a){ a = String.fromCharCode(a + 65); Array(numbers + 1).fill(0).forEach(function(v, n){ try { Function('return ' + a + n)(); } catch (e) { return false; } return m.push(a + n); }); return m; }, []); console.log(pins + ""); результатом имеем: Код (Text): >echo(0); D0,D1,D2,D3,D4,D5,D6,D7,D8,D9,D10,D11,D12,D13,D14,D15 =undefined