Atmel website | ARM Community | AVR freaks | Technical Support
Banner
 FAQ •  Search •  Register •  Login 

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: Edge Triggered vs. Level Sensitive for Internal IRQs
PostPosted: Wed Dec 08, 2004 9:30 pm 
Offline
User avatar

Joined: Fri Feb 13, 2004 7:53 pm
Posts: 329
Dear AT91 Users,

you have probably all noticed that for internal IRQ sources coming from internal peripherals and going to the AIC, there is the possibility to configure the source type as Edge Triggered detection or Level Sensitive detection.

But what is the best one to use :?:

If we take the case that you only have one not nested interrupt at a time to manage in your application (I have a doubt... :shock: ), you can use the edge triggerred mode. But when there are severals IRQs to manage from one peripheral, by using the edge triggered way, you may lose IRQs if the first IRQ has not been treated fast enough to get another one from the same peripheral. The document attached with this topic gives you the explaination. To conclude there is no particular reason to use the edge triggered mode for internal IRQs.

http://www.at91.com/repFichier/Document-294/Edge_Level_triggering.pdf


Last edited by pfilippi on Wed Jun 18, 2008 10:58 am, edited 2 times in total.

Top
 Profile  
 
 Post subject: Correct way of using PDC & USART with interrupts? (newB)
PostPosted: Sat Jan 15, 2005 8:49 am 
Offline

Joined: Sat Jan 01, 2005 6:57 am
Posts: 8
Location: India
Hi,

Im trying to use interrupts to send data out of the USART, employing the PDC. The chip im using is the AT91RM9200. I have configured the USART in loopback mode, sending and receiving data at the same USART. Ive configured the USART to interrupt whenever ENDRX is asserted.

I have a doubt regarding the way the ENDTX interrupt is asserted. According to a timing diagram i got from the AT91CDROM related to the USART and PDC (AT91RM9200-BasicPDC) ,the ENDRX interrupt is asserted when the transmit counter reaches zero, and stays high till TNCR (next counter) is written (i do that in the interrupt handler).

When the control enters the interrupt handler, interrupts will have been enabled, but ENDTX will still be high before a new value is written into TNCR..whats stopping more such interrupts from being asserted? is it the fact that the new interupt wil have the same priority as this one?

Also, i had interrupts enabled for ENDRX assertion..but i was getting multiple interrupts, as soon as i switched on the device..the problem went away only when i followed the foll procedure for setting the usart and the PDC:

first configure the USARt but dont enable RX\TX
configure the PDC, load the transfer\receive buffer pointers n counts
then enable RX and TX through the usart.
only at the end enable interrupt for ENDRX on the USART

but still, in the us_irq_handler if i do not disable ENDRX interrupts, im getting multiple interrupts. must i disable the interrupt? or will just putting in new values for the RX buffer in the PDC stop more interrupts?

:cry:

thanx in anticipation
Mayank


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jan 16, 2005 10:08 am 
Offline
User avatar

Joined: Thu Feb 12, 2004 7:48 pm
Posts: 164
Location: Atmel Corp.
Hi funkymunky,

The AT91RM9200 is a ARM9 based. Could you copy and past your topic in the ARM9 Based Sub-forum. Here is not the better sub-forum to speak about ARM9 but ARM7 Based and, particularly, SAM Series.

Thanks for your understanding


Top
 Profile  
 
 Post subject: lost attachment
PostPosted: Thu Feb 23, 2006 3:18 pm 
Offline

Joined: Tue Feb 21, 2006 12:05 pm
Posts: 5
Hi,

if somebody has this file,
please renew the attachment.


edge_level_triggering.pdf


Top
 Profile  
 
 Post subject:
PostPosted: Thu Feb 23, 2006 3:38 pm 
Offline
User avatar

Joined: Thu Feb 12, 2004 7:48 pm
Posts: 164
Location: Atmel Corp.
Hi Romanua,

That's right.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: Bing [Bot] and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: