This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: ISR / DSR debugging
- From: Stanislav Meduna <stano at meduna dot org>
- To: gmail <jjdebarros at gmail dot com>, ecos-discuss at ecos dot sourceware dot org
- Date: Thu, 25 Aug 2011 10:18:59 +0200
- Subject: Re: [ECOS] ISR / DSR debugging
- References: <4E55A05D.80009@gmail.com>
On 25.08.2011 03:07, gmail wrote:
> I have a setup where I am loading my application onto a board that has
> Redboot, via gdb over the ethernet connection.
>
> When the application starts up:
>
> I have a diag_printf() in the hal_IRQ_handler() and can see that the
> clock tick ISR is working fine.
Uhh, diag_printf in an interrupt handler output via gdb over
ethernet is a bit heavy - I am quite surprised this works
at all.
I usually flip some hardware bit for this kind of debugging,
or you can set some global variables in the debugged code
path etc.
> cyg_vector_t int1_vector = CYGNUM_HAL_INTERRUPT_GPIO;
I don't know your platform, but sometimes the vector
and interrupt number are not the same. This can be confusing,
as the thing called 'vector' in eCos is not necessarily
what a 'vector' in the MCU documentation refers to.
E.g. in my Cortex-M3 based environment INT_GPIOA is defined
as 16, but it has to be specified as 1 to cyg_interrupt_*
Regards
--
Stano
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss