DSPRelated.com
Forums

Interrupts without DSP/BIOS

Started by onoffdsp August 8, 2003
How can I configure interrupts without DSP/BIOS.

I've done:

//*(volatile unsigned int *) IMH &= 0x0FFFFFF; //Clear INT15 source
//*(volatile unsigned int *) IMH |= 0x8000000; //Point TIMER1 to INT15 00010b

// CSR=0x02020100; /* Disable all interrupts -
RevisionID+CPUID+LittleEndian*/

// IER=1; /* Disable all interrupts except NMI
*/

// ICR=0xffff; /* Clear all pending interrupts
*/

// IER|=0x8003; /* Enable INT15 interrupt*/
// CSR|=3; //PGIE and GIE
On the .ASM
INT15: b _c_int15 ;branch to ISR
.loop 7
NOP
.endloop

On the .C

interrupt void c_int15(void)... What's wrong?
Tell me the steps to follow to configure an INT in 'plain text' (not DSP/BIOS)



Hi
R u using DSP/BIOS in u r application but u dont
want to use the HWI Objects . is it right. If yes then
it is going to be bit cubersome job. As DSP BIOS
relocates the Interrrupt vector. it also user one
timer interrupt i guess...!. If u r usig DSP/BIOS then
it is better to use HWI Objects.
If u r not using DSP/BIOS in U r Application. it
become a easy task. U need to configuration manully.

1. Create a section for Interrupt vector table. then
Map it to IVT address.
2. Write ISR routine. Do the necessary context save.
3. return from routine with global interrupt enabled.
becoz it is disbled while branching to ISR.
4. But in the main routine(initialisation routine) U
first disable all interrupts.
5. Writer Appropriate control word into IER register
to enable interrupts.
6. Clear all pending interrupt by writing to interrupt
Flag register.
7. enable PGIE and GIE flag.

U almost done. Just try it.
Hope this help u...
all the best
Regards
Amaresh --- onoffdsp <> wrote:
> How can I configure interrupts without DSP/BIOS.
>
> I've done:
>
> //*(volatile unsigned int *) IMH &= 0x0FFFFFF;
> //Clear INT15 source
> //*(volatile unsigned int *) IMH |= 0x8000000;
> //Point TIMER1 to INT15 00010b
>
> // CSR=0x02020100; /* Disable
> all interrupts - RevisionID+CPUID+LittleEndian*/
>
> // IER=1; /* Disable
> all interrupts except NMI */
>
> // ICR=0xffff; /* Clear
> all pending interrupts */
>
> // IER|=0x8003; /* Enable
> INT15 interrupt*/
> // CSR|=3; //PGIE and
> GIE >
> On the .ASM
> INT15: b _c_int15 ;branch to ISR
> .loop 7
> NOP
> .endloop
>
> On the .C
>
> interrupt void c_int15(void)... > What's wrong?
> Tell me the steps to follow to configure an INT in
> 'plain text' (not DSP/BIOS) >
> _____________________________________
> Note: If you do a simple "reply" with your email
> client, only the author of this message will receive
> your answer. You need to do a "reply all" if you
> want your answer to be distributed to the entire
> group.
>
> _____________________________________
> About this discussion group:
>
> To Join: Send an email to > To Post: Send an email to
>
> To Leave: Send an email to > Archives: http://www.yahoogroups.com/group/c6x
>
> Other Groups: http://www.dsprelated.com > ">http://docs.yahoo.com/info/terms/


__________________________________



hello

here i'am attaching the file,i think this may help u.
download and run it.
Cofigure your vectors.asm file to post an
interrupt(INT15).

-Lakshman N

--- Amaresh patil <> wrote:
> Hi
> R u using DSP/BIOS in u r application but u dont
> want to use the HWI Objects . is it right. If yes
> then
> it is going to be bit cubersome job. As DSP BIOS
> relocates the Interrrupt vector. it also user one
> timer interrupt i guess...!. If u r usig DSP/BIOS
> then
> it is better to use HWI Objects.
> If u r not using DSP/BIOS in U r Application. it
> become a easy task. U need to configuration manully.
>
> 1. Create a section for Interrupt vector table.
> then
> Map it to IVT address.
> 2. Write ISR routine. Do the necessary context save.
> 3. return from routine with global interrupt
> enabled.
> becoz it is disbled while branching to ISR.
> 4. But in the main routine(initialisation routine) U
> first disable all interrupts.
> 5. Writer Appropriate control word into IER register
> to enable interrupts.
> 6. Clear all pending interrupt by writing to
> interrupt
> Flag register.
> 7. enable PGIE and GIE flag.
>
> U almost done. Just try it.
> Hope this help u...
> all the best
> Regards
> Amaresh > --- onoffdsp <> wrote:
> > How can I configure interrupts without DSP/BIOS.
> >
> > I've done:
> >
> > //*(volatile unsigned int *) IMH &= 0x0FFFFFF;
> > //Clear INT15 source
> > //*(volatile unsigned int *) IMH |= 0x8000000;
> > //Point TIMER1 to INT15 00010b
> >
> > // CSR=0x02020100; /*
> Disable
> > all interrupts - RevisionID+CPUID+LittleEndian*/
> >
> > // IER=1; /*
> Disable
> > all interrupts except NMI */
> >
> > // ICR=0xffff; /* Clear
> > all pending interrupts */
> >
> > // IER|=0x8003; /* Enable
> > INT15 interrupt*/
> > // CSR|=3; //PGIE
> and
> > GIE
> >
> >
> >
> > On the .ASM
> > INT15: b _c_int15 ;branch to ISR
> > .loop 7
> > NOP
> > .endloop
> >
> > On the .C
> >
> > interrupt void c_int15(void)...
> >
> >
> > What's wrong?
> > Tell me the steps to follow to configure an INT in
> > 'plain text' (not DSP/BIOS)
> >
> >
> >
> > _____________________________________
> > Note: If you do a simple "reply" with your email
> > client, only the author of this message will
> receive
> > your answer. You need to do a "reply all" if you
> > want your answer to be distributed to the entire
> > group.
> >
> > _____________________________________
> > About this discussion group:
> >
> > To Join: Send an email to
> >
> >
> > To Post: Send an email to
> >
> > To Leave: Send an email to
> >
> >
> > Archives: http://www.yahoogroups.com/group/c6x
> >
> > Other Groups: http://www.dsprelated.com
> >
> >
> > ">http://docs.yahoo.com/info/terms/
> >
> > __________________________________ >
> _____________________________________
> Note: If you do a simple "reply" with your email
> client, only the author of this message will receive
> your answer. You need to do a "reply all" if you
> want your answer to be distributed to the entire
> group.
>
> _____________________________________
> About this discussion group:
>
> To Join: Send an email to > To Post: Send an email to
>
> To Leave: Send an email to > Archives: http://www.yahoogroups.com/group/c6x
>
> Other Groups: http://www.dsprelated.com > ">http://docs.yahoo.com/info/terms/


__________________________________ __________________________________ __________________________________

Attachment (not stored)
timer_isr.c
Type: application/octet-stream