Pagina 1 di 3

Interrupt

MessaggioInviato: 2 ago 2013, 12:10
da carmen976
Ciao a tutti,

mi consigliate una schedina embedded tipo (foxboard, netduino, arduino, flyport ...) che riesca a gestire più pin digitali con interrupt contemporanei senza perdere informazioni?

spero sono riuscita a farmi capire.

Bye
Carmen

Re: interrupt

MessaggioInviato: 2 ago 2013, 12:19
da Paolino
Della famiglia Microchip devi puntare a schede embedded con PIC24, dsPIC o PIC32.
Se ti va bene una scheda di sviluppo, per fare delle prove, ti consiglio Explorer 16.

Spero di averti dato una risposta utile.

Ciao.

Paolo.

Re: interrupt

MessaggioInviato: 2 ago 2013, 12:21
da carmen976
quale caratteristica devo cercare nel datasheet per capire che un micro ne gestisce più di un altro

Re: interrupt

MessaggioInviato: 2 ago 2013, 12:29
da Paolino
Beh, alla voce interrupt del datasheet dovreti trovare un elenco.

Se posso: per quale applicazione? O è uno studio per un esame? O per tesi?

Re: interrupt

MessaggioInviato: 2 ago 2013, 12:35
da carmen976
esame

Re: interrupt

MessaggioInviato: 2 ago 2013, 12:38
da carmen976
creare un applicazione che riesca stare in ascolto con il più numero di pin di input, conteggiando degli impulsi dati da altrettanti button

Re: interrupt

MessaggioInviato: 2 ago 2013, 17:42
da carloc
Se usare l'interrupt è una richiesta specifica del problema.... vabbé :D

In tutti gli altri casi la gestione di pulsanti via interrupt è per lo meno inutile se non addirittura dannosa :D

Gli interrupt si usano quando si deve reagire "immediatamente" ad un certo evento. Con questo si intende ordine di microsecondi.

Dei pulsanti (o dei finecorsa o praticamente qualsiasi cosa venga dal mondo "reale") è svariati ordini di grandezza più lento.
Inoltre c'è il problema dei rimbalzi dei contatti. Quella che in prima approssimazione sembra una chiusura o apertura è in realtà una successione quasi casuale di svariati fronti, irregolari nel tempo e delle volte anche per ampiezza.

Quindi un interrupt non è proprio la prima scelta.... basta campionare anche ogni, che so ogni 10 ms, e poi gestire in una qualche maniera i rimbalzi.

Re: interrupt

MessaggioInviato: 3 ago 2013, 11:59
da StefDrums
carmen976 ha scritto:creare un applicazione che riesca stare in ascolto con il più numero di pin di input, conteggiando degli impulsi dati da altrettanti button


guarda, se la richiesta è semplicemente questa, puoi anche usare una gestione intelligente dei pulsanti, con un solo PIN di interrupt:



Il debounce lo puoi anche fare da SW, e inoltre così riesci anche a vedere pressioni simultanee.
In questo modo puoi aggiungere quanti interruttori vuoi.

Se poi ti serve davvero gestirne 200, a questo punto li metti "a matrice", e li controlli in modo linea-colonna (come giocare a battaglia navale :mrgreen: )

ciao!

Re: Interrupt

MessaggioInviato: 3 ago 2013, 16:40
da carloc
Che fai di lavoro, vendi resistenze :mrgreen:

... no dai perdonami la battuta :ok: :ok: però le tre in parallelo sull'IRQ sono proprio troppe :D
(P.S. manca un punto di connessione ;-) ) ....

e anche le altre si farebbero con il pullup interno :-)

Re: Interrupt

MessaggioInviato: 3 ago 2013, 16:47
da StefDrums
carloc ha scritto:Che fai di lavoro, vendi resistenze :mrgreen:

... no dai perdonami la battuta :ok: :ok: però le tre in parallelo sull'IRQ sono proprio troppe :D
(P.S. manca un punto di connessione ;-) ) ....

e anche le altre si farebbero con il pullup interno :-)


eheh, HAI RAGIONE !! colpa del copia-incolla, non me n'ero accorto!

ecco quello corretto:


e poi, ovvio, se il PIC lo consente, si usano quelle interne.
Non l'avevo menzionato perché non tutti i PIC hanno le resistenze di pull-up integrate e pilotabili per ogni singolo PIN. (e tra l'altro alcuni le hanno solo su port B)