Poradna

Datum
Vložil
Titulek

web server SD karta

Ahoj

Mám takovy problém, že mám vytvořeny web server který zpřístupnuje na síti soubor test.xml a zároven do test.xml také v loop() zapisuji data z čidel. Princip je tedy takovy, že chcu zapsat data do souboru a následne je zobrazovat jak owebovou stranku. Ale nedaří se mi to udělat tak, aby se obě funkce navzáem nerušily, protože bud funguje jedna část nebo druha, ale nedaří se mi soubor zobrazit když do něj zapíšu data.

Děkuji za odpoved

Datum
Vložil
Titulek

EEPROM wire

Zdravím, chtěl bych se zeptat jak by se daly spojit poslední kódy z lekcí 17 a 18. Já jsem se pokusil o lehkou úpravu, ale to zřejmě nebude ono. Já doufám že následující bude nějak k přečtení :D


#include <Wire.h>

void i2c_eeprom_write_byte( int deviceaddress, unsigned int eeaddress, byte data ) {
byte rdata = data;
Wire.beginTransmission(deviceaddress);
Wire.write((int)(eeaddress)); // odešle vyšší byte
Wire.write((int)(eeaddress & 0xFF)); // odešle nižší byte
Wire.write(rdata);
Wire.endTransmission();
}

byte i2c_eeprom_read_byte( int deviceaddress, unsigned int eeaddress ) {
byte rdata = 0xFF;
Wire.beginTransmission(deviceaddress);
Wire.write((int)(eeaddress)); // odešle vyšší byte
Wire.write((int)(eeaddress & 0xFF)); // odešle nižší byte
Wire.endTransmission();
Wire.requestFrom(deviceaddress,1);
if (Wire.available()) rdata = Wire.read();
return rdata;
}

void TextToEEPROM(int adresa, int maxVelikost, String text) //zápis do paměti
{
for (int i = 0;i < text.length();i++)
{
i2c_eeprom_write_byte(0x50, adresa + i, (byte)text[i]);

}
for (int i = text.length();i < maxVelikost;i++)
{
i2c_eeprom_write_byte(0x50, adresa + i, ' ');

}
}

String TextFromEEPROM(int adresa, int maxVelikost) //čtení paměti
{
String TextFromEEPROM = "";
for (int i = 0;i < maxVelikost;i++)
{

char znak = (char)i2c_eeprom_read_byte(0x50, adresa + i);
TextFromEEPROM = TextFromEEPROM + znak;
}
while (TextFromEEPROM[TextFromEEPROM.length() - 1] == ' ')
{
TextFromEEPROM = TextFromEEPROM.substring(0,TextFromEEPROM.length() - 1);
}
return TextFromEEPROM;
}


void setup()
{
Wire.begin();
Serial.begin(9600);

//i2c_eeprom_write_byte(0x50, 2574, 123);//zápis do adresy
//delay(5);
//byte a = i2c_eeprom_read_byte(0x50, 2574); //čtení z adresy
//Serial.print("Hodnota je: ");
//Serial.println(a);

TextToEEPROM(50,10,"Ahoj..."); //zápis do paměti
TextToEEPROM(60,10,"dalsi text"); //zápis do paměti
delay(20);
Serial.println(TextFromEEPROM(50,10)); //čtení
Serial.println(TextFromEEPROM(60,10)); //čtení


}

void loop() {}


Pravděpodobně to bude někde nastavení proměnné int, char a podobně






Datum
Vložil
Titulek

DHT22

Dobrý den.chtěl jsem se zeptat kde může být zakopaný pes. postavil jsem si meteostanici s odesilanim csv dat xively a použil jsem právě tento senzor (dht22). pro čtení dat jsem si stáhl danou knihovnu která v plusových hodnotach spravně ukazuje ale bohužel přišel malý mrazík stím že teplota je pod nulou ale bohužel meteostanice ukazuje stale plusové hodnoty (přesněji před poklesem teploty ukazovala meteostanice správně ale po překročení teploty 0.0 vyskočí teplota na 3267.50 stupňů) chtěl jsem se zeptat jak je to možné a kde tedy je zakopán pes (zda v knihovně nebo v základním sketchy

Datum
Vložil
Titulek

Re: DHT22

Problém je v tom, že čidlo DHT11 má měřený rozsah od 0 do 50 st.C.

Datum
Vložil
Titulek

Re: Re: DHT22

Nevšiml jsem si, že se jedná o čidlo DHT11

Datum
Vložil
Titulek

Re: DHT22

Doporučuji použít přesnější čidlo teploty DS18B20.

Datum
Vložil
Titulek

Re: Re: DHT22

ale pokud vim tak dht22 přesneji am 2302 má měrný rozsah teploty -40 až 80 dokonce v některých manuálech až 120 stupňů celsia a dht 11 nepoužívám teda pokud to neberete jako že by byla knihovna skoro stejná pro oba tyto senzory

Datum
Vložil
Titulek

Re: Re: Re: DHT22

Ano já se opravil, ale DHT22 jsem ještě nezkoušel.

Datum
Vložil
Titulek

Re: Re: Re: Re: DHT22

Tak děkuji za snahu :0)

Datum
Vložil
Titulek

Re: Re: Re: Re: Re: DHT22

Koukni na zdrojový kód knihovny nebo mi pošli zdrojový kód programu, který používáš.

<< 30 | 31 | 32 | 33 | 34 >>

Vyhledávání

arduino8.cz © 2015 Všechna práva vyhrazena.