Neway Posted April 13, 2004 Report Posted April 13, 2004 Devo fare eseguire delle operazioni ad un pic quando una sua porta va a livello alto (ad esempio premo un pulsante) come faccio concettualemte?Utilizzo un ciclo continuo IF "la porta è ad 1" THEN "esegui istruzione" o cos'altro?Credo si debbano utilizzare gli interrupt, ma non ho idea di come fare.Considerate che non so usare il linguaggio assembler, uso Pic Basic Pro.Grazie
ifachsoftware Posted April 13, 2004 Report Posted April 13, 2004 In genere i PIC hanno le porte RB4-7 che possono scatenare l'interrupt RB , potresti usarle per la tua funzione , in alternativa puoi usare la porta con l'INT0 (pero' ce ne hai uno solo) , nel caso delle porte RB4-7 puoi usare 4 segnali , pero' devi usare tutte le 4 porte insieme.Ciao
Claudio F Posted April 13, 2004 Report Posted April 13, 2004 Utilizzo un ciclo continuo IF "la porta è ad 1" THEN "esegui istruzione" o cos'altro? Credo si debbano utilizzare gli interrupt, ma non ho idea di come fare.
dlgcom Posted April 13, 2004 Report Posted April 13, 2004 Se la velocita' di risposta non e' critica , tipo una tastiera, potresti fare la scansione delle entrate nel loop principale e saltare alla routine che ti interessa quando questa si attiva.Ma se la velocita' e' importante allora interrupt e' l'unica opzione.Se vuoi un esempio in ASM posso fartelo , ma non ho il basicpro....
Neway Posted April 13, 2004 Author Report Posted April 13, 2004 Pensavo che il polling delle porte (so solo ora che si chiama così) fosse una soluzione sporca, ma effettivamente per quello che mi serve va bene. Ma vorrei ancora delle ultime delucidazioni.in alternativa puoi usare la porta con l'INT0 (pero' ce ne hai uno solo)
dlgcom Posted April 13, 2004 Report Posted April 13, 2004 Non basta che il segnale per l'interrupt sia in una sola porta tra quelle adibite?
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now