Liczba postów: 9
Liczba wątków: 1
Dołączył: Oct 2023
Reputacja:
0
Więc tak po wpisaniu tego co kolega mi napisał #define wyskakuje mi takie cos
C:\Users\darex120\Downloads\esp32-wifi-thermostat-main (1)\esp32-wifi-thermostat-main\esp32-wifi-thermostat\esp32-wifi-thermostat.ino: In function 'void setup()':
esp32-wifi-thermostat:443:13: error: 'BUILTIN_LED' was not declared in this scope
pinMode(BUILTIN_LED, OUTPUT);
^~~~~~~~~~~
exit status 1
'BUILTIN_LED' was not declared in this scope
Liczba postów: 2,373
Liczba wątków: 0
Dołączył: Oct 2017
Reputacja:
240
Napisałeś, że błąd masz builidin_LED , a jak masz błąd o BUILTIN_LED to, to, no nie wiem, ręce mi opadają, ale rozwiązaniem może być linijka:
#define BUILTIN_LED jakiśnumerIO
Gdzie, dopiszę od razu, w miejsce jakiśnumerIO wpisz liczbę, np.
#define BUILTIN_LED 0
Tak, domyślałem się, że pewnie pisałeś z pamięci i miałeś literówkę, ale nigdy nie wiadomo, może ktoś nazwał sobie led inaczej.
Po prostu wybierz płytkę doit, ona ma zdefiniowane już gdzie jest podłączona LED wbudowana na płytce, i sobie skompiluj, skoro u mnie zadziałało, to u Ciebie też powinno jak masz wszystkie inne rzeczy tak samo. Przy kompilacji nie jest ważne co za płytkę masz na biurku, możesz nie mieć żadnej w domu, ani nawet w planach by jakąś kupić.
Liczba postów: 9
Liczba wątków: 1
Dołączył: Oct 2023
Reputacja:
0
23-11-2023, 16:56
(Ten post był ostatnio modyfikowany: 23-11-2023, 17:44 przez darex2023.)
zorbilem tak jak pisałes ale wywaliło na czerwono
pinMode(BUILTIN_LED, OUTPUT);
Płytke dałem DOIT ESP32 DevKit
Liczba postów: 2,373
Liczba wątków: 0
Dołączył: Oct 2017
Reputacja:
240
23-11-2023, 23:45
(Ten post był ostatnio modyfikowany: 23-11-2023, 23:45 przez kaczakat.)
Jesteś niezły, serio. Nadgorliwość jest gorsza od faszyzmu. Jeszcze raz...
Jak masz błąd, że nie ma zdefiniowanego obiektu o nazwie BUILTIN_LED to rozwiązaniem jest dodanie jego definicji.
Jak wybierasz płytkę, która jednak ma taki zdefiniowany obiekt to nie dopisuj bo przy kompilacji wyskakuje ostrzeżenie, że dokonałeś redefinicji.
warning: "BUILTIN_LED" redefined
Wybierz albo płytkę bez tej definicji i ją zdefiniuj, albo płytkę z tą definicją i już jej nie dodawaj.
Akurat ta definicja jest zakręcona, bo typowo w Arduino jest LED_BUILTIN, dlatego w definicji płytki jest zdefiniowane:
Local\Arduino15\packages\esp32\hardware\esp32\2.0.14\variants\doitESP32devkitV1/pins_arduino.h:15: note: this is the location of the previous definition
#define BUILTIN_LED LED_BUILTIN // backward compatibility
U mnie zresztą poza tym ostrzeżeniem kompilacja się powiodła:
Sketch uses 808569 bytes (61%) of program storage space. Maximum is 1310720 bytes.
Global variables use 48196 bytes (14%) of dynamic memory, leaving 279484 bytes for local variables. Maximum is 327680 bytes.
Jak wybiorę płytkę generic ESP32 DEV MODULE i nie podam tej definicji to jest błąd:
'BUILTIN_LED' was not declared in this scope
A po dodaniu kompilacja przebiega OK (są jeszcze inne ostrzeżenia o użytych funkjach, ale to nie przeszkadza, można sprawdzić ewent. problemy po wgraniu).
No i jak dodajesz taką definicję to należy wskazać sensowny port, albo faktycznie z takim ledem na płytce, by nie zrobić kolizji na pinie, który został w programie zagospodarowany inaczej, część pinów jest w tym uC użyta do flash.
Wybierz DOIT i nic nie dopisuj, przecież napisałem, że u mnie skompilowało, jak masz taki sam szkic, biblioteki i core to wyniku musi być taki sam.
Liczba postów: 9
Liczba wątków: 1
Dołączył: Oct 2023
Reputacja:
0
Więc tak po walce z arduino i pomocy kolegi , pomogło odinstalowanie i skasowanie katalogu arduino , zainstalowałem od nowa arduino oraz płytkę ESP32 , I ESPTOOL w wersji 3.3.0 i kompilacja poszła bez problemowo także dzięki wielkie za pomoc.