|
Bas de page | |
---|---|
Auteur | Sujet : mikroc |
Publicité | Posté le 25-05-2015 à 20:42:39 |
nebukadnezare | waw merci "rat de combat" pour ta réponse mais comme je l'ai dit c'est vraiment mon premier code, donc j'ai bien note toutes tes remarques et s'il en reste n’hésite pas, et aussi merci pour le Recodage.
|
nebukadnezare | merci mon pote il super nikel propre ton code .
|
rat de combat attention rongeur méchant! | Je viens juste de voir: Désolé, les 7447 et Co. j'y connais rien. C'est plutôt une question pour un forum d'électronique ça. |
nebukadnezare | y a pas de quoi "rat de combat";
Message édité par nebukadnezare le 01-06-2015 à 02:24:10 |
nebukadnezare | heu; je ne vois pas comment inséré une pièce jointe???? |
rat de combat attention rongeur méchant! | Pour les PJ faut regarder l'aide: http://wiki.atlas.doctissimo.fr/di [...] d%27images (doctissimo? C'est lié à HW.fr ça?) Pour ton code: Sans regarder la logique du code on peut voir que tes boucles for() sont pas bonnes. for (x = 0; x <=50; x--) Tu vois le problème? Ensuite pour ta première boucle tu veux éxecuter en boucle tout le bloc de code qui vient après je suppose? Alors il faut obligatoirement mettre des accolades, sinon seule la première instruction (soit PORTA = 0x17; ) est exécutée en boucle!
Dans le bloc if(appui_bouton(bouton_moins)) on trouve ceci time=count; sauf que time est utilisé null part. Pour la logique tu code faut que je refléchisse un moment. Apparemment tu as un affichage LED multiplexé, le mieux serait de gérer ça avec un timer et une interruption mais là tu risque de galérer et moi je connais pas les PIC... (à suivre) Message édité par rat de combat le 01-06-2015 à 20:52:44 |
nebukadnezare | Touts est dans la code, en attente de vos lire merci
|
Publicité | Posté le 01-06-2015 à 21:11:39 |
nebukadnezare | voici les fichiers source+isis
|
rat de combat attention rongeur méchant! | EDIT: Ce message est la suite de mon dernier, je n'ai pas vu le message 21:11:39 avant de poster! Ici il manque encore des accolades: if (count > TEMPS_MIN) (dans la boucle do-while). En plus cette condition on peut s'en passer. Pour appui bouton moins il y a déjà un test pour voir si on peut décrémenter. Par contre si le temps est écoulé il ne faut pas remettre 1 dans count comme tu le fais ici count=1; mais il faut mettre TEMPS_MIN. Pour le programme entier: Lorsqu'on a appuyé sur start il faut faire s'écouler le temps mais en même temps maintenir l'affichage. Entre parenthèses, pourquoi une boucle do while() plutôt que while(). C'est un truc en rapport avec l'affichage du zéro ou pas non? Je manque de pratique, j'ai un doute là, à voir... Bon, si on prends la méthode naive
Pour maintenir l'affichage on "triche": Au lieu d'attendre une fois 1000ms on attends p.ex. 200 fois 5ms et entre chaque attente on s'occupe de l'affichage. La première approche
À toi de reposter un nouveau code complet, je fais exprès de ne pas le faire. Tout mes dires sont sans garantie, comme je disais je manque de pratique (et l'erreur est humaine...) et je ne peux pas tester le code faute du support hardware! Message édité par rat de combat le 01-06-2015 à 21:55:46 |
rat de combat attention rongeur méchant! | Plusieurs messages en parallèle... Regarde mon dernier message pour "calibrer" ton truc et aussi pour toutes les autres remarques.
|
nebukadnezare | ok ok
|
rat de combat attention rongeur méchant! |
edit: "au début"... mais dans la fonction main()? Ou t'as toujours tes variables globales? Poste donc une version actuelle du code après avoir pris en compte tout mes messages (au cas où tu en aurait raté un avec nos messages qui se sont recoupés). Message édité par rat de combat le 01-06-2015 à 22:12:21 |
nebukadnezare | étincellement, c'est que les chiffres ne défile pas normalement, il sont saccadé, je pence que c'est le simulateur. |
rat de combat attention rongeur méchant! | J'ai rien simulé du tout faute d'avoir le bon logiciel. Fais donc un test sur le hardware réel... |
nebukadnezare | Ok ;il me faut juste la fameuse ligne de mémorisation |
rat de combat attention rongeur méchant! | A désolé, je ne vais pas faire le travail à ta place. Je t'ai donné une indication comment faire, à toi de voir... |
nebukadnezare | ok je vais essaye de moi même on verras ce que sa va donner et je te dit quoi. |
nebukadnezare | voila je crois que c'est bon ,et vraiment vraiment merci "rat de combat" du soutient; voici le code finale, s'il y a des choses en trop n’hésite pas.
|
rat de combat attention rongeur méchant! | Il y a toujours les variables globales, si ce terme ne te dit rien faut regarder dans ton cours, un livre ou sur le net! Il y a aussi deux variables inutilisées. Quand tu en auras fait des variables locales ton compilateur devrait d'avertir, sinon il est mal configuré (faut toujours demander le maximum de warnings!).
Le code est (à mon avis) suffisamment clair (mais je connais les profs qui veulent qu'on commente chaque ligne...).
|
Publicité | Posté le |
Sujets relatifs | |
---|---|
programmation avec compilateur mikroC | Besoin d'aide: Programme sous MikroC |
Acuqisition de données PAr RS232(MIKROC) | mikroc,mplab..? |
Forum MikroC | [MiKroC] Appeller plusieurs procédures\sous programmes |
Plus de sujets relatifs à : mikroc |