Forums

GPIO interrupt callback?

Started by drmapl January 20, 2003
Hi all,
using a 56F805 I want to use the level sensitive interrupt input on a
GPIO line. While I find all sorts of high level routines to set
various operation parameters I don't know how to set the interrupt
callback function. How can I set this callback function? Do I have to
put a JSR statement into the interrupt table by hand?

Many thanks,
Manfred



Hi,
Are u using codewarrior for development? If so then u can assign
GPIO ISR by using following function call

archInstallISR(&(pArchInterrupts -> GPIO_Port), ISRRoutine);

Regards,
Nitin

-----Original Message-----
From: drmapl <> [mailto:]
Sent: Monday, January 20, 2003 7:26 AM
To:
Subject: [motoroladsp] GPIO interrupt callback? Hi all,
using a 56F805 I want to use the level sensitive interrupt input on a
GPIO line. While I find all sorts of high level routines to set
various operation parameters I don't know how to set the interrupt
callback function. How can I set this callback function? Do I have to
put a JSR statement into the interrupt table by hand?

Many thanks,
Manfred _____________________________________
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:

To Post:

To Leave:

Archives: http://www.yahoogroups.com/group/motoroladsp

More Groups: http://www.dsprelated.com/groups.php3 ">http://docs.yahoo.com/info/terms/


**************************Disclaimer************************************

Information contained in this E-MAIL being proprietary to Wipro Limited is
'privileged' and 'confidential' and intended for use only by the individual
or entity to which it is addressed. You are notified that any use, copying
or dissemination of the information contained in the E-MAIL in any manner
whatsoever is strictly prohibited.

***************************************************************************



Hi
Istarted using the SDK enviroment 2 weeks ago before that I used
Radagast but since I could not get a sine function going and SDK had
one already I started coding in SDK.

I also tryed doing the GPIO interrupt. According to the registers of
the flash everything is correct. The archInstallISR is getting the
the right adress 0x0FC8 which will be for Port B. Iam trying to get a
interrupt on pin 4.

gpioPortB = open(BSP_DEVICE_NAME_GPIO_B, NULL);

archInstallISR(&(pArchInterrupts->MpioB), dirISR);

ioctl(gpioPortB, GPIO_SETAS_GPIO, gpioPin(B,4));
ioctl(gpioPortB, GPIO_SETAS_INPUT, gpioPin(B,4));
ioctl(gpioPortB, GPIO_INTERRUPT_ENABLE, gpioPin(B,4));

But I am also getting the same as Manfred.
I also tryed getting the proirity high but still iet will not
interrupt.

This was done on the DSP805EVM with the SDK.

If somebody can help it would be great.

Frikkie.
--- In , "Nitin Madhukar Yewale"
<nitin.yewale@w...> wrote:
> Hi,
> Are u using codewarrior for development? If so then u can
assign
> GPIO ISR by using following function call
>
> archInstallISR(&(pArchInterrupts -> GPIO_Port), ISRRoutine);
>
> Regards,
> Nitin
>
> -----Original Message-----
> From: drmapl <m.plagmann@i...> [mailto:m.plagmann@i...]
> Sent: Monday, January 20, 2003 7:26 AM
> To:
> Subject: [motoroladsp] GPIO interrupt callback? > Hi all,
> using a 56F805 I want to use the level sensitive interrupt input on
a
> GPIO line. While I find all sorts of high level routines to set
> various operation parameters I don't know how to set the interrupt
> callback function. How can I set this callback function? Do I have
to
> put a JSR statement into the interrupt table by hand?
>
> Many thanks,
> Manfred > _____________________________________
> 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:
>
> To Post:
>
> To Leave:
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3 > ">http://docs.yahoo.com/info/terms/ >
>
**************************Disclaimer**********************************
**
>
> Information contained in this E-MAIL being proprietary to Wipro
Limited is
> 'privileged' and 'confidential' and intended for use only by the
individual
> or entity to which it is addressed. You are notified that any use,
copying
> or dissemination of the information contained in the E-MAIL in any
manner
> whatsoever is strictly prohibited. **********************************************************************
*****


