Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

ARM Cortex M0 : Debug interrupt

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[1] ARM Cortex M0 : Debug interrupt

Messaggioda Foto Utentepierinter » 1 ott 2015, 23:19

Ciao ragazzi .

Sto cercando di capire come gestire delle routine di interrupt sul uC in questione.
Per capire come funzionano le cose sto creando un interrupt basato url compare della periferica RTC ogni 3 s , e nella routine di gestione faccio il toogle del LED.
Funziona tutto.

Succede qualcosa di strano quando provo a debuggare. Utilizzo Keil , e andando avanti istruzione per istruzione , sembra non entrare mai nella routine di interrupt.
C'è qualcosa che manco ? qualche impostazione ?

È strano perché nel funzionamento normale funziona effettivamente bene , però mi piacerebbe capire come vedere che sono entrato nelle routine di interrupt anche con il debugger.

Non essendo particolarmente esperto con il debugger , potrebbe tranquillamente essere che mi sono perso qualcosa per strada. Qualcuno ha esperienza in proposito ?

Thanks ;)
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

4
voti

[2] Re: ARM Cortex M0 : Debug interrupt

Messaggioda Foto Utentebanjoman » 1 ott 2015, 23:41

Se esegui il codice passo-passo, il tuo interrupt non viene generato, perche' il debugger ha la precedenza (altrimenti verrebbe interrotto continuamente da innumerevoli interrupt e non si capirebbe nulla).

Se vuoi vedere quando entri nella tua routine di interrupt, basta semplicemente che imposti un breakpoint all'inizio della funzione che gestisce tale interrupt.
Appena l'interrupt viene generato, viene richiamata la funzione e il debugger arrestera' l'esecuzione in corrispondenza del breakpoint. Dopodiche' puoi tranquillamente continuare tu passo-passo come al solito. ;-)
Se funziona quasi bene, è tutto sbagliato. A.Savatteri/M.Mazza
Avatar utente
Foto Utentebanjoman
7.203 5 8 11
Master EY
Master EY
 
Messaggi: 1130
Iscritto il: 19 set 2013, 19:27

0
voti

[3] Re: ARM Cortex M0 : Debug interrupt

Messaggioda Foto Utentepierinter » 1 ott 2015, 23:54

Ah ok , pensavo si potesse vedere quando veniva generato , andando passa passo e monitorando i registri . ok.

Comunque si , avevo fatto anche quella prova .

Imposto il breakpoint appena all'inizio della funziona di gestione dell'interrupt , faccio partire il debug mode e clicco 'run'. A questo punto mi aspetto che l'esecuzione si blocchi al breakpoint (cioè al primo interrupt) , invece no. E la cosa strana è che il led lampeggia , quindi l'interrupt viene sicuramente chiamato. Solo non riesco a vederlo.

Strano no ? :shock:
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

0
voti

[4] Re: ARM Cortex M0 : Debug interrupt

Messaggioda Foto Utentepierinter » 1 ott 2015, 23:59

Penso di aver compreso l'errore. se metto il breakpoint nell'intestazione della funzione , non si ferma mai. Devo metterlo alla prima linea di codice all'interno della funziona stessa.

Una domanda : con il debugger è possibile , con la stessa maniera , anche mandare in sleep il uC e bloccarsi sull'interrupt che lo fa risvegliare ?
Avatar utente
Foto Utentepierinter
620 2 7 10
Expert EY
Expert EY
 
Messaggi: 1395
Iscritto il: 23 mar 2009, 0:05

3
voti

[5] Re: ARM Cortex M0 : Debug interrupt

Messaggioda Foto Utentebanjoman » 2 ott 2015, 0:03

pierinter ha scritto:Penso di aver compreso l'errore. se metto il breakpoint nell'intestazione della funzione , non si ferma mai. Devo metterlo alla prima linea di codice all'interno della funziona stessa.


Ehhh... credevo lo sapessi! :-)

pierinter ha scritto:Una domanda : con il debugger è possibile , con la stessa maniera , anche mandare in sleep il uC e bloccarsi sull'interrupt che lo fa risvegliare ?


Puoi mettere i break ovunque, in qualunque funzione di gestione interrupt. Altrimenti a che servirebbe il debugger? :-)
Se funziona quasi bene, è tutto sbagliato. A.Savatteri/M.Mazza
Avatar utente
Foto Utentebanjoman
7.203 5 8 11
Master EY
Master EY
 
Messaggi: 1130
Iscritto il: 19 set 2013, 19:27


Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti