R: hc12,can i return from interrupt and jump elsewhere?



"blisca" vrote
a function myfunc() is runnin,and an external events calls an interrupt
service routine,is it possible,once the interrupt did its job,to avoid
to
continue with my func()
from the point where it was interruptd,and going back to main()
instead?It
is not important if i have to run another couple of line in
myfunc().Important is that i can go out from it soon;

Can anyone suggest me the most elegant way?
Once more forgive my English.



That's an odd thing to do, and while you could probably do it one way or
another it would be difficult to get all the bugs worked out.
Why exactly are you trying to do this strange thing? Perhaps there's a
better way to achieve your higher-level goal than the method you're
investigating -- let us know, and we may be able to suggest it.

Tim Wescott
Control systems and communications consulting
http://www.wescottdesign.com


If all you want is to restart your code, i.e. re-enter main from the
start, then you can use a watchdog reset. Just stop toggleing your
watchdog when you get your event. The watchdog will trigger, and
restart your micro. If you want to resume a sepcific function on
reception of an interrupt event, then this is less trivial. Unless you
want to write your own RTOS, the simplest is to use either one of the
many open source ones, or a commercial one.
http://www.freertos.org/ seem to have a port for your micro.

And if he is simple seeking to abort an operation setting a flag in the
interrupt routine and checking it in the routine you are interrupting is
fairly straightforward.

It seems an odd requirement. To the original poster, what is the effect
you are trying to achieve? Tell us what you are trying to do rather
than how you are proposing to do it. We might be able to suggest better
approaches.

Robert



Ok,thanks again.
I kept my question generic just because i thought that what i'm doing
specifically is less interesting.
..I'm trying to implement an USB protocol using a 9s12 microcontroller,that i
call uC
http://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=0162468636bJwn

and a PDIUSBD12,a parallel to USB chip
http://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=0162468636bJwn

It is raccomended that anytime an USB device receives a bus reset it has to
accomplish it,signalling by an interrupt to the uC,even at the price of
letting loose what is remaining of the current function.then it should stay
in an idle loop waiting for another request.

Well ,being honest it should be better if any request could wake the uC from
idle loop by an interrupt,then once the specific request is decoded it has
to be accomplished,but in case of another interrupt(and it could happen) if
this comes from a bus reset(and once more the uC has to discover it by
decoding)the current function has to be stopped.

I did the question in that way with the aim to keep it simpler,and to learn
things step by step,and i'm aware that it should not be the best approach
to the problem

Hoping that what i wrote about USB is correct and not
misleading(please,correct me in this likely case) i wish you a nice Saturday
night.

Diego








.



Relevant Pages

  • Re: R: hc12,can i return from interrupt and jump elsewhere?
    ... then you can use a watchdog reset. ... reception of an interrupt event, ... .I'm trying to implement an USB protocol using a 9s12 microcontroller,that i ... It is raccomended that anytime an USB device receives a bus reset it has to ...
    (comp.arch.embedded)
  • Re: Once more VIA VT6212 USB Chip Problem
    ... I checked the interrupt init and I can see they are all set. ... I tried my image on this board and USB works fine!! ... Bus 0, Device 1, Function 0 ... is found for following PCI Device ...
    (microsoft.public.windowsce.platbuilder)
  • USBEHCI.SYS bug with high-bandwidth interrupt endpoints
    ... I was investigating USB 2.0 high-bandwidth interrupt ... three transactions per microframe with a maximum packet size of 1024 ... bytes in the endpoint descriptor. ...
    (microsoft.public.development.device.drivers)
  • Re: R: hc12,can i return from interrupt and jump elsewhere?
    ... Control systems and communications consulting ... reception of an interrupt event, ... .I'm trying to implement an USB protocol using a 9s12 microcontroller,that i ... Well,being honest it should be better if any request could wake the uC from ...
    (comp.arch.embedded)
  • Re: Periodic processing/fast timer
    ... If you want to do it in the ISR, just put the code in the ISR handler in the ... ISR just does minimal processing to determine the source of the interrupt ... I assume this is a completely custom USB ...
    (microsoft.public.windowsce.app.development)