Založen: Feb 14, 2005 Příspěvky: 9090 Bydliště: Brno (JN89GF)
Zaslal: so červenec 18 2020, 11:42 Předmět: Podivná chyba v MPLABu
Psal jsem program ve starší verzi 3.45, všechno fungovalo jak mělo. Program zabíral ani ne polovinu místa v paměti. Pak jsem ale kvůli novýmu programátoru přešel na novější verzi 5.35 a začly se dít věci. Program najednou zabírá skoro dvojnásobek, při kompilaci spousty warningů a navrch nefunguje správně.
Zkoušel jsem i založit novej projekt a do něj naimportovat původní netknutý soubory ze starýho a je to úplně stejný. Jakmile dám kompilaci, strašně naroste velikost a hotovo. Zdrojových souborů jsem se ani nedotknul. Nechápu, co se děje. XC8 kompiler se taky měnil z 1.38 na 2.1.
Netuší někdo co s tím?
sice ti nepomuzu a asi tohle nechces slyset , mam PK 2/3 a nepouzivam je pres mplab ,jakejkoliv,pouzivam je pres ty samotny aplikace co sou k nim, a asi mas na mysli MPLAB X ? podle screenu, porad jedu pres MPLAB 8.92 a nahravam hex pres ty aplikace, pokud uz teda musim ale nechci pouzit MPLAB X tak nahravam pres MPLAB IPE, IPE by melo umet i ten PK4.... , pokud pojde neni duvod pouzivat novejsi MPLABX...
- Zkus se podívat s jakými parametry optimalizace IDE spouští kompilátor. Např. u Atmel Studio 7.0 je to zhruba -O1, -O2, -O3 nebo -Os. Stejný kód po kompilaci udělá jinou velikost výstupního .hex
- Zkus stáhnout nějaký jednoduchý příklad od Microchipu z jejich AN a zkompilovat. Zda ti to bude dělat stejný problém.
Založen: Feb 14, 2005 Příspěvky: 9090 Bydliště: Brno (JN89GF)
Zaslal: so červenec 18 2020, 21:12 Předmět:
2 MiloPS3: dřív jsem to taky dělal takto, PICkit2 nijak zvlášť s MPLABem nespolupracoval, ale protože jsem chtěl zkusit něco novějšího, musel jsem koupit PICkit4. Ten už žádnou separátní aplikaci, kromě IPE, nemá.
Zkusím asi nejdřív kouknout na ty parametry, co psal bdn. Pak nahraju tu starší XC8 a uvidíme. Když nic nepomůže, tak napíšu úplně jednoduchej program na testy a budu do něj přidávat části toho mýho, někde to možná pak významně nabude a budu alespoň vědět, co se mu kde nelíbí. V nejhorším mám schovanou tu starší verzi, kde jsem to rozepsal.
Ono to i přes tu velikost v podstatě funguje, jen z nějakýho důvodu blbne čtení z EEPROM, to musím ještě vyzkoušet, kde je problém. Možná to s tím vůbec nesouvisí.
Jinak je to MPLAB X a musím teda říct, že i když mi celkem vyhovuje, má to nějaký mouchy. Občas háže nesmyslný chyby v kódu třeba a jiný. Na webu je těch much popsaných dost.
Založen: Nov 20, 2012 Příspěvky: 1453 Bydliště: Praha
Zaslal: po červenec 20 2020, 9:59 Předmět:
A nezměnily se s novou verzí i standardní knihovny ? Vyzkoušel bych přeložit nějaký "Hello world" ve staré a nové verzi. Hned bude vidět jestli to tím není. Za nárůstem také může být zarovnání v paměti, ale to se asi nepoužívá.
Založen: Feb 14, 2005 Příspěvky: 9090 Bydliště: Brno (JN89GF)
Zaslal: po červenec 20 2020, 10:09 Předmět:
To je klidně možný, že se změnily, uvidíme. I v té starší verzi jsem zaznamenal podivný nenadálý změny velikosti při některých příkazech. Třeba blbý printf, když vypisuju jeden řetězec, chová se to dobře, ale když v rámci jednoho příkazu vypisuju dva řetězce, nesmyslně naroste spotřeba paměti programu. Jak bude čas, vrhnu se na to.
Založen: Feb 14, 2005 Příspěvky: 9090 Bydliště: Brno (JN89GF)
Zaslal: čt srpen 13 2020, 20:12 Předmět:
Tak jsem na to přišel, stačilo v configu XC8 změnit standard C99 na C90. Starší MPLAB asi ani C99 neuměl, zbavil jsem se tím taky nesmyslných (podle mě) warningů při překladu. Taky jsem dal navrdo optimalizaci na velikost a teď je to dokonce ještě i menší, než ve staré verzi.
Mám pocit, že se vývojáři začínají v tech gigabajtech instalací ztrácet, momentálně jsem po dlouhé době zkusil v mplabx a ipe programátoru zapnout pickit3(klon), Win7 ho jakž takž vidí, ale oba programy ani náhodou.
Když jsem nainstaloval staré verze z dob XP - programátor pickit 3.1 nebo mplab 8.9, tak ty je vidí a pracují. Asi se po nějakém win updatu někde něco podělalo......
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.