Hi,

Generally when Interrupt occures it will set the bit to indicate
the same.

Now in case of GPIO port If u configure any pin to generate
interrupt it will execute only ONE ISR routine.

In ISR u will to see which pin has generated the interrupt if u
r configuring multiple pins of GPIO port to generate interrupt.

Now in ISR u will have reset the EDGE sensitive register of the
GPIO port so that next time interrupt will occur and will execute the
ISR routine.

Which processor u r using? Can u pass on the data sheet?

Idle ISR for GPIO pin should be like this

GPIO_Isr ()
{
Read the Intrrupt Pending Register GPIO_IPR (Tells u which pin
has actived interrupt)
Clear the EDGE Sensitive register. IESR
}

Regards,
Nitin

-----Original Message-----
From: grdeathsa <> [mailto:]

Sent: Thursday, January 23, 2003 5:47 PM
To:
Subject: [motoroladsp] GPIO interrupt callback? Hi
Istarted using the SDK enviroment 2 weeks ago before that I used
Radagast but since I could not get a sine function going and SDK had
one already I started coding in SDK.

I also tryed doing the GPIO interrupt. According to the registers of
the flash everything is correct. The archInstallISR is getting the
the right adress 0x0FC8 which will be for Port B. Iam trying to get a
interrupt on pin 4.

gpioPortB = open(BSP_DEVICE_NAME_GPIO_B, NULL);

archInstallISR(&(pArchInterrupts->MpioB), dirISR);

ioctl(gpioPortB, GPIO_SETAS_GPIO, gpioPin(B,4)); ioctl(gpioPortB,
GPIO_SETAS_INPUT, gpioPin(B,4)); ioctl(gpioPortB, GPIO_INTERRUPT_ENABLE,
gpioPin(B,4));

But I am also getting the same as Manfred.
I also tryed getting the proirity high but still iet will not
interrupt.

This was done on the DSP805EVM with the SDK.

If somebody can help it would be great.

Frikkie.
--- In , "Nitin Madhukar Yewale"
<nitin.yewale@w...> wrote:
> Hi,
> Are u using codewarrior for development? If so then u can
assign
> GPIO ISR by using following function call
>
> archInstallISR(&(pArchInterrupts -> GPIO_Port), ISRRoutine);
>
> Regards,
> Nitin
>
> -----Original Message-----
> From: drmapl <m.plagmann@i...> [mailto:m.plagmann@i...]
> Sent: Monday, January 20, 2003 7:26 AM
> To:
> Subject: [motoroladsp] GPIO interrupt callback? > Hi all,
> using a 56F805 I want to use the level sensitive interrupt input on
a
> GPIO line. While I find all sorts of high level routines to set
> various operation parameters I don't know how to set the interrupt
> callback function. How can I set this callback function? Do I have
to
> put a JSR statement into the interrupt table by hand?
>
> Many thanks,
> Manfred > _____________________________________
> 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:
>
> To Post:
>
> To Leave:
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3 > ">http://docs.yahoo.com/info/terms/ >
>
**************************Disclaimer**********************************
**
>
> Information contained in this E-MAIL being proprietary to Wipro
Limited is
> 'privileged' and 'confidential' and intended for use only by the
individual
> or entity to which it is addressed. You are notified that any use,
copying
> or dissemination of the information contained in the E-MAIL in any
manner
> whatsoever is strictly prohibited. **********************************************************************
***** _____________________________________
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:

To Post:

To Leave:

Archives: http://www.yahoogroups.com/group/motoroladsp

More Groups: http://www.dsprelated.com/groups.php3 ">http://docs.yahoo.com/info/terms/


**************************Disclaimer********************************************\
******

Information contained in this E-MAIL being proprietary to Wipro Limited is
'privileged'
and 'confidential' and intended for use only by the individual or entity to
which it is
addressed. You are notified that any use, copying or dissemination of the
information
contained in the E-MAIL in any manner whatsoever is strictly prohibited.

