- Messaggi: 52
- Ringraziamenti ricevuti 3
MSP430, Microcontrollori 16 bit Ultra Low Power
interrupt routine dei timer
- pier
- Autore della discussione
- Anziano Utente
Less
Di più
10 Anni 4 Mesi fa #1
da pier
interrupt routine dei timer è stato creato da pier
Premetto che devo ancora studiarmi bene i due capitoli sui timer del corso MSP430, spero che il mio dubbio non risulti troppo banale.
Il problema è questo:
sto decifrando un programma sviluppato per MSP430F2274, l'obiettivo è decifrare un segnale OOK mediante i moduli Capture Compare, e da quello che ho capito, anche l'OPAMP interno.
Il mio dubbio però è su come vengono codificate le routine di interrupt dei timer, io vedo questo nel mio codice:
quindi nel main parte il timerA1 e nel timerA1 parte il timerA0?
ma cos'è il timerA0? che differenza c'é con il A1? forse è che uno ha il Capture/Compare mentre l'A0 no?
La notazione nell'articolo di Mauro mi pareva diversa...
Il problema è questo:
sto decifrando un programma sviluppato per MSP430F2274, l'obiettivo è decifrare un segnale OOK mediante i moduli Capture Compare, e da quello che ho capito, anche l'OPAMP interno.
Il mio dubbio però è su come vengono codificate le routine di interrupt dei timer, io vedo questo nel mio codice:
Code:
void main(void)
{
......
TACCTL1 = CM_3 + CCIS_1 + SCS + CAP + CCIE;
}
#pragma vector=TIMERA1_VECTOR
__interrupt void Timer_A1(void)
{
....
TACCTL0 = CCIE;
TACTL = TASSEL_2 + MC_2;
}
#pragma vector=TIMERA0_VECTOR
__interrupt void Timer_A0(void)
{
....
}
quindi nel main parte il timerA1 e nel timerA1 parte il timerA0?
ma cos'è il timerA0? che differenza c'é con il A1? forse è che uno ha il Capture/Compare mentre l'A0 no?
La notazione nell'articolo di Mauro mi pareva diversa...
Si prega Accesso o Crea un account a partecipare alla conversazione.
10 Anni 4 Mesi fa #2
da Mauro Laurenti
Risposta da Mauro Laurenti al topic interrupt routine dei timer
Ciao Pier,
l'MSP430F2274 ha due soli Timer. 1 Timer_A e 1 Timer_B
Ogni Timer ha 3 moduli Capture e Compare.
Ad ogni Timer sono associati due Interrut Vector.
Nel caso del Timer_A hai:
TIMERA0_VECTOR
TIMERA1_VECTOR
Al primo Interrupt Vector fa riferimento CCR0 mentre al secondo CCR1 e CCR2.
Per ulteriori info ti consiglio di aprire l'header file dove trovi dichiarate le costanti dell'interrupt vector. Altre info le trovi nel datasheet nel paragrafo Interrupt Vector Addresses.
Nel caso specifico del tuo software:
nel main e' configurato CCR1.
l'ISR di CCR1 e' TIMERA1_VECTOR. Quando viene eseguita l'ISR, viene configurato CCR0, al quale e' assegnato l'interrupt vector TIMERA0_VECTOR
Saluti,
Mauro
l'MSP430F2274 ha due soli Timer. 1 Timer_A e 1 Timer_B
Ogni Timer ha 3 moduli Capture e Compare.
Ad ogni Timer sono associati due Interrut Vector.
Nel caso del Timer_A hai:
TIMERA0_VECTOR
TIMERA1_VECTOR
Al primo Interrupt Vector fa riferimento CCR0 mentre al secondo CCR1 e CCR2.
Per ulteriori info ti consiglio di aprire l'header file dove trovi dichiarate le costanti dell'interrupt vector. Altre info le trovi nel datasheet nel paragrafo Interrupt Vector Addresses.
Nel caso specifico del tuo software:
nel main e' configurato CCR1.
l'ISR di CCR1 e' TIMERA1_VECTOR. Quando viene eseguita l'ISR, viene configurato CCR0, al quale e' assegnato l'interrupt vector TIMERA0_VECTOR
Saluti,
Mauro
Si prega Accesso o Crea un account a partecipare alla conversazione.
- pier
- Autore della discussione
- Anziano Utente
Less
Di più
- Messaggi: 52
- Ringraziamenti ricevuti 3
10 Anni 4 Mesi fa #3
da pier
Risposta da pier al topic interrupt routine dei timer
Avevo più o meno capito, ma la tua risposa, sempre chiara e precisa, mi ha chiarito meglio le idee.
Grazie
Grazie
Si prega Accesso o Crea un account a partecipare alla conversazione.
10 Anni 4 Mesi fa #4
da Mauro Laurenti
Risposta da Mauro Laurenti al topic interrupt routine dei timer
Perfetto,
...che applicazione stai sviluppando?
Saluti,
Mauro
...che applicazione stai sviluppando?
Saluti,
Mauro
Si prega Accesso o Crea un account a partecipare alla conversazione.
- pier
- Autore della discussione
- Anziano Utente
Less
Di più
- Messaggi: 52
- Ringraziamenti ricevuti 3
10 Anni 4 Mesi fa #5
da pier
Risposta da pier al topic interrupt routine dei timer
è per la mia tesi di laurea. Essenzialmente stiamo cercando di intercettare un segnale OOK per accendere un nodo di un sistema power line communication, il tutto in energy harvesting con l'energia di quel segnale.
Si prega Accesso o Crea un account a partecipare alla conversazione.
Moderatori: Mauro Laurenti, Matteo Garia
Registrati al sito
Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.
Forum - Ultimi messaggi
-
- Freedom III e compilazioni fallite
- da Black
-
- MODULO GSM SIM900A
- da FABRIZIO
-
- LTerminal - nuove funzioni
- da Mauro Laurenti
-
- Aggiornamento sito completato
- da Mauro Laurenti
-
- registro a scorrimento PIPO in cascata
- da Mauro Laurenti