I'm having a hard time making a simple IAR PowerPac RTOS application work.
As recommended by the vendor, I started with their example which used
the MSP430FG4619 uC, the OS real-time interrupt ("EMBOS_TIMER_VECTOR",
"tick") timer based on Timer_A (up-mode) at 1 ms rate, which was
driven by the SMCLK.
I made the following changes. Switched the EMBOS_TIMER_VECTOR to use
Timer_B1 interrupt, setup Timer_B (continuous mode) for the interrupt
as based it on the ACLK at 1 ms rate.
The timer is working fine; an interrupt occurs and OS_HandleTick(),
etc. get called within the timer interrupt. BUT, my tasks never get
called!
Also, I have redefined OS_FSYS to both 32768 and 1048576L, but it
doesn't seem to matter.
I don't think OS_GetTime_Cycles() is used by the scheduler, but I may
be wrong. This function is definitely wrong because of the changes to
the clock, but I don't think it matters here.
Any ideas?
Anyone know of where I can find a code example?
I am using an eval version of the RTOS. Does the real version come
with more board support packages or options?
Thanks.
Stuart
------------------------------------

(You need to be a member of msp430 -- send a blank email to msp430-subscribe@yahoogroups.com )
This turned out to be a rather mundane programmer problem. Since I
only had one Timer_B interrupt in use, I didn't bother to read the
TBIV register. As we know, you need to read TBIV in order to clear
the appropriate CCIFG flag for that interrupt (or clear it explicitly).
So, the interrupt was being called over and over again, never actually
giving the task a chance.
Stuart
--- In m...@yahoogroups.com, "Stuart_Rubin"
wrote:
>
> I'm having a hard time making a simple IAR PowerPac RTOS application
work.
>
> As recommended by the vendor, I started with their example which used
> the MSP430FG4619 uC, the OS real-time interrupt ("EMBOS_TIMER_VECTOR",
> "tick") timer based on Timer_A (up-mode) at 1 ms rate, which was
> driven by the SMCLK.
>
> I made the following changes. Switched the EMBOS_TIMER_VECTOR to use
> Timer_B1 interrupt, setup Timer_B (continuous mode) for the interrupt
> as based it on the ACLK at 1 ms rate.
>
> The timer is working fine; an interrupt occurs and OS_HandleTick(),
> etc. get called within the timer interrupt. BUT, my tasks never get
> called!
>
> Also, I have redefined OS_FSYS to both 32768 and 1048576L, but it
> doesn't seem to matter.
>
> I don't think OS_GetTime_Cycles() is used by the scheduler, but I may
> be wrong. This function is definitely wrong because of the changes to
> the clock, but I don't think it matters here.
>
> Any ideas?
>
> Anyone know of where I can find a code example?
>
> I am using an eval version of the RTOS. Does the real version come
> with more board support packages or options?
>
> Thanks.
>
> Stuart
>
------------------------------------

(You need to be a member of msp430 -- send a blank email to msp430-subscribe@yahoogroups.com )