Neway Inserito: 13 aprile 2004 Segnala Inserito: 13 aprile 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 Inserita: 13 aprile 2004 Segnala Inserita: 13 aprile 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 Inserita: 13 aprile 2004 Segnala Inserita: 13 aprile 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 Inserita: 13 aprile 2004 Segnala Inserita: 13 aprile 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 Inserita: 13 aprile 2004 Autore Segnala Inserita: 13 aprile 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 Inserita: 13 aprile 2004 Segnala Inserita: 13 aprile 2004 Non basta che il segnale per l'interrupt sia in una sola porta tra quelle adibite?
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora