Vai al contenuto
PLC Forum


Interrupt Pic


elsinoro

Messaggi consigliati

Salve, premetto che sono un neofita nella programmazione dei Pic.

Ho da poco iniziato a studiarmi il Pic 16F628.

Ho notato che l'interrupt su RB0, viene attivato solo sul cambio di stato da 0 a 1 e non viceversa da 1 a 0.

Mi sembrava da aver capito da varie risorse in rete che non fosse così. Sbaglio io qualcosa?

L' interrupt su RB4...RB7 viene richiamato allo stesso modo di quello RB0 (cioè passaggio da 1 a 0)?.

Grazie a tutti.

Link al commento
Condividi su altri siti


ifachsoftware

RB0 puo' venir risvegliato per un cambio da 0->1 o 1->0 in base a come viene settato nella variabile INTEDG.

RB4-RB7 possono generare un interrupt quando si ha una variazione su uno qualsiasi dei piedini ed e' possibile anche risvegliare il micro dallo sleep.

Per RB4-RB7 non e' possibile impostare fronte di salita o discesa , vengono attivati da un cambiamento di stato (tipicamente 1->0 e per ottenere un 1 puoi o usare il pullup interno o mettere una resistenza da 10K collegata tra il pin e il +5V).

Ciao :)

Link al commento
Condividi su altri siti

Ciao ifachsoftware, i tuoi consigli sono sempre una manna dal cielo :) .

Mi fai qualche esempio di come settare la variabile INTEDG, magari in mikrobasic?

Puoi darmi qualche dritta per quanto riguarda l' USART del 16f628?

Così inizio a studiarmi anche questa parte del pic.

Grazie mille e buona giornata.

Link al commento
Condividi su altri siti

ifachsoftware

Il MIKROBASIC non lo conosco , ma per settare la variabile indicata da assembler basta che usi il comando

Fronte di discesa

asm BCF 81h,6 (Metti a 0 il bit 6 dell'indirizzo 81h che si chiama registro OPTION)

Fronte di salita

asm BSF 81h,6 (Metti a 1 il bit 6 dell'indirizzo 81h che si chiama registro OPTION)

Puoi darmi qualche dritta per quanto riguarda l' USART del 16f628?

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...