Pilotare un servomotore con un potenziometro

10 Anni 3 Mesi fa #31 da StefA
poi ero andato a vedere cosa ti avevo chiesto e sospettavo fosse questo il "problema".

Per quanto riguarda l'altra funzione, se guardi il file timers.h vedrai che all'interno della stessa non c'è nulla... una semplice dichiarazione di funzione.

si, avevo spulciato il file, però mi chiedo dove vada a prendere la funzione il compilatore, visto che non includiamo niente.


Invece per quanto riguarda l'abilitazione dell'interrupt del timer1 e la sua priorità?

Grazie della pazienza.

Ste

..avevano magari fatto lo sgambetto al ka, ma il sangue restava sempre più denso dell'acqua.. [cit.]

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • StefA
  • Avatar di StefA
  • Moderator
  • Moderator
Di più
10 Anni 3 Mesi fa #32 da Pinna
tempo fa mi sono posto la stessa domanda: diciamo che in questo caso timer1 lavora come un timer per cui non necessita di priorità... ho ritrovato un appunto che avevo visto in rete e te lo allego:

La gestione interrupt del Timer1 richiede :

* l' abilitazione del bit TMR1IE (PIE1<1>), che va posto a 1 se si desidera attivare l' interrupt
* Il bit di selezione della priorità dell' interrupt è TMR1IP (IPIR1<1>). E' a 1 se si desidera l' alta priorità, altrimenti va a posto a 0. L' abilitazione del modo interrupt con priorità richiede di aver settato il bit IPEN (RCON<7>) ; altrimenti viene impiegato un sistema di interrupt senza livelli di priorità e l' impostazione di TMR1IP è indifferente.
* Il flag di identificazione è TMR1IF (PIR1<1>) che va a 1 a seguito all' overflow del counter e va cancellato da software.

L' interrupt di Timer1 fa riferimento al registro PIR1 e quindi è considerata una interruzione periferica e quindi sono dipendenti per l' abilitazione da PEIE.

Marcello

Chi vola vale, chi vale vola, chi non vola è un vile

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Pinna
  • Avatar di Pinna
  • Moderator
  • Moderator
Di più
10 Anni 3 Mesi fa #33 da StefA
quindi se IPEN = 0 l'interrupt delle periferiche come il timer1 sono abilitati automaticamente, inoltre IPEN di defaut è impostato a 0, giusto così?

Ste

..avevano magari fatto lo sgambetto al ka, ma il sangue restava sempre più denso dell'acqua.. [cit.]

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • StefA
  • Avatar di StefA
  • Moderator
  • Moderator
Di più
10 Anni 3 Mesi fa #34 da Pinna
penso anch'io che sia così... però se il buon Mauro ci desse un chiarimento riguardo questo dubbio non sarebbe male, anzi...

Marcello

Chi vola vale, chi vale vola, chi non vola è un vile

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Pinna
  • Avatar di Pinna
  • Moderator
  • Moderator
Di più
10 Anni 3 Mesi fa #35 da mpeino
Risposta da mpeino al topic Pilotare un servomotore con un potenziometro
Questo non centra nulla con gli interrupt.

Forse sto dicendo una cavolata......

Se il joystick è al centro il servo è al centro perchè questo avvenga il segnale deve essere continuo se no il servo si muove.
Abbiamo utilizzato per questo 2 timer con un altro servo da pilotare servono altri 2 timer .....oppure utilizziamo un timer per il periodo di 20ms e gli altri per l'impulso 0.5ms-2.5ms un timer per ogni servo.

Massimo.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • mpeino
  • Elite Member
  • Elite Member
Di più

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login