Stránka 1 z 1

kompilace

Napsal: 11 čer 2018, 14:55
od alexis
Ahoj, po delší době jsem se rozhodl vytvořit zase něco co nebude jen takové to blbnutí bez účelu.

Nicméně pokud vytvořím funkci která se nachází pod loopem ale chci ji použít třeba setupu tak mi to vyhodí hlášku že funkce nebyla deklarována.
Tak ji deklaruji na setupem takto :void nejakaFunkce(char hodnota); a poté je už vše v pořádku. Ale proč se na to ptám.

Některé mé starší programy mám psané jak popisuji ale tuto chybu mi to nevyhazuje. tak se ptám proč. Někde jsem četl že to je bug který měl být opraven někdy ve verzi 1.6.x

Re: kompilace

Napsal: 11 čer 2018, 17:09
od SkullKeep
1. jakou verzi IDE používáš?
2. jak to deklaruješ a jestli z toho lezou nějaké proměnné?
3. Já to zkusil takhle

Kód: Vybrat vše

.
.
.
.
void setup(){
neco(); // použití funkce
.
.
.
.
.
void loop()
{
.
.
.
.
.
.}

void neco(){ //deklarace funkce
}
toto mi nehlásí chybu ve verzi 1.8.5.

Re: kompilace

Napsal: 11 čer 2018, 17:18
od gilhad
Ono je to prece jen Cecko a to potrebuje funkci mit driv deklarovanou, nez ji pouzijes, uz kvuli tomu, ze se muzes mit vic funkci se stejnym jmenem a poctem parametru, ktere se lisi jen typem tech parametru a prekladas ma vybrat tu nejvhodnejsi.

IDE se sanozrejme snazi predstirat, ze nic jako pravidla jazyka neexstuje a obcas se mu z jednodussich pripadech podari ty funkce nejak uhodnout a pridat deklarace az pri kompilaci a obcas holt taky ne..

Ja davam prednost tomu to psat spravne, jak to vyzaduje pouzity jazyk pred tim, aby nejake IDE zkouselo nejak hadat, co kam potaji nacpat aby to ten pouzity kompilator donutilo zkousnout defakto blbe napsany program ...

Re: kompilace

Napsal: 11 čer 2018, 18:09
od alexis
SkullKeep píše:
11 čer 2018, 17:09
1. jakou verzi IDE používáš?
2. jak to deklaruješ a jestli z toho lezou nějaké proměnné?
3. Já to zkusil takhle

Kód: Vybrat vše

.
.
.
.
void setup(){
neco(); // použití funkce
.
.
.
.
.
void loop()
{
.
.
.
.
.
.}

void neco(){ //deklarace funkce
}
toto mi nehlásí chybu ve verzi 1.8.5.

Přesně jak si to napsal to v polovině případů nejede. jinak používám 1.8.6. Jinak deklarace která by měla byt správně je takto

Kód: Vybrat vše

.
.
.
.

void neco();

void setup(){
neco(); // použití funkce
.
.
.
.
.
void loop()
{
.
.
.
.
.
.}

void neco(){ //deklarace funkce
}

Re: kompilace

Napsal: 03 úno 2019, 22:28
od antoans
Ahoj mám takový problém vždy když chci nahrát jakýkoli projekt na desku tak při vytváření kompilace se mi objeví tato chyba Obrázekv čem by mohl být problém? Windousy 10 ovladače mám CH340
při zapojení usb B ledka power svítí červeně a ledka loaderu blika tak v sekundových intervalech.Deska je Arduino mega 2560.
IDE 1.8.8 a 1.8.5

Re: kompilace

Napsal: 03 úno 2019, 22:45
od martinius96
Nemôže nájsť kompilátor.
Podľa mňa je problém v tom, že to umiestnenie má medzery a taktiež to hľadá v zložkách, tak je tam 2x \.
Takže si myslím, že je problém v ceste k nemu.

Re: kompilace

Napsal: 04 úno 2019, 21:37
od antoans
martinius96 píše:
03 úno 2019, 22:45
Nemôže nájsť kompilátor.
Podľa mňa je problém v tom, že to umiestnenie má medzery a taktiež to hľadá v zložkách, tak je tam 2x \.
Takže si myslím, že je problém v ceste k nemu.
Ano mněl jsi pravdu byla to dlouhá cesta k souboru díky za radu.

Re: kompilace

Napsal: 05 úno 2019, 22:10
od OtaS
Ahoj, mám arduino nano, zatím jsem si zkoušel jen blikání, abych zjistil, jestli to zvládnu propojit s PC. Podařilo se. Poté jsem ale zkusil trochu složitější program (bliká v morseovce SOS), ale při kompilaci mi háže tuto chybu:

Arduino: 1.8.8 (Windows Store 1.8.19.0) (Windows 10), Vývojová deska: "Arduino Nano, ATmega328P (Old Bootloader)"

C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware -tools C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\tools-builder -tools C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr -built-in-libraries C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\libraries -libraries C:\Users\sedla\OneDrive\Dokumenty\Arduino\libraries -fqbn=arduino:avr:nano:cpu=atmega328old -ide-version=10808 -build-path C:\Users\sedla\AppData\Local\Temp\arduino_build_607939 -warnings=none -build-cache C:\Users\sedla\AppData\Local\Temp\arduino_cache_791319 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.avr-gcc-5.4.0-atmel3.6.1-arduino2.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.arduinoOTA-1.2.1.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.avrdude-6.3.0-arduino14.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr -verbose C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\examples\01.Basics\Blink\Blink.ino
FindFirstFile C:\Users\sedla\AppData\Local\Temp\arduino_cache_791319: The system cannot find the file specified.

Nastala chyba při kompilaci u desky Arduino Nano.

Kde může být chyba, když mi to předtím fungovalo? Díky za jakoukoliv radu.
OtaS