Zdravím,
Momentálně se potíkám s občasným zamrznutím sběrnice I2C ve svém projektu. Řešením je použití novější knihovny Wire.h, která má od roku 2020 definovanou možnost timeoutu a resetu sběrnice. Ale nešlo mi to.
Když jsem přidal do svého programu příkaz na definici timeoutu a resetu(který ve staré knihovně nebyl)
Wire.begin(); // join i2c bus (address optional for master)
Wire.setWireTimeout( 5000, true );
tam mi to hlásilo že:
'class TwoWire' has no member named 'setWireTimeout'; did you mean 'setTimeout'?
Problém byl v umístění knihovny Wire.h. Nakonec se ukázalo že je v tomto adresáři ve starší verzi z roku 2019:
Použití knihovny Wire ve verzi 1.0 v adresáři: C:\Users\Administrator\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.2\libraries\Wire
A nikoli tam kde bych jej čekal já
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\
Tak kdyby to někdo hledal, tak ať ví...
Zdeněk
Problém s umístěním knihovny Wire.h (setWireTimeout)
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host