прошу подсказки по orangepi Zero + Armbian + node.js
Доброго времени суток.
прошу прощения что немного не в тему, но вроде как по тематике ближе всего проблема в следующем: накидал проект для мониторинга аквариума с использованием того что в теме разделил на два модуля. 1-ый - управление кнопками и реле 2-ой - вывод инфо на дисплей var gpiobutton = require('gpiobutton'); var buttonSpec = {gpiono:19}; var buttonSpec2 = {gpiono:18}; var buttonL = new gpiobutton.button(buttonSpec); var buttonF = new gpiobutton.button(buttonSpec2); var onoff = require('onoff'); var Gpio = onoff.Gpio, relayIn1 = new Gpio(2,'out' ); relayIn2 = new Gpio(6,'out' ); buttonL.on("buttonpress", function(event) { var value = (relayIn1.readSync()+1) % 2; relayIn1.write(value, function() { // console.log("Changed LED state to: " + value); }); }); buttonF.on("buttonpress", function(event) { var value = (relayIn2.readSync()+1) % 2; relayIn2.write(value, function() { // console.log("Changed LED state to: " + value); }); }); второй: //read gpio state // var valueL=1; var valueF=1; var onoff = require('onoff'); var Gpio = onoff.Gpio, relayIn1 = new Gpio(2,'out' ); relayIn2 = new Gpio(6,'out' ); var light = 'Light ON '; var fito = 'Fito ON' //LCD part var ip = require('ip'); var ds18b20 = require('ds18b20'); var LCD = require('lcdi2c'); var sleep = require('sleep'); var lcd = new LCD( 0, 0x27, 20, 4 ); //lcd.createChar(0,[0x18,0x18,0x3,0x4,0x4,0x4,0x3] ); var now = 0; lcd.on(); //lcd.setBacklight(); lcd.clear(); lcd.home(); function run() { now = new Date(); var time1 = now.toLocaleTimeString([], {hour: '2-digit', minute:'2-digit', hour12: false}); var date1 = now.toLocaleDateString([], {month: 'long',day: 'numeric', year: 'numeric'}); valueL = (relayIn1.readSync()) % 2; valueF = (relayIn2.readSync()) % 2; // console.log('value= '+value) if (valueL==0){ light = 'Light ON '; } else light = 'Light OFF'; if (valueF==0){ fito = 'Fito ON '; } else fito = 'Fito OFF'; //Print and check for errors. If errors found, shut down gently. lcd.println( date1 + ' ' + time1 + ' ', 1 ); lcd.println( light + ' | ' + fito, 2 ); lcd.println( 'Aqua Temp C = '+ ds18b20.temperatureSync('28-041663a8bcff') + ' ' , 3 ); var myip=ip.address(); lcd.println( 'IP= '+myip, 4 ); setTimeout(() => run(), 100); }; run(); проблема в том, что по истечении 3-4 часов работы модуль дисплея выгружается из памяти. помогите понять почему |
Часовой пояс GMT +3, время: 17:50. |