Код (C++): //-------------------------------таймер вызова подпрограммы —------— if (time == 0){ //подпрограмма readTemp(); } else{ time —; } Arduino: 1.6.12 (Windows 7), Плата:"Arduino Nano, ATmega328" test_seti_2:79: error: stray '\342' in program time —; ^ test_seti_2:79: error: stray '\200' in program test_seti_2:79: error: stray '\224' in program exit status 1 stray '\342' in program как исправить данную ошибку ?
Код (C++): time —; на этот бред и ругается. P.S. Пожалуйста, оформляйте код правильно (9-я кнопка в этом редакторе).
Я ж не знаю что должна делать эта программа. Возможно так: Код (C++): time--; Если ругается на кодировки, то все сомнительные буковки (русская 'о' и латинская 'o' выглядят одинаково) надо переписать корректно.
исправил ошибка ушла Код (C++): if (time == 0){ //подпрограмма readTemp(); } else{ time --; } полная версия кода Код (C++): // IDE 1.5.2 //--------------------— PIN ETHERNET ENC28J60------------— //Ethetnet Arduino UNO //VCC +3.3V //GND GND //CS(SS) D10 //SI(MOSI) D11 //SO(MISO) D12 //SCK D13 //--------------------— PIN ETHERNET ENC28J60------------— #include "DHT.h" #include <EtherCard.h> #include <EEPROM.h> #define DHTPIN 2 // what pin we're connected to #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301) // Connect pin 1 (on the left) of the sensor to +5V // Connect pin 2 of the sensor to whatever your DHTPIN is // Connect pin 4 (on the right) of the sensor to GROUND // Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor DHT dht(DHTPIN, DHTTYPE); static byte mymac[] = {0xDD,0xDD,0xDD,0x00,0x00,0x01}; static byte myip[] = {192,168,88,24}; byte Ethernet::buffer[1100]; //float h ; //float t ; byte vlaga = 75; int temp = 55; int vent =85; int pot; // переменная датчика затопления byte vf; // переменная для значения влаги во флеше #define VlagInPin 3 // Пин для подключения Датчика затопления #define RelPin 4 // Пин реле упраления вентиляции #define PotPin 5 // Пин реле клапана воды , сирены,откачивающего насоса, отключение гидрофора от "Датчика затопления" unsigned long time = 0; void setup () { Serial.begin(115200); Serial.println( "Bolshoy podval 192.168.88.24"); if (!ether.begin(sizeof Ethernet::buffer, mymac, 10)) Serial.println( "Failed to access Ethernet controller"); else Serial.println("Ethernet controller initialized"); if(!ether.staticSetup(myip)) Serial.println("Failed to set IP address"); dht.begin(); pinMode(VlagInPin, INPUT); pinMode(RelPin, OUTPUT); digitalWrite(RelPin, HIGH); pinMode(PotPin, OUTPUT); digitalWrite(PotPin, HIGH); vent = EEPROM.read(0); } void loop(){ if (vlaga >= vent) {digitalWrite(RelPin, LOW);} else if(vlaga <= (vent-2)) {digitalWrite(RelPin, HIGH);} //-------------------------------таймер вызова подпрограммы —------— if (time == 0){ //подпрограмма readTemp(); } else{ time --; } //-----------------------------------------------------------------— word len = ether.packetReceive(); word pos = ether.packetLoop(len); if(pos) { Serial.println(); //boolean password_valid = true; // is it a POST request? if(strstr((char *)Ethernet::buffer + pos, "POST /") != 0) { } if(strstr((char *)Ethernet::buffer + pos, "minus") != 0) { if (vent < 1) {vent = 100;} else vent--; EEPROM.write(0, vent); } if(strstr((char *)Ethernet::buffer + pos, "plus") != 0) { vent++; if (vent > 100) {vent = 0;} EEPROM.write(0, vent); } // —-------------------------------------------------------------------------— // Output HTML page BufferFiller bfill = ether.tcpOffset(); bfill.emit_p(PSTR("HTTP/1.0 200 OK\r\n" "Content-Type: text/html\r\nPragma: no-cache\r\n\r\n" "<meta http-equiv='refresh' content='5'/>" // автообновление странички каждый 5 сек "<html><head><title>Большой подвал Басейна</title></head>" "<html><body>" "<H1>Большой подвал басейна</H1>" "<form method=\"POST\">")); bfill.emit_p(PSTR("<table border=\"1\">" "<tr><td>Температура</td><td> $D °C </td></tr>" "<tr><td>Влажность</td><td> $D % </td></tr>" "<tr><td>Вкл Вент</td><td> $D %</div></td></tr>" "</table>"),temp,vlaga,vent); bfill.emit_p(PSTR("<button name=\"plus\">+</button></div>")); bfill.emit_p(PSTR("<button name=\"minus\">-</button></div>")); bfill.emit_p(PSTR("</form></body></html>")); ether.httpServerReply(bfill.position()); } } void readTemp(){ //----------------------------------------Чтение температуры —--------------------— vlaga = dht.readHumidity(); temp = dht.readTemperature(); time = 100000; }
Добрый день! Приобрел датчик DHT22, работает ровно несколько минут, после выдает ошибку "dht11 start condition 1 not met", следом "dht11 start condition 2 not met" дважды и тишина. Arduino uno, библиотека стандартная DHT, пример DHTtester.ino
код можешь выложить ? у меня так выглядит Код (C++): //выбор используемого датчика #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301) // Подключить pin 1 датчика DHT (считаем слева) к питанию +5V // Подключить pin 2 датчика DHT к выводу указанному выше переменной DHTPIN // Подключить pin 4 датчика DHT (on the right) к минусу питания 0V // Подключить 10K сопротивление между pin 2 (data) и pin 1 (+5В) на датчике DHT //инициализация датчика DHT dht(DHTPIN, DHTTYPE); int VlagInPin = 3; // Пин для подключения Датчика затопления int RelPin = 4; // Пин реле упраления вентиляции int PotPin = 5; // Пин реле клапана воды , сирены,откачивающего насоса, отключение гидрофора от "Датчика затопления" byte vlaga = 75; int temp = 55; int vent =85; int pot; // переменная датчика затопления byte vf; // переменная для значения влаги во флеше
Стандартный код из библиотеки DHT, пример DHTtester Спойлер: Код С++ // Example testing sketch for various DHT humidity/temperature sensors // Written by ladyada, public domain #include "DHT.h" #define DHTPIN 2 // what pin we're connected to // Uncomment whatever type you're using! //#define DHTTYPE DHT11 // DHT 11 #define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301) // Connect pin 1 (on the left) of the sensor to +5V // Connect pin 2 of the sensor to whatever your DHTPIN is // Connect pin 4 (on the right) of the sensor to GROUND // Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(9600); Serial.println("DHTxx test!"); dht.begin(); } Ничего не перепутано.