Embedded C++ Book?

Any book recommendations for C++ techniques for deeply embedded systems? I know how to do this, but I kind of picked it up by osmosis in the

90's. I need a book I can recommend to folks.

I'm not looking for something that assumes a hard disk and a Pentium or Power PC -- I'm looking for a solid reference for using C++ in a deeply embedded system that's going to have a ton of code anyway but will benefit from the ease of translating good design to code that C++ provides.

(and if you want to have the whole C++ vs. C flame war again -- please start another thread, I've heard your arguments before and they didn't apply then).

--
Tim Wescott
Control system and signal processing consulting
 Click to see the full signature
Reply to
Tim Wescott
Loading thread data ...

Le Mon, 08 Mar 2010 21:00:01 -0800, Tim Wescott a écrit :

what is a deeply embedded system ?

Reply to
Habib Bouaziz-Viallet

provides.

Hi Tim,

I don't know if that will help you find the right book, but there are a few listed here:

formatting link

Good luck!

Stephane

--------------------------------------- Posted through

formatting link

Reply to
stephaneb

Bend over...

If you can't tell from the outside that it has a computer in it, and it has a computer in it, then it's likely that the computer is deeply embedded.

Think engine computers, fancy watches, fancy thermostats, uninterruptable power supplies, etc.

--
Tim Wescott
Control system and signal processing consulting
 Click to see the full signature
Reply to
Tim Wescott

does an engine have a computer in it, or is there a computer somewhere in the car controlling the engine?

tim

Reply to
tim....

Pardon me Tim, this is a end user point of view and is almost trivial ... Please don't forget you are talking to designers

There are some uninterruptable power supplies driven by a PowerPC (Freescale PowerQUICC).

After years programming C/C++ on Posix systems (Embedded sys and Desktop) i can say that this is likely the same recurrent issues we have to face. So IMHO there is no special book helping us to become a better programmer, just read code, copy, experiment new implementations ... and refine our skills, forget and relearning all by another way ... It take years.

Habib

Reply to
Habib Bouaziz-Viallet

Both, Many of the engine computers are located in a sealed box that is part of the engine assembly. There are many other options as well for location.

The processing power of the engine controllers is impressive most of the production cars have multiprocessors one of which is similar to a PowerPC.

Regards,

Walter..

-- Walter Banks Byte Craft Limited

formatting link

Reply to
Walter Banks

in

The engine assembly would be too hot. Some are under the hood, but far from the engine. Some are inside the passenger compartment. Toyota now probably wish they had not push this "drive by wire" technology too hard.

Reply to
linnix

Why? Haven't you heard? It *can't* possibly be the electronics at fault... (yeah, sure)

I wonder what the legal consequences would be of someone reverse engineering one of these controllers *and* the black box/log. I suspect you would end up spending lots of money being harassed! :<

Reply to
D Yuniskis

I'm surprised by that answer.

99.9999% of the time, if one of these deeply embedded processors dies then the complete product is scrap.

The idea that you would have to buy (and fit) a completely new engine because one of the controlling processors dies just doesn't make sense.

tim

Reply to
tim....

If the engine management computer dies then the engine stops working, yes. But we're not at the point yet where just because one part of your car dies you throw away the whole car.

That's because there's this technology that's still not quite dead yet called "repair". Perhaps you're young and haven't heard of it. You take your car to someone called a "mechanic"; they figure out which parts of the car are broken, and they replace them. Car manufacturers have very cleverly made their cars so that many of the parts are interchangeable, which means that instead of tossing out the whole car, your mechanic just tosses out the broken parts, and puts in new ones at much less than the cost of the whole car.

--
Tim Wescott
Control system and signal processing consulting
 Click to see the full signature
Reply to
Tim Wescott

They can replace the computer - about $700-$800 - probably more for luxury cars

Reply to
Dennis

I believe the US has a federally mandated 7 year warranty on emissions equipment, which includes the ECU.

Reply to
Jim Stewart

That presumes that: a) the "mechanic" can actually identify the broken part, and: b) a replacement part is actually available.

a) usually happens, but I often have problems with b). Older cars.

The last time I had a problen with b), after a lot of digging around I found the part on Amazon.com ??? What's a bookseller doing selling automotive parts??

--
ArarghMail003 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html
 Click to see the full signature
Reply to
ArarghMail003NOSPAM

Why not? My automotive parts dealer sells books ;-)

Reply to
Chris Burrows

I know that can

That is why I am questioning its definition as "deeply embedded" within the engine (using the definition of deeply embedded from earlier in the thread). If it's in its own box then it isn't embedded within the engine, its a completely separate component of the car.

tim

Reply to
tim....

I think you misunderstood the point that I was making.

See my reply to Dennis

tim

Reply to
tim....

Who said "within the engine"?

Interesting divergence of definitions. Without really arguing with you ('cause there's no really good definition of 'embedded' yet, much less 'deeply embedded'), let me give you mine:

Establish a spectrum of uses of a microprocessor.

On one end, put the computer that I have on my lap -- it runs Linux (or Windows), I'm composing a newsgroup response on it, there are games and office programs and scientific analysis programs lying dormant on it. It can do a bazillion different things, all oriented to the user, but without attaching additional hardware to it the thing is incapable of turning a motor, lighting a light (other than the screen backlight), maintaining a temperature, making a spark plug fire at a certain time, etc.

On the other end of this spectrum put a microcontroller that does nothing with its clock cycles but retrieve voltage measurements from one or more ADCs, perform signal processing algorithms on the readings, then writes the calculated values out to DACs. Give it no keyboard or keyboard interface, give it no screen or screen driver. If you're smart you'll give it a diagnostic interface so it can talk to an external computer, but in normal use that diagnostic interface won't be active.

I label the one end of the spectrum "regular old computer" or "personal computer", and the other end of the spectrum "deeply embedded". Even if that deeply embedded processor is mounted on a post in a grain field in Nebraska, even if it is so physically 'un-embedded' that it is sun-bleached and has bird droppings on it, functionally it is still 'deeply embedded' and about as far from a PC as you can get, even when a farm hand eats his lunch with his back against the pole, playing solitaire on his laptop.

--
Tim Wescott
Control system and signal processing consulting
 Click to see the full signature
Reply to
Tim Wescott

I did in my original question "does an engine have a computer in it" and the answer I got was "yes". So I continued from there.

tim

Reply to
tim....

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.