u102132
New member
Купил ESP32c6, хочу сделдать на нем термодатчик с четырмя ds18B20 и счетчик газа (с использованием геркона).
Поставил Arduino IDE, скачал библиотеку OneWrite, взял пример, но он компилируется никак...
И плату правильную выбрал, но сыпет ошибки:
In file included from d:\Programs\Arduino IDE\_Projects\libraries\OneWire\OneWire.cpp:149:
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h: In function 'uint32_t directRead(uint32_t)':
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h:174:25: error: no match for 'operator>>' (operand types are 'volatile gpio_in_reg_t' and 'uint32_t' {aka 'long unsigned int'})
174 | return (GPIO.in >> pin) & 0x1;
| ~~~~~~~ ^~ ~~~
| | |
| | uint32_t {aka long unsigned int}
| volatile gpio_in_reg_t
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h: In function 'void directWriteLow(uint32_t)':
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h:189:44: error: no match for 'operator=' (operand types are 'volatile gpio_out_w1tc_reg_t' and 'uint32_t' {aka 'long unsigned int'})
189 | GPI
ut_w1tc = ((uint32_t)1 << pin);
и т.д...
esp32 от Espressiv System 2.3.7
OneWire 2.3.8
Подскажите уважаемые, в чем причина, как исправить?
В программировании микроконтроллеров я - новичёк.
Поставил Arduino IDE, скачал библиотеку OneWrite, взял пример, но он компилируется никак...
И плату правильную выбрал, но сыпет ошибки:
In file included from d:\Programs\Arduino IDE\_Projects\libraries\OneWire\OneWire.cpp:149:
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h: In function 'uint32_t directRead(uint32_t)':
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h:174:25: error: no match for 'operator>>' (operand types are 'volatile gpio_in_reg_t' and 'uint32_t' {aka 'long unsigned int'})
174 | return (GPIO.in >> pin) & 0x1;
| ~~~~~~~ ^~ ~~~
| | |
| | uint32_t {aka long unsigned int}
| volatile gpio_in_reg_t
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h: In function 'void directWriteLow(uint32_t)':
d:\Programs\Arduino IDE\_Projects\libraries\OneWire\util/OneWire_direct_gpio.h:189:44: error: no match for 'operator=' (operand types are 'volatile gpio_out_w1tc_reg_t' and 'uint32_t' {aka 'long unsigned int'})
189 | GPI
и т.д...
esp32 от Espressiv System 2.3.7
OneWire 2.3.8
Подскажите уважаемые, в чем причина, как исправить?
В программировании микроконтроллеров я - новичёк.

