Vai al contenuto
PLC Forum


Pic 12f508 - variare il tempo di pausa


c.l.s.

Messaggi consigliati

buonasera a tutti voi del forum, sono alle prime armi e di istruzioni in asm sono propriomesso male.

Ho scritto questo semplice progammino ma vorrei aumentare il tempo di pausa, portarlo a 10sec o 50 o addirittura 1min,o usato NOP ma se ne metto tanti mi da errore !

Chi mi puo aiutareeeeeeeeeeeeee!

Però vorrei capire l'istruzione che si usa e perche . Inoltre dove trovo del materiale didattico che mi spiega proprio le basi e le varie istruzioni ? in rete ce tanto ma un po confuse!

movwf OSCCAL

movlw b'11111100'

start

bsf GPIO,1

nop

nop

nop

nop

nop

nop

bsf GPIO,0

nop

nop

nop

nop

nop

nop

bcf GPIO,0

nop

nop

nop

nop

nop

nop

bcf GPIO,1

nop

nop

nop

nop

nop

nop

goto start

end

grazieeeeeeeeeeeeeeeeeeee

Link al commento
Condividi su altri siti


Usare le NOP per creare un ritardo è un metodo barbaro. Il micro cicla senza far nulla. Comunque se proprio vuoi usare questo sitema scrivi una decina di NOP per creare un ritardo di qualche usec (dipende dal clock del micro), poi crei un loop che ripete n volte queste istruzioni, così moltiplichi il tuo ritardo.

Il metodo più corretto è quello di programmare uno dei timer del micro. Al termine del conteggio il timer genera un interupt. Se, ad esempio, hai un quarzo da 8 MHz e carichi 45535 (65535 -45535=20000)nel timer, questi conterà 20000 clock da 0.5 msec e dopo 10 ms generà un interrupt. Contando questi interrupts potrai farti dei temporizzatori precisi senza impegnare le risorse di CPU.

Sulla rete c'è tantissimo materiale sui PIC. Ti consiglio di cercare il sito di Sergio Tanzilli perchè ci trovi un ottimo tutorial sui PIC

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...