Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Rilevare Lo Stato Di Una Porta Nei Pic


Messaggi consigliati

Inserito:

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:

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 :)

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

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

Inserita:

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)
Inserita:
Non basta che il segnale per l'interrupt sia in una sola porta tra quelle adibite?

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