472,990 Members | 3,471 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,990 software developers and data experts.

Embedded systems and C programming


Hi,
Iam looking for some books which deal with Embedded software as well as
C programming. I was suggested An Embedded software primer - David E
Simon by a friend.
Would like to have your feedback as well as some good book
suggestions.

Thanks,
Shalini

--
Shalini
------------------------------------------------------------------------
Posted via http://www.codecomments.com
------------------------------------------------------------------------

Nov 14 '05 #1
6 1936
Shalini wrote on 17/09/04 :
Iam looking for some books which deal with Embedded software as well as
C programming. I was suggested An Embedded software primer - David E
Simon by a friend.
Would like to have your feedback as well as some good book
suggestions.


AFAIK, there is nothing special about C dealing with embedded software
programming. Most of the code can be written in reusable standard C. As
usual, the non standard code parts (system, direct I/O) should be
isolated from the standard code to help porting (and debugging too, as
a side effect).

The only thing is that it is a usual practice to unit test the code on
a hosted environment (like a PC under Windows or Linux). The tools are
often more easy and fast to use. This is why easy porting is not an
option! (The direct I/O can be simulated by some smart stub that
display intersting information like address, register number,
direction, values etc. A simple static variable can simulate a physical
register)

The group dedicated to embedded programming (not language specific) is:

news:comp.arch.embedded

--
Emmanuel
The C-FAQ: http://www.eskimo.com/~scs/C-faq/faq.html
The C-library: http://www.dinkumware.com/refxc.html

"C is a sharp tool"

