Fórum témák

» Több friss téma
Lapozás: OK   114 / 114
(#) majkimester válasza szidom hozzászólására (») Szept 10, 2021 /
 
Reset-re, táp elvételre törlődik, de az nem lenne gond Tyson5 alkalmazásában. Az akksit akarja kímélni, folyamatosan tápfeszen lesz amíg le nem merül. A reset gombot meg nem nyomogatjuk indokolatlanul. Azt kell csak megállapítani, hogy deep sleep-ből ébred, vagy reset ill. táp ráadása történt-e, azért, hogy a mentett adat valós és használható vagy nem.
(#) gyerek67 hozzászólása Szept 10, 2021 /
 
Sziasztok!
Az ESPEasy-t próbálgatom egy Wemos D1-en és rákötöttem egy BME-280-as hőmérséklet/pára/légnyomásmérő modult, aztán elakadtam:
A Controllers menüben beállítottam a ThingSpeak-ot.
Az ESP két adatot (a páratartalmat és a légnyomást) át is küldi a ThingSpeakra, de a hőmérsékletet valami miatt nem.
Szerintetek mi lehet a hiba?
Esetleg a Rules menüből megoldható valahogy a probléma?
A hozzászólás módosítva: Szept 10, 2021
(#) szidom válasza nedudgi hozzászólására (») Szept 12, 2021 /
 
Üdv!
Előre is bocsánat kérek ha hülyeséget beszélek, sok mindennel nem vagyok tisztában.
Tudom hogy a flash memória nem írható végtelenszer, (kb 10000 a gyártó által garantált minimum).
Viszont az EEPROM- nak is minimum 10000 írási ciklus amit garatálnak.(tudom vannak akik tesztelték, több millió írási ciklus után is működőképes, de a gyártó arra ad garanciát, hogy 10000 írási ciklus után is 20 évig megőrzi az adatot, azt azért megnézném hogy ezt hogy tesztelték).
Én azt hittem a RAM - nak szüksége van folyamatos tápfeszre.
Az EERAM-ról most hallottam először, ha jól értelmezem akkor ez egy RAM megtámogatva EEPROM-mal.(vagy fordítva)
Nem igazán értem a működését .
Talán egy gyors RAM beépített EEPROM- mentéssel?
Van róla valami magyarul?(az angol nekem "kínai").
(#) nedudgi válasza szidom hozzászólására (») Szept 12, 2021 / 1
 
Az EERAM egy soros RAM és egy EEPROM kominációja.
Egy külső kondenzátor tárol annyi energiát, ami elég ahhoz, hogy a RAM tartalmát önállóan kiírja az EEPROMba, ha megszűnik a tápfeszültség. Ha újra megjelenik a táp, ennek a fordítottja történik, az EEPROM-ot kimásolja a RAM-ba.
Az élettartamát csak a tápfeszelvételek befolyásolják.
Bővebben: Link
A hozzászólás módosítva: Szept 12, 2021
(#) szidom válasza majkimester hozzászólására (») Szept 12, 2021 /
 
Igazad van!
Nem kötözködni akartam, csak értelmezni .
(#) szidom válasza nedudgi hozzászólására (») Szept 12, 2021 /
 
Akkor nem lőttem nagyon mellé.
(#) nedudgi válasza gyerek67 hozzászólására (») Szept 12, 2021 /
 
Nem küldi át, vagy nem tudja mérni? (Értelmezhetetlen értéket ad)?
(#) szidom válasza nedudgi hozzászólására (») Szept 12, 2021 /
 
Még pár kérdés:
Tudsz mondani konkrét típust amit próbáltál?
Mennyire bonyolult a használata?
Van hozzá Arduino alá könyvtár?
(#) Bakman válasza szidom hozzászólására (») Szept 12, 2021 / 1
 
Párszor játszottam 47C16-os verzióval.

Az eredeti elképzelés az volt, hogy folyamatosan mentem oda az adatokat, majd jól elmenti nekem miközben megszűnik a tápfeszültség. Párszor sikerült úgy áramtalanítani a szerkezetet, hogy nagy valószínűséggel éppen írás közben történt az esemény. Ekkor a tartalom összezavarodott, mintha random adatokkal töltöttem volna fel az IC-t, rosszabb volt, mintha nullákkal írtam volna végig a használt részt (25 bájt).

Második nekifutásra eljátszottam azt, hogy az első 25 bájt után következett egy ellenőrző adat, majd még egy példányban feltöltöttem az adatokat. Ha az első részben lévő adatok sérültek, akkor a kontroller kiolvasta a második példányt. Így is sikerült összezavarnom a rendszert, az első és a második példány is hibás adatokkal lett tele.

Konkrétabban nem vizsgáltam a dolgot, hogy hol csúszott el a mutatvány.

Hagytam az egészet és visszaálltam a régi módszerre: kontroller elkülönített tápfeszültségről jár, nagy kondenzátorral kiegészítve, a tápfeszültséget pedig egy komparátorral figyelem. Ha a tápfeszültség megszűnik, megszakítást generál és azonnal menti az adatokat a belső EEPROM-ba. Nekem ez jött be.
(#) gyerek67 válasza nedudgi hozzászólására (») Szept 12, 2021 /
 
Szia!
Mérni tudja, mert egy pici OLED kijelzőn meg is jelenítettem, továbbá a webserverben is látszanak a mért értékek.
Időközben kipróbáltam egy másik ESP modullal is, az eredmény ugyanaz.
Csak a páratartalom és a légnyomás megy át, a hőmérséklet nem.
Nem tudom, hogy most a küldő (szerintem igen), vagy pedig a fogadó (ThingSpeak) oldalon van-e a hiba.
(#) vargham válasza Bakman hozzászólására (») Szept 12, 2021 /
 
Az adatlapon előírt kapacitású és típusú kondenzátort tetted mellé?
Mi termékben használjuk, és bevált.
(#) nedudgi válasza szidom hozzászólására (») Szept 12, 2021 /
 
Semelyik típust nem használtam. Arduinot nem használok, így nem tudom, van-e alá könyvtár.
Az adatlapot átfutottam ugyan, de különös trükk nem kellhet hozzá, egy közönséges soros RAM lehet az interfésze (SPI, vagy I2C).
(#) szidom válasza vargham hozzászólására (») Szept 12, 2021 /
 
Rákerestem a 47c16-osra, az adatlapja szerint 200 évig képes megőrizni az adatokat.
Én nem tervezek ilyen hosszú távra, de kíváncsi lennék rá hogy ezt hogy tesztelték.
(#) Bakman válasza vargham hozzászólására (») Szept 12, 2021 /
 
Minimum 8 µF-ot ír, én 15-öt raktam. Ez egy üzemóra- és eseményszámláló volt, másodpercenkénti kétszeri adatmentéssel. Viszonyleg könnyen tudtam ismételni a hibát, 20-30 kikapcsolás kb. elég is volt a dologhoz.
(#) helektro válasza Bakman hozzászólására (») Szept 12, 2021 /
 
Én 48L640 SPI EERAM-ot használok, szintén adatrekordonként összesítő kóddal. Soha nem volt még hibás adatolvasásom. Vagy egy hibás példányt fogtál ki, vagy valami más baj lehetett ott.
(#) icserny válasza nedudgi hozzászólására (») Szept 12, 2021 / 1
 
Létezik FRAM is, ami 10^10 - 10^14 -szer újraírható.Bővebben: Link
(#) BeginnerKrisz hozzászólása Szept 14, 2021 /
 
Sziasztok!

Olyan problémám lenne, hogy adott egy WEMOS D1-es board ESP8266-os wifi modullal. Van hozzá egy 4-es relé. Telefonra a Blynk nevű alkalmazás került telepítésre, majd a laptopon a configurálásnál az Arduiono program segítségével lett konfigolva, ami nálam annyit jelent, hogy a Blynk oldalán generált parancsot feltöltöttem a készülékre. Szépen működik is a 4 eszköz róla, de itt jön a millió dolláros kérdés. Ha áramszünet van akkor az Wemos automatikus újraindítását követően nem értem, hogy miért indítja el az összes relét. Próbáltam már a Blynk alkalmazáson a switch módokat is kapcsolni, de minden esetben megtörténik az elindulás. Hozzá tenném, hogy korábban működöt megfelelően, csak újra lett állítva minden. Nem gondolnám, hogy az eszköz bekötésével van gond. Ha esetleg valakinek van valami ötlete azt szívesen meghallgatnám.
(#) pipi válasza BeginnerKrisz hozzászólására (») Szept 14, 2021 /
 
Hali!
Nem világos, újrainduláskor csak megrángatja a reléket, vagy bekapcsolva is maradnak?
A relék alacsony vagy magas vez. feszről indulnak?
A boot alatt bizonyos gpio lábak magas szintre kerülnek, vagy pulzus jelenik meg rajta...
https://randomnerdtutorials.com/esp8266-pinout-reference-gpios/
Valamint mit jelent az "újra lett állítva minden" ?
(#) andyka hozzászólása Szept 15, 2021 /
 
Sziasztok
Egy ILYESMIT lehetne arduino alatt programozni ?
(#) Kera_Will válasza andyka hozzászólására (») Szept 15, 2021 /
 
CAN/RS485 elérhető akkor elvileg beszélgethet vele az ardu is ... csak "driver" könyvtár legyen hozzá.
(#) szidom hozzászólása Vas, 14:52 /
 
Sziasztok!
I2C buszos eeprom kezeléssel kapcsolatban kérném a segítségeteket.
Esp32 -re kötöttem Ds3231-es RTC modult.
A modulon van egy 24C32-es eeprom a 0x57-es címen.
Szeretném használni, de sehogy nem boldogulok vele.
Kb. 30 különböző kódot próbáltam amit a neten találtam, de egyik sem működik.
Kiolvasáskor vagy 0-át ad vagy 255-öt, de olyan is van hogy minden kiolvasásra más értéket kapok.
Mutatom a legutolsó próbálkozásomat, az "eeprom_W()" függvényt csak induláskor hívom meg a "Void setup" részben, az "eeprom_R()" függvényt meg minden percben.
Hol rontom el?
  1. void eeprom_R(){
  2.   Wire.beginTransmission(0x57);
  3.   Wire.write(0);
  4. //  Wire.endTransmission();
  5.   Wire.requestFrom(0x57, 1);
  6.   while(Wire.available()){
  7.     eepadat = Wire.read();
  8.  
  9.   Wire.endTransmission();
  10.   Serial.print("EEprom:");
  11.   Serial.println(eepadat);
  12.   }
  13. }
  14.  
  15. void eeprom_W(){
  16.  Wire.beginTransmission(0x57);
  17.  Wire.write(0);
  18.  Wire.write(10);
  19.  Wire.endTransmission();
  20.  Serial.println("EEprom iras ok");
  21.  
  22. }


Ismer valaki egy bolondbiztos kódot, amit megosztana velem?
(#) Bakman válasza szidom hozzászólására (») Vas, 15:00 / 1
 
Olvasás menete:
I2C start
I2C írás: IC címe (R/W bit=0)
I2C írás: memóriaterület címe, high byte [n]
I2C írás: memóriaterület címe, low byte [n]
I2C restart
I2C írás: IC címe (R/W bit=1)
I2C olvasás (ez már a megcímzett [n] memóriaterületen lévő adat)
I2C olvasás (a következő [n+1] memóriaterületen lévő adat)
I2C olvasás (a következő [n+2] memóriaterületen lévő adat)
...
I2C stop
(#) szidom válasza Bakman hozzászólására (») Vas, 15:13 /
 
Ezer hála és köszönet!!!
Máris működik!
Arra nem gondoltam hogy a memória cím 2 byte.
Következő: »»   114 / 114
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem