Hi everyone I'm having some problem with starting cancelling timers. ... TimerControlBlock timer1; AvrXStartTimer(&timer1, 4); AvrXCancelTimer(&timer1); ...
I reviewed BasicTest3.c which exercises the timer subsystem and your particular test case (queueing/cancelling/queueing a single time on the queue) is not...
Hi Larry I post only these lines because my code is simply an exercise that start from BasicTest3.c. I noted that BasicTest3.c works in the same manner when...
Wow, it must have been a year since I last compiled and ran the test cases. Amazingly enough they did compile and run. Pippo: I am not seeing the problem you...
Hi Larry Currently I'm in holiday. When I come back at home I'll send you everything Bye Pippo ... test cases. Amazingly ... works for me under GCC. ... if it...
Hi again Larry, I come back from holiday 8(( I tried BasicTest3 under GCC and it works fine: therefore the problem is IAR related. I remember that I modified...
Yes, the file AvrX.inc needs to agree with avrx-ctoasm.inc The former defines offsets into the stack layout of the saved context and if you change registers...
Is it ok to call AvrXCancelTimer from within an interrupt timer. If not, how do I do it??? Seems to work most of the time, but eventually I lose a task that...
Although CancelTimer was never intended to be called from an interrupt routine it should work. There may be some subtle race condition that occurs inside timer...
Hi Larry I found the problem: in the newer version of IAR the calling convetions are changed, but there is an option to tell the compiler to use the previous...
Yes, the 'lost' task is actually hung on a timer that never seems to expire. This all came about when the need arose to have an interrupt driven serial IO...
And I would add that when the problem occurs, it is just the 'hung' task that is affected. The other task using a time continues to function just fine. Its...
Although I restored the previous parameters, the program does not work. But I noted that I used the avrx_tasking.s file modified by Steve Krepelka (downloaded...
Hi Pippo, The INTERFACE definition in header file avrx.h forces the IAR compiler to use the old ICCA90 calling convention for all AvrX function calls. The ...
Having timeouts on interrupt handlers is something I never solved for AvrX. Your solution seems pretty nice: use the cancel timer function to "signal" the...
Many thanks Steve If you have some news I'll wait for you on this group. Bye Pippo ... compiler to ... The ... assembly ... compiler ... with other ... had ......
I replaced the code in task2 in the timers example (timer.c) with that below and commented out the monitor task line in main(). When I run it in VMLAB I see...
It has been a long time since I wrote AvrX so I might not have this right. However, looking over the Timerqueue code I have a counting semaphore to allow the...
I'm new to this group, and I'm sure this is old news, but just in case... It looks like there's a small error in the header.h file in the Examples directory....
I wrote AvrX quite some time ago when all I had was the Atmel assembler and a 2313. It was all about minimizing resources used. If it were changed to C the...
I have an application where I will be using I2C for communication between four Mega128 boards. I have this working under AvrX on the bench between two boards...
Dave, This seems like a particularly scary thing to do. Have you considered just bit-banging the I2C stuff yourself? About all you're using in hardware at this...
Brian, That is certainly an option, but I'd still like to find out why I can't get external interrupts working. Even if I end up rolling my own I2C as you...
The file "avrx-signal.h" is hopelessly out of date with the latest 3.3 compiler: the interrupt vectors are not right and you never get to your INT3 handler....
... I can confirm Larry's advice. I am using external interrupts on an ... #include <avr/signal.h> #include <avr/interrupt.h> ... SIGNAL( SIG_INTERRUPT1 ) { ...
I've been building an application that makes use of AvrXYield to cooperatively multi-task three processes at the same priority, and have been experiencing...
When I try to use putChar() or getChar() is the compiler complaining that the functions have undefined references, aren't they defined in the library avrx.a?...