Nov 14 '05 #2
On Sun, 19 Sep 2004 10:32:53 +0200, Emmanuel Delahaye
<em***@YOURBRAnoos.fr> wrote:
<snip>
AFAIK, there is nothing special about C dealing with embedded software
programming. Most of the code can be written in reusable standard C. <snip>
The only thing is that it is a usual practice to unit test the code on
a hosted environment (like a PC under Windows or Linux). The tools are
often more easy and fast to use. This is why easy porting is not an
option! (The direct I/O can be simulated <snip>


Minor point of English usage: at least in US "not an option" means
"not possible; prohibited". (Perhaps most famously in the cliched
exhortation of sports coaches and other "leaders" that "failure is not
an option", meaning "I don't allow you to give up".) I'm certain what
M. Delahaye wanted is "not optional", which although formally
ambiguous conventionally means "required; mandatory".

- David.Thompson1 at worldnet.att.net
Nov 14 '05 #3
In <mn***********************@YOURBRAnoos.fr> Emmanuel Delahaye <em***@YOURBRAnoos.fr> writes:
Shalini wrote on 17/09/04 :
Iam looking for some books which deal with Embedded software as well as
C programming. I was suggested An Embedded software primer - David E
Simon by a friend.
Would like to have your feedback as well as some good book
suggestions.


AFAIK, there is nothing special about C dealing with embedded software
programming. Most of the code can be written in reusable standard C. As
usual, the non standard code parts (system, direct I/O) should be
isolated from the standard code to help porting (and debugging too, as
a side effect).


What library facilities are guaranteed by the C standard for freestanding
implementations?

Dan
--
Dan Pop
DESY Zeuthen, RZ group
Email: Da*****@ifh.de
Currently looking for a job in the European Union
Nov 14 '05 #4
Greetings,

Dan Pop wrote:
In <mn***********************@YOURBRAnoos.fr> Emmanuel Delahaye <em***@YOURBRAnoos.fr> writes:
What library facilities are guaranteed by the C standard for freestanding
implementations?


Assuming by facilities you mean functions and not library management,
from this:

4.6: A conforming freestanding implementation shall accept any stricky
conforming program that does not use complex types and in which the use
of the features specified in the library clause (clause 7) is confined
to the contents of the standard headers <float.h>, <iso646.h>,
<limits.h>, <stdarg.h>, <stdbool.h>, <stddef.h>, and <stdint.h>

I gather a freestanding implementation needs *no* library functions.
--
Kyle A. York
Sr. Subordinate Grunt, SC
Nov 14 '05 #5
In <1096300731.372947@sj-nntpcache-3> kyle york <ky***@cisco.com> writes:
Dan Pop wrote:

What library facilities are guaranteed by the C standard for freestanding
implementations?
Assuming by facilities you mean functions and not library management,
from this:


It was a rhetorical question.
I gather a freestanding implementation needs *no* library functions.


That's my point: they do need standard library functions (and most of
them provide them), but the standard guarantees the existence and
semantics of none, so writing portable code (i.e. code that relies
exclusively on features guaranteed by the standard) is not as easy as
Emmanuel claims.

It's easier in practice, because the implementors go beyond the
strict requirements of the C standard, but this doesn't count as
*portable* programming in the context of c.l.c.

Dan
--
Dan Pop
DESY Zeuthen, RZ group
Email: Da*****@ifh.de
Currently looking for a job in the European Union
Nov 14 '05 #6
In article <1095468278.F+7Aeo7f4UPbdHf0VAwpjw@tng>, Shalini <Shalini.1cr
ad*@mail.codecomments.com> writes

Hi,
Iam looking for some books which deal with Embedded software as well as
C programming. I was suggested An Embedded software primer - David E
Simon by a friend.
Would like to have your feedback as well as some good book
suggestions.

Thanks,
Shalini

www.accu.org

See the book revues section. there is a section on embedded.

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills Staffs England /\/\/\/\/\
/\/\/ ch***@phaedsys.org www.phaedsys.org \/\/
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
Nov 14 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

12
by: Bill Hanna | last post by:
C is inadequate for embedded systems for the following reasons: 1) Direct addressing of memory mapped I/O is not supported simply and easily. You have to find work-arounds that are compiler...
16
by: Arun | last post by:
I have a query.I am a freah engineering graduate and have 2 job offers.One is with LG Electronics Korea where I 'll be working in korea as a software Engineer in Embedded systems exclusively at...
5
by: James | last post by:
I heard C is better for programming embedded systems than C++? Is this true, if so why?
2
by: Tom Gugger | last post by:
AIM EXECUTIVE tgugger@aimexec.com 419-255-1900 We have a client that needs an embedded software engineer. This is
4
by: stanna | last post by:
Hello, This is Sai, we are looking for Embedded Softwatre developers to work in Embedded systems, if required, we will offer training in Embedded systems also for fresh graduates, we are looking...
1
by: leeanngriego | last post by:
I have a client who has asked me to find him some solid up and coming embedded engineers. 2 to 3 years expereince with Embedded Linux, VxWorks, Nucleus or any other RTOS who has working in L2/L3...
27
by: kvnsmnsn | last post by:
I've written a piece of code that interfaces with Postgres. It needs to write a Postgres table to disk, which it does with the <COPYcom- mand. That command requires the absolute file name of the...
14
by: Martin Wells | last post by:
When I want to store a number, I use "unsigned". I go with unsigned because it's the natural type for the system, and so should be the fastest. However, there are 8-Bit microcontrollers out...
30
by: =?ISO-8859-1?Q?Tom=E1s_=D3_h=C9ilidhe?= | last post by:
Let's say we had a simple function for returning the amount of days in a month: unsigned DaysInMonth(unsigned const month) { switch (month) { case 8: case 3: case 5:
0
by: lllomh | last post by:
Define the method first this.state = { buttonBackgroundColor: 'green', isBlinking: false, // A new status is added to identify whether the button is blinking or not } autoStart=()=>{
0
by: Aliciasmith | last post by:
In an age dominated by smartphones, having a mobile app for your business is no longer an option; it's a necessity. Whether you're a startup or an established enterprise, finding the right mobile app...
0
tracyyun
by: tracyyun | last post by:
Hello everyone, I have a question and would like some advice on network connectivity. I have one computer connected to my router via WiFi, but I have two other computers that I want to be able to...
2
by: giovanniandrean | last post by:
The energy model is structured as follows and uses excel sheets to give input data: 1-Utility.py contains all the functions needed to calculate the variables and other minor things (mentions...
4
NeoPa
by: NeoPa | last post by:
Hello everyone. I find myself stuck trying to find the VBA way to get Access to create a PDF of the currently-selected (and open) object (Form or Report). I know it can be done by selecting :...
1
by: Teri B | last post by:
Hi, I have created a sub-form Roles. In my course form the user selects the roles assigned to the course. 0ne-to-many. One course many roles. Then I created a report based on the Course form and...
3
by: nia12 | last post by:
Hi there, I am very new to Access so apologies if any of this is obvious/not clear. I am creating a data collection tool for health care employees to complete. It consists of a number of...
0
isladogs
by: isladogs | last post by:
The next online meeting of the Access Europe User Group will be on Wednesday 6 Dec 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, Mike...
3
SueHopson
by: SueHopson | last post by:
Hi All, I'm trying to create a single code (run off a button that calls the Private Sub) for our parts list report that will allow the user to filter by either/both PartVendor and PartType. On...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.