473,623 Members | 2,453 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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 1980
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***@YOURBRAn oos.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.ne t
Nov 14 '05 #3
In <mn************ ***********@YOU RBRAnoos.fr> Emmanuel Delahaye <em***@YOURBRAn oos.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************ ***********@YOU RBRAnoos.fr> Emmanuel Delahaye <em***@YOURBRAn oos.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.372 947@sj-nntpcache-3> kyle york <ky***@cisco.co m> 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+7 Aeo7f4UPbdHf0VA wpjw@tng>, Shalini <Shalini.1cr
ad*@mail.codeco mments.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
2967
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 dependent. You have to create macros , use casting and use indirect addressing (pointers) to read or write to memory mapped I/O. 2) C does not support real time interrupts. The interrupt vectoring is compiler dependent.
16
3611
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 their research labs .And second job is witha large software firm by the name of TCS who has a global presence and where probably I'll be exposed to technologies like Java /VB etc.I m in a deleima reagarding which one to take up.Since all of u guys...
5
1854
by: James | last post by:
I heard C is better for programming embedded systems than C++? Is this true, if so why?
2
3033
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
1579
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 for good programmers. Please mail your resume to stanna@optonline.net. We expect they are very good in C programming (pointers, stacks, queues, linked list implementations). Sai,
1
1648
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 networking. The object is to bring them on board and train in SAN/NAS switching, as long as they are solid C, Unix and Embedded programmers that have the work ethic and talent to be very good, he will train whatever else is necessary. See...
27
2067
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 file being written to. Right now I've got it hard coded to the exact location where I want it, but that's not very portable. Is there some way in C to retrieve the absolute path name of the current directory, so that I could use that in my code...
14
1878
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 there that do 8-Bit arithmetic faster than 16-Bit arithmetic, and so on these systems char is faster than int. Standarising C in such a way that int is at least 16-Bit, has this made C both slow and memory-hungry for embedded systems programming?
30
4283
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
8227
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8165
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8670
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
8326
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8469
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
6106
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5561
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
1
2602
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
1473
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.