un petit programme pour temporisateur-decompte avec un AT90S1200 - ASM - Programmation
Marsh Posté le 12-01-2004 à 15:09:19
si c pour faire le malin c pas la peine
Marsh Posté le 12-01-2004 à 16:04:16
bentaih a écrit : si c pour faire le malin c pas la peine |
c'est pas la peine de quoi ?
tu te rends compte du topic que tu viens d'ouvrir ?
- aucune explication,
- "faites moi ce programme et démerdez vous"
- surement une demande de TP, ce qui est interdit sur ce forum
- etc...
et tu te permets d'engueuler quelqu'un qui te répond sur le même ton que tu utilises ? pardon mais j'assimile çà à du foutage de gueule.
si tu ne donnes pas plus d'infos d'ici ce soir, je ferme ton topic.
Marsh Posté le 12-01-2004 à 17:46:56
ca n'a rien a avoir avec tt ca c pas un tp de un et de deux c un travail c une plaque que j'ai construit et que le programme que j'ai trouvé ne marche pas trés bien dessus
alors je demande pour voir s'il y a pas qq qui a travailler ce genre de programmme pour faire une petite comparaison
une autre chose c pas parceque tu me dis que tu vas fermer mon topic que je te reponds car j'en ai rien a foutre de ce que tu penses ou de quoi t'as envie
Marsh Posté le 12-01-2004 à 17:51:04
encore une chose c pas de l'aide humanitaire que présente ce forum alors ca sert a rien de faire des menace d'ejecter les gens des frums y'en des milliers sur le net
alors continu a partager tonsavoir avec d'autre qui ont en peut etre plus que toi ou moins que toi
c a ca que sert un forum de discussion
Marsh Posté le 12-01-2004 à 18:12:23
Disons que je pense que ça ne se fait pas trop de juste demander un programme tout chaud. J'ai l'impression d'être en examen avec le sujet que vient de distribuer le prof.
Ca donne l'impression que tu n'as fait aucun effort et que tu délègues le boulot aux gens de ce forum.
Au moins, explique nous en détails ce que tu veux, montre nous ce que tu as déjà fait, les problèmes que tu as rencontrés ... bref montre nous que tu n'es pas venu les mains dans les poches, les doigts de pieds en éventail. Et puis même, cette considération mise à part, ton expérience sur ce problème sera sûrement d'un grand secours pour ceux qui voudront (pourront surtout) t'aider, qui n'auront donc pas ainsi tout à refaire.
Voilà A+
Marsh Posté le 12-01-2004 à 19:04:20
un petit programme pour gestion de fichiers sous linux
merci du fond du coeur
Marsh Posté le 12-01-2004 à 19:12:26
un petit programme pour générer des tangentes pour mon plug-in d'export 3dsmax
merci du fond du coeur
Marsh Posté le 12-01-2004 à 19:14:28
un generateur de cathedrale gothique
merci du fond du coeur
(bjone : tangente au D3DX et basta )
Marsh Posté le 12-01-2004 à 19:16:54
(ah ouais, même pas regardé )
sinon un matérialiseur de pensées ça serait pas mal ?
merci du fond du coeur
Marsh Posté le 12-01-2004 à 19:20:02
bentaih >> sinon tout ça c'est pour te faire comprendre que tu poses une question vague sur du hardware dont l'environnement n'est même pas décrit....
Marsh Posté le 12-01-2004 à 19:41:10
sinon pour ceux que ça interresse, c'est de ça dont parle le monsieur:
http://www.atmel.com/dyn/resources [...] OC0838.PDF
un microcontrôleur RISC qui contients 1Ko de mémoire flash pour le code (512 instructions de 16bits), 64 octets en eeprom (pas de ram, pile matérielle limitée), 32 registres 8 bits.
Marsh Posté le 12-01-2004 à 19:46:20
bjone a écrit : sinon pour ceux que ça interresse, c'est de ça dont parle le monsieur: |
Sans les affectations des entrées/sorties (donc sans le schéma de sa carte), sans plus de précision, on ne peut rien faire.
De toutes façons, vu comment c'est demandé
Marsh Posté le 12-01-2004 à 20:13:33
toutafé...
mais d'un coté si c'est pour de la temporisation, et si l'on connaissait la fréquence d'horloge, on devrait pouvoir au moins écrire une boucle d'attente basique bien crade ou jouer avec le Timer/Counter0....
Marsh Posté le 13-01-2004 à 11:49:01
bentaih a écrit : ca n'a rien a avoir avec tt ca c pas un tp de un et de deux c un travail c une plaque que j'ai construit et que le programme que j'ai trouvé ne marche pas trés bien dessus |
Dans ce cas c'est tellement dur de formuler correctement ta question, plutot que de la mettre dans le sujet, puis d'imaginer que tout le monde aura compris ce que tu demandes ?
C'est tellement dur d'écrire "Bonjour à tous, ayant réalisé un programme pour temporisateur-décompte avec un AT90S1200, je me rends compte qu'il fonctionne finalement assez mal.
L'un d'entre vous a t'il déjà réalisé ce genre de programme, afin de pouvoir me donner des conseils et m'aider à faire fonctionner le mien correctement ? Merci par avance."
Tu postes éventuellement un bout de ton source, et puis voilà, ça t'aurait évité de te faire enflammer et tout le monde était content.
Marsh Posté le 13-01-2004 à 11:52:19
bentaih a écrit : encore une chose c pas de l'aide humanitaire que présente ce forum alors ca sert a rien de faire des menace d'ejecter les gens des frums y'en des milliers sur le net |
Exactement ! Y'a des milliers de forums sur le net, et si tu m'en trouves un qui arrive à te répondre avec la même quantité d'infos que tu donnes, je te tire mon chapeau !
Quant à la "menace", elle vient du fait que vu le peu d'infos que tu donnes, on peut penser que tu demandes un programme tout fait pour un exo/TP, ce qui, si tu lis les règles, est interdit. Donc plutot que de fermer ton sujet sans autre forme de procés, et dans le doute, j'ai laissé ouvert mais en te prévenant néanmoins.
Marsh Posté le 13-01-2004 à 14:42:50
Harkonnen a écrit : |
bon ok puis tt le monde prends ma question mal a ce point je vous reexplique tt a zero et je m'excuse si ma ma question etait si mal formuler
alors la carte que je viens de faire est un temporisateur a decompte a deux afficheur 7 segments avec un buzzer se declanchant a la fin de decompte le hard est fini et tester donc de ce coté ya pas de prob mais c le prog concu pour la carte ne marche pas qd je l'ai charger ds mon at90S1200
Marsh Posté le 13-01-2004 à 14:46:46
le schema et le board sont fait par eagle 4.11 si qq veut jeter un coup d'oeil je peux lui envoyer par mail les deux avec le code source que j'ai trouvé aussi sauf qu'il est un peu long
Marsh Posté le 13-01-2004 à 14:47:35
j'attends vos reponse plus plus en discuter
Marsh Posté le 13-01-2004 à 18:22:46
C'est déjà mieux
Par contre, si tu veux compléter un message, tu peux l'éditer en cliquant sur l'icône appropriée. C'est beaucoup mieux que de poster plusieurs messages à la suite.
Sinon, pour ton problème : le mieux est que tu donne le code source ici (en prenant bien soin de le placer entre des balises C/C++), ou que tu indique l'URL qui permet de le récupérer. Même si nous ne connaissons pas les spécificités du langage d'assemblage Atmel, nous pourrons peut-être essayer de faire quelque chose. Mais il faut bien comprendre que tu dois mâcher le travail le plus possible si tu veux être aidé (en donnant des liens vers les documentations/datasheets nécessaires, etc.).
Marsh Posté le 13-01-2004 à 18:52:12
donc ton truc y décompte les secondes, et affiche le temps restant sur les affichages 7 segments ?
Marsh Posté le 13-01-2004 à 21:53:33
bjone a écrit : donc ton truc y décompte les secondes, et affiche le temps restant sur les affichages 7 segments ? |
exactement c en fait des 7 segement
et le decomptage et terminer par le declanchement d'un buzzer lampre.....
Marsh Posté le 13-01-2004 à 21:59:18
dans 10min je vais mettre mon code source je fini encore qq truc dessus
Marsh Posté le 13-01-2004 à 22:44:37
printf a écrit : C'est déjà mieux |
voici mon code source que j'ai trouvé j'ai tt verifier pour moi sa semble trés logique mais ca foncitione pa
alors c quoi votre avis la dessus ?
j'ai l'impression qu'il manque qq chose mais en suivant la logique j'arive pas a trouver ?
Marsh Posté le 13-01-2004 à 22:45:40
bentaih a écrit : |
Il est où le code source
Marsh Posté le 13-01-2004 à 22:47:39
printf a écrit : C'est déjà mieux |
oooooooops j'ai oublier de la coller ds le message précédent
le voila il est un peu long
.DEF SAVE_STATUS = R1 ;
.DEF EERTMP = R2 ;
.DEF EE_DRDS = R3 ;
.DEF COUNTER = R16 ;
.DEF COUNTER_NEXT = R17 ;
.DEF COUNTER_NEXT1 = R20 ;
.DEF FLASH_FLAG = R21 ;
.DEF COUNT1 = R18 ;UNITS OF MINUTES
.DEF COUNT2 = R19 ;TENS OF MINUTES
.DEF COUNT1_RESULT = R20
.DEF COUNT2_RESULT = R21
.DEF DURATION = R22
.DEF DURATION1 = R23
.DEF SECONDS = R24
;
.DEF TEMP = R25
.DEF FLAG_1 = R26
.DEF TIME_OUT = R28 ;R27
;
.DEF REG_LOW = R30
.DEF REG_HIGH = R31
;===========================================================================
.EQU ALARM_SET = 01 ;
.EQU LED_SET = 01 ; IDENTICAL TO "ALARM_SET"
;==========================================================================
.include "1200def.inc"
;============================================================================
.ESEG
; ('LPM' DOESN'T WORK ON 1200AVR CHIP.)
; TO BE LOADED IN EEROM MANUALLY OR AUTOMATICALLY VIA AVR PROGRAMMER SOFTWARE
; - WE DID THE FORMER! (EEROM ADDRESS $0000 - $000A
TABLE:
;============================================================================
; 0 1 2 3 4 5 6 7 8 9 -
;----------------------------------------------------------------------------
.DB $3F,$06,$5B,$4F,$66,$6D,$7D,$07,$7F,$67,$01
;============================================================================
.CSEG
.ORG 0
RJMP RESET ;Reset Handle
.ORG 1
RETI
.ORG 2
RJMP TIMER0_INT_ROUTINE
;===========================================================================
.ORG $0030
RESET:
LDI TEMP,0B00000100 ;DIV 256
OUT TCCR0,TEMP ;
SER TEMP ;PORTB OUTPUTS
OUT DDRB,TEMP ;
LDI TEMP,0B11100011 ;BIT 0,1,5,6, = O/P; BIT 7 = N/A
OUT DDRD,TEMP ;BIT 2,3,4 = I/P
LDI TEMP, 2 ;Set the TOIE0 bit to enable
OUT TIMSK, TEMP ;the Timer0 Interrupt to occur
CLI ;DISABLE INTERRUPTS
LDI TIME_OUT,$00 ;COUNT FOR SECOND UP
CLR SECONDS ;SECONDS COUNT
CLR FLAG_1 ;
SBI PORTD,ALARM_SET ;TURN OFF LED
SBI PORTB,7 ;TURN OFF BUZZER
;============================================================================
CLR COUNT1 ; CLEAR LED DISPLAY
CLR COUNT2 ; BOTH DIGITS
;============================================================================
WAIT_FOR_KEYPRESS:
CLI ;
CLR FLAG_1 ;
SBI PORTD,ALARM_SET ;LED OFF
SBIS PIND,4 ;
RCALL INC_DISP_1 ;
;
SBIS PIND,3 ;
RCALL INC_DISP_2 ;
;
RCALL GET_SEVEN_SEGMENT ;
RCALL DISPLAY_IT ;
SBI PORTB,7 ;TURN OFF BUZZER
SBIC PIND,2 ;
RJMP WAIT_FOR_KEYPRESS ;
WAIT:
RCALL GET_SEVEN_SEGMENT ;
RCALL DISPLAY_IT ;
SBI PORTB,7 ;TURN OFF BUZZER
;
SBIS PIND,2 ;
RJMP WAIT ;
LOOP_LOOP:
CBI PORTD,ALARM_SET ;
SEI ;
SER FLAG_1 ;
;
WAIT_HERE:
CLI
CBI PORTD,LED_SET ;
RCALL GET_SEVEN_SEGMENT
RCALL DISPLAY_IT
SBI PORTB,7 ;TURN OFF BUZZER
SEI
NOP
RCALL DELAY
RJMP WAIT_HERE ;
;============================================================================
INC_DISP_1:
INC COUNT1
CPI COUNT1,$0A
BREQ MAKE_COUNT1_ZERO
RJMP LOOP_ONE
MAKE_COUNT1_ZERO:
CLR COUNT1
LOOP_ONE:
RCALL DELAY
SBIS PIND,4
RJMP LOOP_ONE
RET
;============================================================================
INC_DISP_2:
INC COUNT2
CPI COUNT2,$0A
BREQ MAKE_COUNT2_ZERO
RJMP LOOP_TWO
MAKE_COUNT2_ZERO:
CLR COUNT2
LOOP_TWO:
RCALL DELAY
SBIS PIND,3
RJMP LOOP_TWO
RET
;============================================================================
;============================================================================
;================ INTERRUPT ROUTINE =======================================
TIMER0_INT_ROUTINE:
CLI ;DISABLE INTERRUPT
;
SBI PORTB,7 ;TURN OFF BUZZER
CBI PORTD,ALARM_SET ;LED ON
RCALL DISPLAY_DIGITS ;SHOW IT ON LED DISPLAY
;
RCALL CONVERT_TO_BCD ;
;
CPI FLAG_1,$FF ;START BUTTON PRESSSED?
BRNE ALARM_NOT_SET_YET ;
;
CBI PORTD,ALARM_SET ;LED OFF
;
;
CPI COUNT1, 00 ;
BRNE NOT_ZERO ;
CPI COUNT2, 00 ;
BRNE NOT_ZERO ;
RJMP TIME_UP ; EXIT WITH INTERRUPT DISABLED
ALARM_NOT_SET_YET:
NOT_ZERO:
SEI
RETI
;============================================================================
CONVERT_TO_BCD:
IN SAVE_STATUS, SREG ;
KEEP_GOING:
SUBI COUNT1, $0A ;
BRCS LESS_THEN_TEN ;IF $0A > COUNT1, CARRY IS SET!
;IF COUNT1 > $0A CONTINUE
SUBI COUNT2,$0A ;UPPER BYTE < 10 ?
BRCS LESS_THEN_TEN_AS_WELL ;WAS BRCC
IS_ZERO:
OUT SREG, SAVE_STATUS ;
RET ;
LESS_THEN_TEN_AS_WELL:
LDI TEMP, $0A ;
ADD COUNT2,TEMP ;
RJMP KEEP_GOING ;
LESS_THEN_TEN:
LDI TEMP, $0A ;
ADD COUNT1,TEMP ;
OUT SREG, SAVE_STATUS ;
RET
;============================================================================
GET_SEVEN_SEGMENT:
;
IN SAVE_STATUS, SREG ;
LDI TEMP, TABLE - 1 ;
ADD TEMP,COUNT1 ;
OUT EEAR, TEMP ; ADDRESS OF TABLE
RCALL EEREAD_IT ;GET BYTE FROM EEPROM
MOV COUNT1_RESULT,EE_DRDS ; V COUNT1_RESULT,EE_DRDS ;
;
;
LDI TEMP, TABLE - 1 ;
ADD TEMP,COUNT2 ;
OUT EEAR, TEMP ; ADDRESS OF TABLE
RCALL EEREAD_IT ;GET BYTE FROM EEPROM
MOV COUNT2_RESULT,EE_DRDS ;
OUT SREG,SAVE_STATUS ;
RET
;============================================================================
DISPLAY_IT:
IN SAVE_STATUS, SREG ;
COM COUNT1_RESULT ; LOW BYTE
COM COUNT2_RESULT ; HIGH BYTE
OUT PORTB,COUNT1_RESULT ; DISPLAY DIGIT1
SBI PORTB,7 ; TURN OFF BUZZER
CBI PORTD,5 ; TURN ON DIGIT 1
SBI PORTD,6 ; TURN OFF DIGIT 2
;
RCALL LONG_DELAY ;
;
OUT PORTB,COUNT2_RESULT ; DISPLAY DIGIT 2
SBI PORTB,7 ; BUZZER OFF
SBI PORTD,5 ; TURN OFF DIGIT 1
CBI PORTD,6 ; TURN ON DIGIT 2
RCALL LONG_DELAY ;
;
OUT SREG, SAVE_STATUS ;
RET
;
;=============================================================================
;=============================================================================
DISPLAY_DIGITS:
;
IN SAVE_STATUS, SREG ;
CPI FLAG_1,$FF ;START BUTTON PRESSSED?
BRNE ALARM_NOT_SET ;
;
INC TIME_OUT ;
CPI TIME_OUT, 61 ;1 SECOND
BREQ TIMER_OUT ;
;
ALARM_NOT_SET:
OUT SREG, SAVE_STATUS ;
RET
TIMER_OUT:
CLR TIME_OUT ;1 SEC UP
INC SECONDS ;
CPI SECONDS,60 ;
BREQ MINUTE_UP ;
OUT SREG, SAVE_STATUS ;
RET
;============================================================================
; BCD ROUTINE HERE
;
MINUTE_UP: ;
CLR SECONDS ;1 MINUTE UP
SUBI COUNT1, 01 ;
BRCS LESS_THEN_1 ;IF 01 > COUNT1, CARRY SET
OUT SREG, SAVE_STATUS ;
RET ;
LESS_THEN_1:
SUBI COUNT1, 06 ;
CPI COUNT2, 00 ;IS COUNT2 ZERO?
BREQ COUNT2_ZERO
SUBI COUNT2, 01 ;
COUNT2_ZERO: ;
OUT SREG, SAVE_STATUS ;
RET ;
;============================================================================
TIME_UP:
CLI ;
CLR COUNTER ;
CLR COUNTER_NEXT ;
CLR COUNTER_NEXT1 ;
CBI PORTD,LED_SET ;LED ON
CBI PORTB,7 ;BUZZER ON
TIME_UP_1:
CLI ;
;
CPI FLASH_FLAG, $FF ;IF DISPLAY OFF
BREQ TIME_UP_2 ;- KEEP IT OFF
; ;ELSE ON!
CBI PORTD, LED_SET ;LED ON.
LDI COUNT1, $3F ;FLASH DISPLAY
COM COUNT1 ;SEGMENT 'G' ON.
OUT PORTB, COUNT1 ;
;
TIME_UP_2:
CBI PORTB, 7 ;BUZZER ON
RCALL LONG_DELAY_1 ;
RCALL LONG_DELAY_1 ;
RCALL LONG_DELAY_1 ;
RCALL LONG_DELAY_1 ;
RCALL LONG_DELAY ;
;
INC COUNTER ;
CPI COUNTER, $FF ;
BREQ NEXT_COUNTER ;
RJMP TIME_UP_1 ;
NEXT_COUNTER:
CLR FLASH_FLAG ;
CLR COUNTER ;
INC COUNTER_NEXT ;
CPI COUNTER_NEXT, $02 ;
BRNE TIME_UP_1 ;
;
NEXT_COUNTER1:
SER FLASH_FLAG ;
CLR COUNTER_NEXT ;
SBI PORTD,ALARM_SET ;LED OFF
SER COUNT1 ;DISPLAY OFF
OUT PORTB, COUNT1 ;
;
SBI PORTB, 7 ;BUZZER OFF
INC COUNTER_NEXT1 ;
CPI COUNTER_NEXT1, $10 ;
BRNE TIME_UP_1 ;
;
;
SBI PORTD,ALARM_SET ;LED OFF
SER COUNT1 ;DISPLAY OFF
OUT PORTB, COUNT1 ;
SBI PORTB,7 ;TURN OFF BUZZER
;
;
SLEEP ;
STOPP:
RJMP STOPP ;
;============================================================================
DELAY:
LDI DURATION,$FF
COUNT_DOWN:
DEC DURATION
CPI DURATION,$00
BRNE COUNT_DOWN
RET
;=============================================================================
LONG_DELAY:
LDI DURATION,$FF
LDI DURATION1,$0A
LOOP_DELAY:
DEC DURATION
CPI DURATION,0
BRNE LOOP_DELAY
;
DEC DURATION1
CPI DURATION1,0
BRNE LOOP_DELAY
RET
;=============================================================================
;
LONG_DELAY_1:
LDI DURATION,$FF
RCALL COUNT_DOWN
;
RET
;==============================================================================
EEREAD_IT:
IN EERTMP, EEAR ;GET ADDRESS
INC EERTMP ;NEXT ADDRESS
OUT EEAR,EERTMP ;OUTPUT ADDRESS
SBI EECR,EERE ;EEPROM READ STROBE
SBI EECR,EERE ;STROBE AGAIN
IN EE_DRDS,EEDR ;GOT DATA.
RET
;
Marsh Posté le 14-01-2004 à 00:14:01
alors: (on est parti pour se prendre la tête )
c'est quoi l'ordre de grandeur de ta tempo vu COUNT1 et COUNT2, tu peux aller jusqu'a 99 minutes ?
le code tu l'as trouvé sur un site, ou t'as tout écrit toi même ? tu as l'algo ? (ça évitera que je refasse du reverse engineering)
y'a un truc qui se passe ou pas ?
=> état initial (ça passe l'init, t'as un truc d'affiché par les affichages 7 segments), état au moment du crash ?
Marsh Posté le 14-01-2004 à 01:48:25
bjone a écrit : alors: (on est parti pour se prendre la tête ) |
oui efectivement ma tempo peux aller juqqu'a 99 min
l'algorytme je l'ai sur papier je le ferais sur word et je vous l'envoi demain
en ce concerne le programme c un code sur pris sur le net normalement c celui concu opur aller avec ma carte mais c marche pas
quand je pbranche ma carte les afficheur s'allume entierement( 88)
en apuiyant sur le boutan concu pour choisir le nombre de minutes voulu l'un des afficheur clignote tt en gardant le (8)
et qd j'essaye de lancer le decomptage (autre bouton )le dexieme afficheur affiche (0) et commence a clignoter
tu vois c un peu le bordel
ca me rend fou j'arrive pas a trouver l'erreur
demain j'envois l'algo et d'autre trucs que j'ai trouvé
merci
Marsh Posté le 14-01-2004 à 16:14:15
bjone a écrit : alors: (on est parti pour se prendre la tête ) |
le logigramme est fait mais j'arrive pas a l'envoer comme message (ce qui est normal d'ailleurs)il est en format word je te l'envoi sur ton mail
ps si qq d'autre veut y jeter un coup d'oeil il peut me faire signe et je lui envois sur son mail
Marsh Posté le 16-01-2004 à 13:14:43
salut a tous c encore moi voila je vous passe les algo
il sont sur http://bentaih.site.voila.fr/algo.htm
Marsh Posté le 16-01-2004 à 13:20:07
bjone a écrit : bon on va pouvoir t'aider un peu mieux... |
merci
si vous voulez savoir qq chose d'autre sur ma carte
je serais connecté tte la journnée voir la soirée aussi
Marsh Posté le 16-01-2004 à 13:22:34
bon, moi ce que je te conseillerai, c'est de te servir du buzzer pour voir quand est-ce que ça vautre...
Marsh Posté le 16-01-2004 à 13:25:09
bjone a écrit : bon, moi ce que je te conseillerai, c'est de te servir du buzzer pour voir quand est-ce que ça vautre... |
utiliser le buzzer pour savoir quoi?
j'ai pas compris le dernier mot
Marsh Posté le 16-01-2004 à 13:25:29
par contre LONG_DELAY_1 et DELAY c'est la même chose hormis le call/ret qui rajoutent quelques cycles, mais vu que c'est hors de la boucle d'attente ils sont un peu "neutres" (c'est pas 3µs qui va changer grand chose )
Marsh Posté le 16-01-2004 à 13:27:46
bjone a écrit : par contre LONG_DELAY_1 et DELAY c'est la même chose hormis le call/ret qui rajoutent quelques cycles, mais vu que c'est hors de la boucle d'attente ils sont un peu "neutres" (c'est pas 3µs qui va changer grand chose ) |
donc je suprime l'une des deux ?(delay ou delay1
Marsh Posté le 16-01-2004 à 13:34:36
bentaih a écrit : |
bin tu actives le buzzer au début, puis après, etc, etc, ça te fera une traçe de debuggage..
tu as:
SBI PORTB,7 ;TURN OFF BUZZER
pour couper le buzzer apparement.
donc tu trouves le symétrique pour l'activé.
et tu insère cette ligne le long du programme, pour voir si tout se déroule comme il faut.
--
aussi, tu peux "désactiver" le code qui sert à savoir si le départ du décompte a été lancé.
du style tu laisse le truc décompter/afficher depuis 99 minutes.(et tu réduits l'attente histoire d'avoir un décompte tous les secondes).
--
en fait de manière générale, faut que tu te trouves un moyen de savoir ce qui se passe (via le buzzer), et si des conditions mal évaluées. (genre un coup buzzer après l'init => ok pour l'init, puis un coup de buzzer après le premier chiffe => ok pour la saisie, si ça buzze sans rien saisir => a pas bon, etc)
la technique pour débugguer, c'est d'une part se faire un système de trace, puis tester les parties séparément les unes des autres.
donc genre tester les routines de décompte avec un compteur fixe (pas saisi)
puis tester la saisie du décompte (et affichage de ce qu'il y a de saisi), sans éxécution du décompte etc etc....
Marsh Posté le 16-01-2004 à 13:35:26
bentaih a écrit : |
je n'arrive vraiment pas a voir a quoi ca sert le longdelay1
Marsh Posté le 12-01-2004 à 15:06:43
merci du fond du coeur
---------------
thanks lot