Elettronica e Radiotecnica > Pic micro

problema ciclo macchina troppo veloce su un listato

(1/5) > >>

scienziato:
salve a tutti , ho fatto una centralina per pilotare dei rele , e houn problema , i 5 giochi sono troppo veloci , per evitare di riscrivere e riprogramare il pic ormai montato in 2 giorni devo risolvere il problema di rallentare il ciclo macchina , ho pensato se al posto di un quarzo da 4mhz si mette uno da 3 mhz si riesce a rallentare il gioco di luci ??

ecco il listato , " santo aiutami tu hihihi  "  :grin: abbraccino abbraccino :up: :up: :up:

PROCESSOR PIC16F84
INCLUDE "P16F84.INC"
   ORG   0
   CONT1   EQU   0CH
   CONT2   EQU   0DH
   CONT3   EQU   0EH
   CONT4   EQU   0FH
   CONT5   EQU   10H
   CONT6   EQU   11H
   MOVLW   0FFH
   TRIS   05H
   MOVLW   00H
   TRIS   06H
   MOVLW   00H
   MOVWF   06H
inizio:
clrf PORTB
btfsc PORTA, 4
goto SCHEMA1
btfsc PORTA, 3
goto SCHEMA1
btfsc PORTA, 2
goto SCHEMA1
btfsc PORTA, 1
goto SCHEMA1
btfsc PORTA, 0
goto SCHEMA1
goto inizio


SCHEMA1:   BTFSS   05H,0
      GOTO   SCHEMA2
      MOVLW   00H
      MOVWF   PORTB
      GOTO   PRO1
SCHEMA2:   BTFSS   05H,1
      GOTO   SCHEMA3
      MOVLW   00H
      MOVWF   06H
      GOTO   PRO2
SCHEMA3:   BTFSS   05H,2
      GOTO   SCHEMA4
      MOVLW   00H
      MOVWF   06H
      GOTO   PRO3
SCHEMA4:   BTFSS   05H,3
      GOTO   SCHEMA5
      MOVLW   00H
      MOVWF   06H
      GOTO   PRO4
SCHEMA5:   BTFSS   05H,4
      GOTO   SCHEMA1
      MOVLW   00H
      MOVWF   06H
      GOTO   PRO5
   
PRO1:   MOVLW   00H
   MOVWF   06H
   CALL   RIT
   MOVLW   81H
   MOVWF   06H
   CALL   RIT
   MOVLW   0C3H
   MOVWF   06H
   CALL   RIT
   MOVLW   0E7H
   MOVWF   06H
   CALL   RIT
   MOVLW   0FFH
   MOVWF   06H
   CALL   RIT
   MOVLW   0E7H
   MOVWF   06H
   CALL   RIT
   MOVLW   0C3H
   MOVWF   06H
   CALL   RIT
   MOVLW   81H
   MOVWF   06H
   CALL   RIT
   MOVLW   00H
   MOVWF   06H
   CALL   RIT
   btfss PORTA, 0    
   goto inizio
   GOTO   PRO1

PRO2:   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   80H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   80H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   80H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   80H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
btfss PORTA, 1    
   goto inizio

   GOTO   PRO2   

PRO3:   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   MOVLW   03H
   MOVWF   06H
   CALL   RIT
   MOVLW   07H
   MOVWF   06H
   CALL   RIT
   MOVLW   0FH
   MOVWF   06H
   CALL   RIT
   MOVLW   1FH
   MOVWF   06H
   CALL   RIT
   MOVLW   3FH
   MOVWF   06H
   CALL   RIT
   MOVLW   7FH
   MOVWF   06H
   CALL   RIT
   MOVLW   0FFH
   MOVWF   06H
   CALL   RIT
   MOVLW   0FEH
   MOVWF   06H
   CALL   RIT
   MOVLW   0FCH
   MOVWF   06H
   CALL   RIT
   MOVLW   0F8H
   MOVWF   06H
   CALL   RIT
   MOVLW   0F0H
   MOVWF   06H
   CALL   RIT
   MOVLW   0E0H
   MOVWF   06H
   CALL   RIT
   MOVLW   0C0H
   MOVWF   06H
   CALL   RIT
   MOVLW   80H
   MOVWF   06H
   CALL   RIT
   MOVLW   0C0H
   MOVWF   06H
   CALL   RIT
   MOVLW   0E0H
   MOVWF   06H
   CALL   RIT
   MOVLW   0F0H
   MOVWF   06H
   CALL   RIT
   MOVLW   0F8H
   MOVWF   06H
   CALL   RIT
   MOVLW   0FCH
   MOVWF   06H
   CALL   RIT
   MOVLW   0FEH
   MOVWF   06H
   CALL   RIT
   MOVLW   0FFH
   MOVWF   06H
   CALL   RIT
   MOVLW   7FH
   MOVWF   06H
   CALL   RIT
   MOVLW   3FH
   MOVWF   06H
   CALL   RIT
   MOVLW   1FH
   MOVWF   06H
   CALL   RIT
   MOVLW   0FH
   MOVWF   06H
   CALL   RIT2
   MOVLW   07H
   MOVWF   06H
   CALL   RIT2
   MOVLW   03H
   MOVWF   06H
   CALL   RIT2
   MOVLW   01H
   MOVWF   06H
   CALL   RIT2
   
btfss PORTA, 2    
   goto inizio

GOTO   PRO3

