Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Forum général sur le langage C !

Modérateur : Jérémy

MPLAB XC8 gratuit ..mais
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3257
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#1 Message par paulfjujo » jeu. 16 mai 2024 18:30

bonjour à tous,

je suis toujours sur l'application Chaudiere ..finition des menus LCD ..
mais j'ai été alerte par le contenu du message de compilation :
Memory Summary:
Program space used 15DADh ( 89517) of 18000h bytes ( 91.1%)
Data space used 790h ( 1936) of 2000h bytes ( 23.6%)
Configuration bits used 5h ( 5) of 5h words (100.0%)
EEPROM space used 0h ( 0) of 400h bytes ( 0.0%)
ID Location space used 0h ( 0) of 10h bytes ( 0.0%)

déja 91% ...alors que j'ai encore du code à y mettre dedans !...
j'ai alors lancé Compiler Advisor
qui apres avoir mouliné pendant 5 minutes !..
m'a sorti ce graphique
Compilor_Advisor_Chaudiere_2024-0516.X.jpg


j'ai ensuite essayé de modifier
XC8 Global options
XC8 compiler
Optimistions
Optimisation: level 0 -> passé à 3

mais j'ai obtenu
ce message :
::: advisory: (2051) the current license does not permit the selected optimization level, using optimization level 2

re-modif Optimisation level 3 -> passé à 2

resultat de compilation
=>Memory Summary:
Program space used 1308Dh ( 77965) of 18000h bytes ( 79.3%)
Data space used 780h ( 1920) of 2000h bytes ( 23.4%)
Configuration bits used 5h ( 5) of 5h words (100.0%)
EEPROM space used 0h ( 0) of 400h bytes ( 0.0%)
ID Location space used 0h ( 0) of 10h bytes ( 0.0%)

79% au lieu de 91% usage flash ... :-D c' est mieux ..OUF

:furieux: .. mais on voit bien que XC8 est(tres) bridé .. si on ne paie pas de licence .

J'avais déja bien remarqué que MikroC etait moins gourmand en taille programme
compilait 10 fois plus vite , et nettement plus rapide .. mais bon, j'avais déboursé pres de 240€
pour acheter la licence MikroC Pro.. en 2014 ! valable à vie ... mais la vie de qui ou de quoi ?
fin de vie annoncée .. 2019 ... remplacé par usine à gaz : Necto Studio ... payant bien sur ..

:sifflotte: ...mais MikroC reste encore OK pour les vieux MCU (18F27K42 inclus) mais pas le 18F27Q10..
je suis passé sur MPLAB , seulement pour avoir un code partageable SANS licence .

Donc c'est comme pour les voitures ...
tu es riche .. une ferrari
tu es pauvre .. un 2CV

oops allez, on va faire confiance en la Tortue ( et non au Lièvre)
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aide toi, le ciel ou FantasPic t'aidera

MPLAB XC8 gratuit ..mais
satinas
Expert
Expert
Messages : 1497
Enregistré en : novembre 2015

#2 Message par satinas » jeu. 16 mai 2024 20:04

Bonsoir, le 18F27K42 a 131072 octets de flash.
Pourquoi seulement 98304 octets de mémoire programme dans ton cas, il y a quoi dans la zone data de la flash ?

MPLAB XC8 gratuit ..mais
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3257
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#3 Message par paulfjujo » jeu. 16 mai 2024 20:51

bonsoir Satinas,

j'ai bien des datas en flash mais pas tant que cela ...
98303 ? qui vient d'où ?

Bien Vu, :+1:

idea ! j'ai re-verifié la config du
XC8 linker
memory model :
rom range 0-17FFF ----> 98303 !

coté Pickit4
options for Pickit4
Memories to program
program Memory Range 0 - 1FFFF .. ok
preserve Eeprom Range 310000-3103ff

XC8 linker
memory model : modifié ,passé de 0- 17FFF à 0-1FFFF

recompilation ....
Memory Summary:
Program space used 1308Dh ( 77965) of 20000h bytes ( 59.5%)
Data space used 780h ( 1920) of 2000h bytes ( 23.4%)
Configuration bits used 5h ( 5) of 5h words (100.0%)
EEPROM space used 0h ( 0) of 400h bytes ( 0.0%)

:-D re-re OUF! rassuré !

:sifflotte:
je pense que c'est un reliquat des tests faits à l'epoque
avec fichiers WAV prenant une (tres) grand partie en flash
( test meme avec fichier jusqu'à 110Ko maxi!) ou test DTMF...

Ca n'empêche pas que la version "libre" de MPLAB XC8 rame ....

Merci !

=============================================================================

je viens de voir cette option / solution
Subscription License
Part Number: SW006021-SUB
MPLAB XC8 PRO COMPILER SUBSCRIPTION LICENSE
Quantity: 1
EUR/unit: €40.96
One user per license
License is tied to one workstation at a time
License begins at purchase, not download and activation
:sifflotte: ....mais valable 1 mois seulement !

idea ! si on a plusieurs applications (déja) déverminées à optimiser , ce serait peut etre jouable ...
surtout pour les grosses appli. ou la taille occupée et temps d' exécution sont critiques ...

Pour l'appli Chaudiere, le grafique donné par Compiler Advisor annonce une diminution
de taille programme de 25%
80 K à 60K ... mais rien sur le gain en vitesse d'exécution ?

Enlever MPLAB et le ré-installer pour profiter du Test 60 jours ?
Je ne sais pas si MPLAB laisse des traces indélébiles ..
pour voir la différence de comportement

ou installer un MPLAB tout neuf sur un autre ordi vierge ..
re compiler le projet et comparer ensuite les 2 *.hex obtenus sur les 2 machines..
un avec optimisation niveau 2
l'autre avec optimisation niveau 3..

oops
L'un de vous aurait_il , un ou des, exemples pratiques où le niveau 3
deviendrait indispensable ?
avec obligation de sortir le porte_monaie ! ( ou plutot la CB ou virement )
Aide toi, le ciel ou FantasPic t'aidera


Retourner vers « Langage C »

Qui est en ligne

Utilisateurs parcourant ce forum : Majestic-12 [Bot] et 2 invités