ESP 8266 Node MCU - Interrupt problém s knihovnou

Odpovědět
Xandys
Příspěvky: 14
Registrován: 21 úno 2018, 21:17
Reputation: 0

ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od Xandys » 02 bře 2022, 14:01

Zdravím všechny, mám problém s jedním projektem s Node MCU ESP8266.
V projektu potřebuji více odpočtů najednou. Použil jsem funkci setupInterrupt(). Při nahrávání mám stále chybovou hlášku: expected constructor, destructor, or type conversion before '(' token.
Zjistil jsem, že je zřejmě problém s knihovnou ESP8266WiFi.h, protože v desce Uno mi to normálně funguje.
Zde přidávám kód, který mi IDE označuje jako chybu.
Netušíte někdo , kde je problém?
Děkuji.

void setupInterrupt()
{

TIMSK2 &= ~(1<<TOIE2);

TCCR2A &= ~((1<<WGM21) | (1<<WGM20));
TCCR2B &= ~(1<<WGM22);

ASSR &= ~(1<<AS2);

TIMSK2 &= ~(1<<OCIE2A);
TCCR2B |= (1<<CS22) | (1<<CS20); // Set bits
TCCR2B &= ~(1<<CS21); // Clear bit
tcnt2 = 131;
TCNT2 = tcnt2;
TIMSK2 |= (1<<TOIE2);
}


ISR(TIMER2_OVF_vect) { //TENTO ŘÁDEK MÁM PROBARVENÝ JAKO CHYBU

TCNT2 = tcnt2;

if(time1 > 0)
{
time1--;
}
if(time2 > 0)
{
time2--;
}
if(time3 > 0)
{
time3--;
}}

ondraN
Příspěvky: 932
Registrován: 08 srp 2019, 20:01
Reputation: 0

Re: ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od ondraN » 02 bře 2022, 14:14

Podle názvů registrů, mi to přijde jako kód pro procesor 328P. Ten není v žádném případě kompatibilní s tím v ESP.

martinius96
Příspěvky: 579
Registrován: 01 srp 2017, 19:29
Reputation: 0
Bydliště: Poprad
Kontaktovat uživatele:

Re: ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od martinius96 » 02 bře 2022, 14:34

Do tých registrov sa nevyznám, ak sú z AVR pre Arduino, tak to fungovať nebude, lebo je to pre inú architektúru mikrokontroléra.
V pár príkladoch pre ESP8266, kde bola interrupt rutina bola doplnená nad void setup() deklarácia funkcie s atribútom ICACHE_RAM_ATTR, možno to pomôže, ak nie je chyba v použitých registroch:

Kód: Vybrat vše

void ICACHE_RAM_ATTR setupInterrupt();           // to use ESP8266 library >v2.5.0

Xandys
Příspěvky: 14
Registrován: 21 úno 2018, 21:17
Reputation: 0

Re: ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od Xandys » 02 bře 2022, 14:45

děkuji, zkusím to.
Ještě pogooglim, nebo hold vyřeším odpočty jinak.

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od jankop » 02 bře 2022, 18:01

O jakých časových intervalech se bavíme? Jestli by na to nestačil obyčejnej Ticker nebo třeba Interval od Xpablo.

Uživatelský avatar
Caster
Příspěvky: 380
Registrován: 11 zář 2019, 09:02
Reputation: 0

Re: ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od Caster » 03 bře 2022, 19:13

Pokud v tom nejsi 100% kovanej, použij příslušnou knihovnu pro Arduino. Snadněji se s registry pracuje v C++ v příslušném IDE pro daný procesor STM32Cube (STM32) nebo MPLAB X IDE (AVR).

Xandys
Příspěvky: 14
Registrován: 21 úno 2018, 21:17
Reputation: 0

Re: ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od Xandys » 04 bře 2022, 18:06

Jedná se cirka o šestiminutové odpočty. Kouknu se na ty dvě možnosti.
S registry nemám vůbec žádné zkušenosti.

Xandys
Příspěvky: 14
Registrován: 21 úno 2018, 21:17
Reputation: 0

Re: ESP 8266 Node MCU - Interrupt problém s knihovnou

Příspěvek od Xandys » 06 bře 2022, 18:03

vyřešeno přes Ticker, děkuji všem

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 12 hostů