PRO4:   MOVLW   00H
   MOVWF   06H
   CALL   RIT
   CALL   RIT
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   CALL   RIT   
   CALL   RIT
   MOVLW   00H
   MOVWF   06H
   CALL   RIT
   CALL   RIT
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   CALL   RIT   
   CALL   RIT
   MOVLW   00H
   MOVWF   06H
   CALL   RIT
   CALL   RIT
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   CALL   RIT   
   CALL   RIT
   MOVLW   00H
   MOVWF   06H
   CALL   RIT
   CALL   RIT
   CALL   RIT
   
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   80H
   MOVWF   06H
   CALL   RIT
   MOVLW   40H
   MOVWF   06H
   CALL   RIT
   MOVLW   20H
   MOVWF   06H
   CALL   RIT
   MOVLW   10H
   MOVWF   06H
   CALL   RIT
   MOVLW   08H
   MOVWF   06H
   CALL   RIT
   MOVLW   04H
   MOVWF   06H
   CALL   RIT
   MOVLW   02H
   MOVWF   06H
   CALL   RIT
   MOVLW   01H
   MOVWF   06H
   CALL   RIT
   


btfss PORTA, 3    
   goto inizio
GOTO   PRO4


PRO5:   MOVLW   00H
   MOVWF   06H
   CALL   RIT3
   CALL   RIT3
   MOVLW   18H
   MOVWF   06H
   CALL   RIT3
   CALL   RIT3
   MOVLW   00H
   MOVWF   06H
   CALL   RIT3
   CALL   RIT3   
   MOVLW   18H
   MOVWF   06H
   CALL   RIT3
   CALL   RIT3
   MOVLW   00H
   MOVWF   06H
   CALL   RIT3
   CALL   RIT3   
   MOVLW   18H
   MOVWF   06H
   CALL   RIT3
   CALL   RIT3
   MOVLW   00H
   MOVWF   06H
   CALL   RIT3
   CALL   RIT3
   MOVLW   24H
   MOVWF   06H
   CALL   RIT3
   MOVLW   42H
   MOVWF   06H
   CALL   RIT3
   MOVLW   81H
   MOVWF   06H
   CALL   RIT3
   MOVLW   42H
   MOVWF   06H
   CALL   RIT3
   MOVLW   24H
   MOVWF   06H
   CALL   RIT3
   MOVLW   00H
   MOVWF   06H
   CALL   RIT3
   
btfss PORTA, 4    
   goto inizio
GOTO   PRO5




RIT:   MOVLW   78H
   MOVWF   CONT1
LOOP2:   MOVLW   93H
   MOVWF   CONT2
LOOP1:   DECFSZ   CONT2
   GOTO   LOOP1
   DECFSZ   CONT1
   GOTO   LOOP2
   RETURN

RIT2:   MOVLW   94H
   MOVWF   CONT3
LOOP4:   MOVLW   93H
   MOVWF   CONT4
LOOP3:   DECFSZ   CONT4
   GOTO   LOOP3
   DECFSZ   CONT3
   GOTO   LOOP4
   RETURN

RIT3:   MOVLW   79H
   MOVWF   CONT5
LOOP6:   MOVLW   70H
   MOVWF   CONT6
LOOP5:   DECFSZ   CONT6
   GOTO   LOOP5
   DECFSZ   CONT5
   GOTO   LOOP6
   RETURN   
   END

Ricciolino:
potresti inserire, dove vuoi, delle chiamate "sleep"

http://utenti.multimania.it/americanchip/pic/sleep.htm

 :birra:

Lino:
Perchè invece di utilizzare il quarzo non usi un oscillatore R-C?
Di quanto vorresti rallentare le routine?
Se usi il quarzo da 3 MHz invece di quello da 4 ottieni solo un incremente di 1/4 di tempo, ti è sufficiente?
Con la rete R-C puo oscillare fino a 200 KHz; con i risonatori ceramici, quelli a tre piedini, puoi spaziare fino a 4 MHz, tutto dipende dalle tue esigenze.
Comunque sul datasheet trovi tutte le informazioni precise, anche sui valori dei condensatori da utilizzare.

Saluti, Lino

scienziato:

--- Citazione da: Lino - 14 Febbraio 2012, 13:21:14 ---Perchè invece di utilizzare il quarzo non usi un oscillatore R-C?
Di quanto vorresti rallentare le routine?
Se usi il quarzo da 3 MHz invece di quello da 4 ottieni solo un incremente di 1/4 di tempo, ti è sufficiente?
Con la rete R-C puo oscillare fino a 200 KHz; con i risonatori ceramici, quelli a tre piedini, puoi spaziare fino a 4 MHz, tutto dipende dalle tue esigenze.
Comunque sul datasheet trovi tutte le informazioni precise, anche sui valori dei condensatori da utilizzare.

Saluti, Lino

--- Termina citazione ---
la scia e troppo veloce tantevvero che i rele scattano velocissimi e non si capisce con le lampade a incandescenza , bastarebbe un poco rallentare il ciclo e di conseguenza tutti i giochi memorizzati per capire meglio posto un video , la centralita pilota un carro di carnevale io sono messo all'interno della cabine dove i trasformatori portano le fasi ai contatti dei rele , su ogni contatto dei rele ci sono un massimo di 60 lampade quindi le prime file di tutti i pupazzi , leseconde ,leterze ecc ecc,
ecco un video spero che si capisca !

[youtube]http://www.youtube.com/watch?v=ZOGtUFq856Y&list=HL1329223465&feature=mh_lolz[/youtube]

Lino:
Se non sbaglio, tutta la tempistica fà riferimento alle 3 routine (RIT, RIT2, e RIT3); raddoppia i valori delle costanti alla prima riga di ogni routine (di più non puoi fare) e verifica come cambiano gli effetti.
C'è ancora margine per rallentare le singole routine ma dipende dal risultato che si vuole ottenere.

Saluti, Lino

Navigazione

[0] Indice dei post

[#] Pagina successiva

Vai alla versione completa