Stránka 1 z 1

Komunikace I2C mezi arduino NANO a NodeMCU

Napsal: 15 pro 2020, 14:20
od sachlj
Řeším problém komunikace mezi Arduino NANO a ModeMCU. Podle tohoto článku lze jednoduše odesílat data pomocí I2C. Připravil jsem kód pro odesílání dat. Viz příloha.
Arduino_NANO.ino
(3.8 KiB) Staženo 167 x
Jak ale tyto data dostat do NodeMVU-slave když je v příspěvku kód

Kód: Vybrat vše

Wire.begin(0x02); 
  // nastavení podprogramu, který bude zavolán při přijetí dat po I2C
  Wire.onReceive(prichoziZnakI2C);
Já těch kódů potřebuji víc, potřebuji je uložit do pomocných hodnot a dál s nimi pracovat. Hlavní problém co mě zarazil je to, že na slave budou další I2C senzory. Tak jak pak budou komunikovat ony? Bude v tom problém nebo ne? řešili jste tohle někdo?

Re: Komunikace I2C mezi arduino NANO a NodeMCU

Napsal: 15 pro 2020, 16:25
od sachlj
Trochu jsem se posunul v kódu. Vyvětrání na čerstvém vzduchu se psi pomohlo. Teď je to jinak Arduino Nano je master i slave stejně tak jako NodeMCU. Node v daný čas přečte data ze svých senzorů, pak nastartuje komunikaci po I2C mezi ním a Nano tím, že mu pošle znak "S" na který čeká Nano. Když ho nano dostane tak spustí funkci pro měření dat a ty v malých delay pošle do Node, ukončí komunikaci a zase čeká na příkaz. Teď pracuji na části kódu pro zachycení dat a uložení do jednotlivých proměnných. Pokud někdo víte jak tak budu rád.
Jde o tyhle data co příjdou. Jsou to jen čísla. CO, Alkohol, CO2, Toluen, NH4, Aceton.

doplnění: i to mám už vyřešeno ! řešení viz tady

Re: Komunikace I2C mezi arduino NANO a NodeMCU

Napsal: 16 pro 2020, 06:04
od pavel1tu
No, proč používáš 2 zařízení a komunikuješ mezi nimi po IIC ?
Délka sběrnice je omezená, přijde mi to jako BLBOST, výhodnější by bylo připojit "snímače/čidla" rovnou k NodeMCU.

Re: Komunikace I2C mezi arduino NANO a NodeMCU

Napsal: 16 pro 2020, 06:48
od sachlj
Jak jsme psal, Prostuduj si tu knihovnu. Pro NodeMCU se musí čidlo zapojit jiným způsobem s externím napájením. To nechci. A pak se musí upravit ten kód aby se obešlo využití avr knihovny. To taky nechci, nebudu zkoušet kde mi to měří jak. To řešení s arduino nano je jednoduché a a ta komunikace taky. Nic složitého. Podle toho návodu a ofiko diskuzí arduina jsem našel postup který jsem už aplikoval.