Podivná chyba v MPLABu
Moderátor: Moderátoři
- forbidden
- Příspěvky: 8808
- Registrován: 14 úno 2005, 01:00
- Bydliště: Brno (JN89GF)
- Kontaktovat uživatele:
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?
Dík
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?
Dík
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.
- Zkus stáhnout nějaký jednoduchý příklad od Microchipu z jejich AN a zkompilovat. Zda ti to bude dělat stejný problém.
- forbidden
- Příspěvky: 8808
- Registrován: 14 úno 2005, 01:00
- Bydliště: Brno (JN89GF)
- Kontaktovat uživatele:
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.
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.
- forbidden
- Příspěvky: 8808
- Registrován: 14 úno 2005, 01:00
- Bydliště: Brno (JN89GF)
- Kontaktovat uživatele:
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.
- forbidden
- Příspěvky: 8808
- Registrován: 14 úno 2005, 01:00
- Bydliště: Brno (JN89GF)
- Kontaktovat uživatele:
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.
- Přílohy
-
- config.gif
- config
- (36.22 KiB) Staženo 145 x
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......
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......