We've got this student working on simple embedded software on
different targets (LPC2106, Rabbit, PIC's), altough the code he is
writting is working, he does have problems in applying basic
embedded / 'real-time' concepts.
He has dificulties implementing simple assigments as: 'Parse an
incomming string on the RS232, blink a LED every 500mS while polling 2
switches'. It looks like he is implementing these assigments in a very
sequential way.
I'm convinced that this student has got the intelectual capacity and
motivation to become a good programmer , but i feel that he is missing
the basic concepts of 'real time' embedded programing.
Anyone some pointers to books that explain basic concepts as blocking
and non-blocking code, preemptive and cooperative multitasking,
message queues, state-machines.
I'm looking for some literature on the basic concepts, preferable
with examples in C but without going to much into detail on how
commercial RTOS works etc...
Thanks
> We've got this student working on simple embedded software on
> different targets (LPC2106, Rabbit, PIC's), altough the code he is
> writting is working, he does have problems in applying basic
> embedded / 'real-time' concepts.
>
> He has dificulties implementing simple assigments as: 'Parse an
> incomming string on the RS232, blink a LED every 500mS while polling 2
> switches'. It looks like he is implementing these assigments in a very
> sequential way.
>
> I'm convinced that this student has got the intelectual capacity and
> motivation to become a good programmer , but i feel that he is missing
> the basic concepts of 'real time' embedded programing.
>
This is a basic book here free for the downloading.
"First Steps with Embedded Systems"
http://www.bytecraft.com/Byte_Craft_Limited_Publishing
w..
--
Walter Banks
Byte Craft Limited
Jack Ganssle's "The Art of Designing Embedded Systems"
<http://www.amazon.co.uk/Designing-Embedded-Systems-Design-Engineers/dp/0750698691/ref=sr_1_1/026-7855824-0616466?ie=UTF8&s=books&qid=1177953786&sr=8-1>
and/or Jack Ganssle's "The Firmware Handbook: Embedded Technology"
<http://www.amazon.co.uk/Firmware-Handbook-Embedded-Technology/dp/075067606X/ref=sr_1_2/026-7855824-0616466?ie=UTF8&s=books&qid=1177953786&sr=8-2>
and/or Front Panel: niall Murphy's "Designing Software for Embedded User
Interfaces"
<http://www.amazon.co.uk/Front-Panel-Designing-Software-Interfaces/dp/0879305282/ref=sr_1_4/026-7855824-0616466?ie=UTF8&s=books&qid=1177954039&sr=8-4>
Not one I have read myself but, "Programming Embedded Systems" by Michael
Barr and Anthony Massa might also be useful.
<http://www.amazon.co.uk/Programming-Embedded-Systems-Michael-Barr/dp/0596009836/ref=sr_1_5/026-7855824-0616466?ie=UTF8&s=books&qid=1177954153&sr=8-5>
--
********************************************************************
Paul E. Bennett ....................<email://p...@amleth.demon.co.uk>
Forth based HIDECS Consultancy .....<http://www.amleth.demon.co.uk/>
Mob: +44 (0)7811-639972
Tel: +44 (0)1235-811095
Going Forth Safely ..... EBA. www.electric-boat-association.org.uk..
********************************************************************
<snip>
> Anyone some pointers to books that explain basic concepts as blocking
> and non-blocking code, preemptive and cooperative multitasking,
> message queues, state-machines.
>
> I'm looking for some literature on the basic concepts, preferable
> with examples in C but without going to much into detail on how
> commercial RTOS works etc...
Jean LaBrosse's book "MicroC/OS-II: The Real-Time Kernel" includes
considerable discussion of these topics and is well written;
it includes example code to illustrate topics such as you have
specified, with versions to run as tasks under the o/s and
independently as monolithic code (no o/s).
Regards,
Michael
Burns and Wellings, "Real Time Systems and their Programming Languages".
Disclaimer - I've never actually owned the book; I was taught by them
from the original notes that became it, 20-ish years ago ;)
That gives a lot of the classical RT programming constructs.
Sutter's "Embedded Systems Firmware Demystified" might be good, it's got
loads of examples in it, although I've never tried it on a novice ;)
A *good* computer architecture book - Hennessy & Patterson - is probably
a must-read too.
> I'm looking for some literature on the basic concepts, preferable
> with examples in C but without going to much into detail on how
> commercial RTOS works etc...
The way to learn C is by writing programs, with Harbison & Steele as a
fallback ;)
pete
--
pe...@fenelon.com "how many clever men have called the sun a fool?"
Ed.