gnupic: PIC operating system
Subject:
Re: PIC operating system
From:
Dan Christian ####@####.####
Date:
23 Mar 2002 02:41:24 -0000
Message-Id: <200203230235.g2N2Zm601936@smtp.idiom.com>
I've done something along that line.
I have a multi-drop serial environment worked up. It can handle serial
speeds up to 115Kb and supports multiple commands in one packet. Its a
single master, many slave style network with group addressing. It's setup so
that you can download new code into flash over the network and it gets tied
directly into the base layer. It's not threaded, but the serial is handled
at interrupt level, plus there is a constant rate loop, and then the command
execution. So, it appears like two things happen at once, and the serial
just works magically.
I've really come to a halt on the project. One problem is that I need a
linker to tie everything together. I can run the MicroChip assember,
librarian, and linker under a combination of DOS and WINE, but it's a bit of
a hack. Since people would need a similar environment to develop code, it
really isn't supportable. When gputils comes online, things should be much
easier.
The other problem is just that the paging and banking on the pic16 family
makes everything much harder. The "OS" portion takes up the whole first page
and part of the second. Plus, doing everything in assembly (with a miniscule
call stack) is very slow.
I hope to pick this up again on the pic18F family. There is more memory, a
bigger stack, fewer (if any) paging issues, more flash, a faster clock, and
it still fits in a 28 pin package! Plus, it may be practical to add in code
in C.
I plan to open source the whole thing (Pic source, interface library source,
and schematic) if I can get it to a usable point. I'm hoping to make a few
$$ by selling pre-assembled boards and designing custom versions.
I talked to MicroChip last week. It sounds like all the development pieces
for the 18f will finally be available around the end of April. I may pick it
back up then.
-Dan
On Thursday 21 March 2002 09:51, TREVOR WHITE wrote:
> Hiya.
>
> I am kinda messing with writing a small operating system for a PIC. I am
> playing with the PIC16F877 at the moment. Has anyone else done this? Well I
> reckon they haveAre there sites out there. I work with PICs all day and we
> have generic code chunks for this and that but nothing that makes it real
> easy to do. I suppose programming in assembler doesnt make it easy full
> stop. ;-)