********************************************************************************\
********



Hi

I am using the DSP805.
I only set that pin of GPIO port b pin 4.
The problem is that it does not go to the ISR.

I included the clearining of the interrupt in the roteen and the reset in
the setup.
But still it does not go to the interrupt roteen.

Regards.
Frikkie.

-----Original Message-----
From: Nitin Madhukar Yewale [mailto:]
Sent: 23 January 2003 17:38
To: ;
Subject: RE: [motoroladsp] GPIO interrupt callback? Hi,

Generally when Interrupt occures it will set the bit to indicate
the same.

Now in case of GPIO port If u configure any pin to generate
interrupt it will execute only ONE ISR routine.

In ISR u will to see which pin has generated the interrupt if u
r configuring multiple pins of GPIO port to generate interrupt.

Now in ISR u will have reset the EDGE sensitive register of the
GPIO port so that next time interrupt will occur and will execute the
ISR routine.

Which processor u r using? Can u pass on the data sheet?

Idle ISR for GPIO pin should be like this

GPIO_Isr ()
{
Read the Intrrupt Pending Register GPIO_IPR (Tells u which pin
has actived interrupt)
Clear the EDGE Sensitive register. IESR
}

Regards,
Nitin

-----Original Message-----
From: grdeathsa <> [mailto:]

Sent: Thursday, January 23, 2003 5:47 PM
To:
Subject: [motoroladsp] GPIO interrupt callback? Hi
Istarted using the SDK enviroment 2 weeks ago before that I used
Radagast but since I could not get a sine function going and SDK had
one already I started coding in SDK.

I also tryed doing the GPIO interrupt. According to the registers of
the flash everything is correct. The archInstallISR is getting the
the right adress 0x0FC8 which will be for Port B. Iam trying to get a
interrupt on pin 4.

gpioPortB = open(BSP_DEVICE_NAME_GPIO_B, NULL);

archInstallISR(&(pArchInterrupts->MpioB), dirISR);

ioctl(gpioPortB, GPIO_SETAS_GPIO, gpioPin(B,4)); ioctl(gpioPortB,
GPIO_SETAS_INPUT, gpioPin(B,4)); ioctl(gpioPortB, GPIO_INTERRUPT_ENABLE,
gpioPin(B,4));

But I am also getting the same as Manfred.
I also tryed getting the proirity high but still iet will not
interrupt.

This was done on the DSP805EVM with the SDK.

If somebody can help it would be great.

Frikkie.
--- In , "Nitin Madhukar Yewale"
<nitin.yewale@w...> wrote:
> Hi,
> Are u using codewarrior for development? If so then u can
assign
> GPIO ISR by using following function call
>
> archInstallISR(&(pArchInterrupts -> GPIO_Port), ISRRoutine);
>
> Regards,
> Nitin
>
> -----Original Message-----
> From: drmapl <m.plagmann@i...> [mailto:m.plagmann@i...]
> Sent: Monday, January 20, 2003 7:26 AM
> To:
> Subject: [motoroladsp] GPIO interrupt callback? > Hi all,
> using a 56F805 I want to use the level sensitive interrupt input on
a
> GPIO line. While I find all sorts of high level routines to set
> various operation parameters I don't know how to set the interrupt
> callback function. How can I set this callback function? Do I have
to
> put a JSR statement into the interrupt table by hand?
>
> Many thanks,
> Manfred > _____________________________________
> 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:
>
> To Post:
>
> To Leave:
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3 > ">http://docs.yahoo.com/info/terms/ >
>
**************************Disclaimer**********************************
**
>
> Information contained in this E-MAIL being proprietary to Wipro
Limited is
> 'privileged' and 'confidential' and intended for use only by the
individual
> or entity to which it is addressed. You are notified that any use,
copying
> or dissemination of the information contained in the E-MAIL in any
manner
> whatsoever is strictly prohibited. **********************************************************************
***** _____________________________________
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:

