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 ---
- 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 ---
Modérateur : Jérémy
Compilateur MikroC mysteres et boules de suif
- paulfjujo
Expert- Messages : 2589
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
Bonsoir,
Avec un 16F1619 en test, je viens de subir de drole (ou plutot tres bizarres comportement) du compilateur
Les tests tournent autour de ces 4 lignes simples de code
voir les captures d'ecran...
avec lesquelles , le compilateur est OUT ... plus assez d'espace ROM
en supprimant la derniere ligne .. je recupere 14 mots .. et la compilation passe OK
en supprimant 2 derniere lignes => 15 mots
en supprimant 3 derniere lignes => 16 mots
en supprimant les 4 lignes => 66 mots ? <--- pourquoi pas 17 mots ?
et en ecrivant de facon plus directe les bits dans la variabe
j'ai alors 72 mots dispo , donc ecriture bien plus efficace.
et si je supprime cette nouvelle ligne je retombe à 66 mots restant ???
alors que la taille libre restante devrait augmenter au dela de 72 !
j'ai gardé ODCONB=0b01010000;
et mon appli semble tourner correctement . avec 7% free en ROM et 2,6% en RAM free
C'est quand meme étonnant que le rajout de 4 modifs de bit puisse consommer 66 mots !
sur les vieux 16F il y avait le probleme de changement de bank et là ???
nota: j'avais déja remarqué , que plus on s'approche des limites hautes en ROM, plus on peut tomber sur des cas Bizaroides..
Peut etre y a t-il des explication au niveau ASM ?
Avec un 16F1619 en test, je viens de subir de drole (ou plutot tres bizarres comportement) du compilateur
Les tests tournent autour de ces 4 lignes simples de code
voir les captures d'ecran...
Code : Tout sélectionner
ODCONB.B4 = 1; // 1=open drain output SDA
ODCONB.B6 = 1; // 1=open drain output SCL
ODCONB.B5 = 0; // 0=push pull input RX
ODCONB.B7 = 0; // 0=push pull output TX
avec lesquelles , le compilateur est OUT ... plus assez d'espace ROM
en supprimant la derniere ligne .. je recupere 14 mots .. et la compilation passe OK
en supprimant 2 derniere lignes => 15 mots
en supprimant 3 derniere lignes => 16 mots
en supprimant les 4 lignes => 66 mots ? <--- pourquoi pas 17 mots ?
et en ecrivant de facon plus directe les bits dans la variabe
Code : Tout sélectionner
ODCONB=0b01010000;
et si je supprime cette nouvelle ligne je retombe à 66 mots restant ???
alors que la taille libre restante devrait augmenter au dela de 72 !
j'ai gardé ODCONB=0b01010000;
et mon appli semble tourner correctement . avec 7% free en ROM et 2,6% en RAM free
C'est quand meme étonnant que le rajout de 4 modifs de bit puisse consommer 66 mots !
sur les vieux 16F il y avait le probleme de changement de bank et là ???
nota: j'avais déja remarqué , que plus on s'approche des limites hautes en ROM, plus on peut tomber sur des cas Bizaroides..
Peut etre y a t-il des explication au niveau ASM ?
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 45 invités