[Icc-avr] [Fwd: Have you used Salvo or another RTOS for your
ATMega projects? I need your opinion!]
Dan Mullin
d.mullin at goase.com
Wed Feb 6 04:35:45 PST 2008
Thanks for your input, Jim. Would anyone else want to chime in?
Dan
Jim Patchell wrote:
> I have used Salvo in quite a few projects using ICCAVR.
>
> Salvo is...well, a little different, as real time operating systems go.
>
> It is, however, quite effective.
>
> It is not a preemptive operating system. You have to keep this in
> mind while using it. It uses a single stack, which on a small micro
> is a good thing. This is the trade off you make.
>
> It has a few quirks that I found took a while to get used to, since I
> had used an RTOS on a big 68000 based system before, and kept trying
> to do things that Salvo just can't do. For instance...you can only
> suspend at the very top level of your task. This quirk does make it a
> bit messy, and I found the best way to deal with this is by throwing
> more tasks at the problem...since with Salvo, more tasks are very
> cheap...(with a preemptive OS, each task has a significant cost in RAM
> resources).
>
> The last time I used Salvo was on a Motion Control System, however it
> also had an FPGA (xilinx) in it that did the profile generation for
> the Stepper motors and well as provided the step and direction pulses
> to the motor controller. The profile generator would generate an
> interrupt when the profile was done, and the interrupt routine would
> post the appropriate semaphore so that the next motion profile would
> be started...(and oh yes...this thing was doing about 12 axis)...
>
> The only thing that scare me a bit about your requirements is the
> "checking every 50uS" bit...that might be possible with Salvo, but I
> never did anything quite that aggressive with it.
>
> Hope this helps...
>
> -Jim
>
> Richard Man wrote:
>> For some reaqons, Dan cannot post directly tot he list. I will try to
>> track it down. Any mailman guru out there :-)?
>>
>>
>>> Subject: Have you used Salvo or another RTOS for your ATMega
>>> projects? I need your opinion!
>>> Date: Tue, 29 Jan 2008 07:51:56 -0700
>>> From: Dan Mullin <d.mullin at goase.com> <mailto:d.mullin at goase.com>
>>> To: icc-avr at imagecraft.com <mailto:icc-avr at imagecraft.com>
>>>
>>>
>>>
>>> Folks,
>>>
>>> I have been writing using ImageCraft C for a number of years and
>>> love it. Its clean, reliable, and quick. However, my code has simply
>>> started reaching the point where it is becoming unmanageable. All my
>>> projects have been written in an "in-line loop" with the typical ISR's
>>> popping off as required but I am finding I simply have a lot of
>>> stuff that needs to be in the loop but really doesn't need to be
>>> checked all that often. I am trying to make the decision as to
>>> whether an RTOS would help things or simply muddy the waters even more.
>>>
>>> Most of these applications are based on the ATMega 128 or 2561. They
>>> all involve motion control, reading encoders quickly, doing realtime
>>> PWM accel/decel on stepper and brush motors, reading user input via
>>> a UART, responding back, retrieving and updating parameters, etc,
>>> etc. I have a few items that must be checked as quickly as once
>>> every 50uS and others that only need a peak every 100ms or so. Of
>>> course, I need to handle the UART I/O on both UART's and, possibly,
>>> on a third if I step up to the
>>> 2560.
>>>
>>> Have any of you found a distinct advantage from the standpoint of
>>> simplifying code structure and reusability of code? Does an RTOS
>>> have the capability to handle things this quickly? How painful was
>>> the transition from a sequential loop structure to an RTOS? Any
>>> feedback would be greatly appreciated.
>>>
>>> Thanks,
>>>
>>> Dan Mullin
>>> Automated Systems Engineering, Inc.
>>>
>>
>> // richard < http://www.imagecraft.com/>
>> < http://www.dragonsgate.net/mailman/listinfo> On-line orders,
>> support, and listservers available on web site.
>> [ For technical support on ImageCraft products, please include all
>> previous replies in your msgs. ]
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Icc-avr mailing list
>> Icc-avr at imagecraft.com
>> http://dragonsgate.net/mailman/listinfo/icc-avr
>
> _______________________________________________
> Icc-avr mailing list
> Icc-avr at imagecraft.com
> http://dragonsgate.net/mailman/listinfo/icc-avr
>
>
> __________ NOD32 2846 (20080204) Information __________
>
> This message was checked by NOD32 antivirus system.
> http://www.eset.com
>
>
>
More information about the Icc-avr
mailing list