To Post:

To Leave:

Archives: http://www.yahoogroups.com/group/motoroladsp

More Groups: http://www.dsprelated.com/groups.php3 ">http://docs.yahoo.com/info/terms/



You need to make sure that the priority level for the interrupt is greater than zero. This by defining the priority level in the appconfig.h file. An example is below:
 
#define  GPR_INT_PRIORITY_42                2
 
Just as an FYI you can also statically install your ISR by using the defines such as given below:
 
#define NORMAL_ISR_8 UserIsrLabel
 
Section 7 of the SDK programmmer's  guide has a good description of using the different interrupt levels support and installation. But in regards to the dynamic installation this is useful if the ISR service routine needs to change during the run time operation. If the ISR never really changes then the static installation is good and saves some space. Thanks.
 
- Bill
-----Original Message-----
From: f...@newelec.co.za [mailto:f...@newelec.co.za]
Sent: Thursday, January 23, 2003 5:17 AM
To: m...@yahoogroups.com
Subject: [motoroladsp] GPIO interrupt callback?

Hi
Istarted using the SDK enviroment 2 weeks ago before that I used
Radagast but since I could not get a sine function going and SDK had
one already I started coding in SDK.

I also tryed doing the GPIO interrupt. According to the registers of
the flash everything is correct. The archInstallISR is getting the
the right adress 0x0FC8 which will be for Port B. Iam trying to get a
interrupt on pin 4.

gpioPortB = open(BSP_DEVICE_NAME_GPIO_B, NULL);

archInstallISR(&(pArchInterrupts->MpioB), dirISR);

ioctl(gpioPortB, GPIO_SETAS_GPIO, gpioPin(B,4));
ioctl(gpioPortB, GPIO_SETAS_INPUT, gpioPin(B,4));
ioctl(gpioPortB, GPIO_INTERRUPT_ENABLE, gpioPin(B,4));

But I am also getting the same as Manfred.
I also tryed getting the proirity high but still iet will not
interrupt.

This was done on the DSP805EVM with the SDK.

If somebody can help it would be great.

Frikkie.
--- In m...@yahoogroups.com, "Nitin Madhukar Yewale"
<nitin.yewale@w...> wrote:
> Hi,
>       Are u using codewarrior for development? If so then u can
assign
> GPIO ISR by using following function call
>
>       archInstallISR(&(pArchInterrupts -> GPIO_Port), ISRRoutine);
>
> Regards,
> Nitin
>
> -----Original Message-----
> From: drmapl <m.plagmann@i...> [mailto:m.plagmann@i...]
> Sent: Monday, January 20, 2003 7:26 AM
> To: m...@yahoogroups.com
> Subject: [motoroladsp] GPIO interrupt callback?> Hi all,
> using a 56F805 I want to use the level sensitive interrupt input on
a
> GPIO line. While I find all sorts of high level routines to set
> various operation parameters I don't know how to set the interrupt
> callback function. How can I set this callback function? Do I have
to
> put a JSR statement into the interrupt table by hand?
>
> Many thanks,
> Manfred> _____________________________________
> 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:  m...@yahoogroups.com
>
> To Post:  m...@yahoogroups.com
>
> To Leave: m...@yahoogroups.com
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3

>
> ">http://docs.yahoo.com/info/terms/>
>
**************************Disclaimer**********************************
**
>
> Information contained in this E-MAIL being proprietary to Wipro
Limited is
> 'privileged' and 'confidential' and intended for use only by the
individual
>  or entity to which it is addressed. You are notified that any use,
copying
> or dissemination of the information contained in the E-MAIL in any
manner
> whatsoever is strictly prohibited.**********************************************************************
*****



_____________________________________
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:  m...@yahoogroups.com

To Post:  m...@yahoogroups.com

To Leave: m...@yahoogroups.com

Archives: http://www.yahoogroups.com/group/motoroladsp

More Groups: http://www.dsprelated.com/groups.php3


">Yahoo! Terms of Service.