C Compiler for 8051 microcontroler

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
Hi folks..

I looking for C compilers (and C++ if exist) for developing systems for 8051 uC.

Thanks..

Re: C Compiler for 8051 microcontroler
Rafael Dias schrieb:

Quoted text here. Click to load it
uC.

... then look at http://www.8052.com. There are many links.

--
Dipl.-Ing. Tilmann Reh
Autometer GmbH Siegen - Elektronik nach Maß.
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler
Quoted text here. Click to load it
uC.
Quoted text here. Click to load it

http://www.dontronics.com/wickenhaeuser.html


--
Don McKenzie
E-Mail Contact Page:      http://www.e-dotcom.com/ecp.php?un=Dontronics

We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler
If you're serious about your work and don't want to waste time, the best one
I've used is from Keil.  Would trust nothing else.  http://www.keil.com /

-Z


Quoted text here. Click to load it
8051 uC.



Re: C Compiler for 8051 microcontroler
Keil is very good. Haven't tried others.



Re: C Compiler for 8051 microcontroler
Quoted text here. Click to load it

Keil is good but costs $$$.  Decent freeware one is SDCC (small device c ompiler)

go here:

http://sdcc.sourceforge.net/

Re: C Compiler for 8051 microcontroler
Quoted text here. Click to load it
Yes


Well it is free.. but hardley decent yet.

Try the Dunfeild compiler for a reasonable inexpensvie C compiler for
the 8051


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England    /\/\/\/\/\
/\/\/ snipped-for-privacy@phaedsys.org       www.phaedsys.org \/\/
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Re: C Compiler for 8051 microcontroler
Chris Hills threw some tea leaves on the floor

Quoted text here. Click to load it

Here we go again!

SDCC *is* decent (depending upon your definition of decent :).

I've used it to drive a LCD display via a AT89C2051, drive a stepper,
and various other things. It has an excellent PC simulator, and quite a
few libraries.

SDCC is Free and unlimited.

It's also very stable and works nicely with all the Unix toolsets etc.

Sure it's not as smooth as Keil stuff, but it's most certainly usable
right *now* and has been for years.



--
              Kind Regards from Terry
    My Desktop is powered by GNU/LinuX, Gentoo-1.4_rc2  
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler


Quoted text here. Click to load it

Not enough information. If he is a hobbyist, suggesting Keil is as inappropriate
as farting loudly in church.

The eval mode is not even worth talking about. Dunfield might be OK, but I've
never
heard anyone around here talk about it, good or otherwise.


[...]


Re: C Compiler for 8051 microcontroler

Quoted text here. Click to load it


never
Quoted text here. Click to load it

Thats because I don't believe in using public usenet groups to promote my
products (see my faq's) - I take it to email asap (exception when people start
thinking I don't exist anymore :-) - been in the business since 83.

Regards,

--
Dunfield Development Systems          http://www.dunfield.com
Low cost software development tools for embedded systems
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler


Quoted text here. Click to load it
inappropriate
Quoted text here. Click to load it
never
Quoted text here. Click to load it

I wasn't talking about self promotion, but rather what others say. I was going to
try your compiler, which was one listed on the Cygnal site (at least at one
time),
but I'm not expert enough to tell if the compiler is doing good job. Time has
been
a severe constraint in the past, maybe less now, and maybe I'll have more
opportunity
to learn the micro better and try your tool set.

If I had to go just on what people offered here, and a few other places, I would
not
even have a starting opinion on your products.


Re: C Compiler for 8051 microcontroler
Quoted text here. Click to load it

never
Quoted text here. Click to load it

I use it to support the COMM-Links (oldest code is ~15 years old) on
my HCS project. I use it under dos-emu on my Linux box and it works
very well and it's very inexpensive. I'm happy with it.

--
Linux Home Automation         Neil Cherry         snipped-for-privacy@comcast.net
http://home.comcast.net/~ncherry/ (Text only)
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler
Zelda (SDCC) has fleas. Not just a few, and not tiny ones either.

If you can sweet talk LEsly into sending you an evaluation copy of Keil, do
so.

Regards,
Murray.
_____________________________________
Murray R.Van Luyn
Computer Engineering Consultant.
Ph:   +618 9354 1375
E-mail: snipped-for-privacy@iinet.net.au
           snipped-for-privacy@cs.curtin.edu.au


Quoted text here. Click to load it
ompiler)
Quoted text here. Click to load it



Re: C Compiler for 8051 microcontroler
M.R.Van Luyn. threw some tea leaves on the floor

Quoted text here. Click to load it

I believe we are discussing C compilers Mr Van Luyn, and not pets.

Perhaps you would be so kind as to be specific as to what kinds of
problems you believe the OP will encounter using SDCC ?

Quoted text here. Click to load it

Why beg for proprietary software when Free Software (GPL'd) is available
as your *right* ?

Quoted text here. Click to load it


--
              Kind Regards from Terry
    My Desktop is powered by GNU/LinuX, Gentoo-1.4_rc2  
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler
Quoted text here. Click to load it

Please feel free to defend SDCC Terry. Varied and divergent opinion is a
very good thing. Just as you are free to state your opinion, readers of this
forum are free to formulate opinions and take actions based on  your
recommendations.

Zelda is fine if you want to write a few lines of code. I have found however
that for larger programs, the 'mystery' error rate increases exponentially
with the size of the code. I can't really tell you what's wrong with it -
maybe 'starts out happy, but eventually won't go' sums it up appropriately.
I'm not beyond stating that my experience may have been due to inexperience.
I wonder whether contributions to the associated manual from experienced
users such as yourself, wouldn't have helped to avoid some of the more
obvious pitfalls in Zelda's use.

The price is right, and I have a great deal of admiration for the clever
developers responsible for SDCCs creation. Use it though, and if you are a
sane and rational person, I categorically guarantee that you will abandon it
within a very short space of time. Failing that, I guess you could always
defend it to your dying breath.

I'm sorry Terry. I genuinely just don't want anyone else to waste the 3
painful weeks that I did.

Regards,
Murray.
___________________________________
Murray R.Van Luyn
Revolutionary Urban Guerilla.
Ph:   +618 9354 1375
E-mail: snipped-for-privacy@iinet.net.au
           snipped-for-privacy@cs.curtin.edu.au



Re: C Compiler for 8051 microcontroler
M.R.Van Luyn. threw some tea leaves on the floor

Quoted text here. Click to load it

Thank you, I do :)

Quoted text here. Click to load it

Of course, and I urge those readers to intelligently examine what you have
said and evidence proffered, before they assume what you write is
gosphel.

Quoted text here. Click to load it

Perhaps. It may also be another way of describing, fear uncertainty
and doubt ?

Free Software is different to closed source, it requires that we *all*
make it better by verifying bugs and then if we can't fix it ourselves,
lodging a bug report with the maintainer.

It seems to me (and I could be wrong) that you used SDCC, didn't know
what you were doing, didn't read the manual and just gave up ?

Did you determine what wasn't happening correctly, did you submit
a bug report ?

Quoted text here. Click to load it

Such an admission may not have gone astray in your original post I
submit.

Quoted text here. Click to load it


We all have only so much time Mr Van Luyn, and mine is committed
elsewhere right now, although as you can see I do have a short article
regarding SDCC and screen shot on my current web page.

For a few years I also maintained a page that described using the SDCC
simulator with DDD the GUI debuger.

Quoted text here. Click to load it

SDCC is used by many people and the SDCC list is highly active. So I can't
take your predictions seriously.

Quoted text here. Click to load it

I haven't had anything to defend in this case, I simply asked for reasons
regarding your negative claims of SDCC, and so far you have not offered one
tangible reason.

Your SDCC inexperience hardly qualifies as valid criticism imho.

Quoted text here. Click to load it

I understand and sympathise Mr Van Luyn, however experiences differ, as
do users of software.

Please be aware Mr Van Luyn, I'm not trying to start a flame war with
you over this, all I'm asking for are *reasons* for your criticism of
SDCC.



--
              Kind Regards from Terry
    My Desktop is powered by GNU/LinuX, Gentoo-1.4_rc2  
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler
Quoted text here. Click to load it

Therefore YOU as the user  are responsible for all the code you ship
compiled with it. The FDA rules on software will make it cheaper to use
the Keil than the SDCC for any medical project.

Quoted text here. Click to load it

I have come across other experienced embedded engineers who tried SDCC
and have found problems with it.  It is apparently better than it was
but nowhere near the same level of the commercial 8051 compilers.

Quoted text here. Click to load it

Why? I am paid to write code NOT debug the tools. This is the problem
with this sort of tool. If you find a bug you are expected to spend time
and effort fixing it or hoping that some one else might some time.

Quoted text here. Click to load it

This is the point. The commercial companies do fix problems and work
with customers.  Though a LOT of the problem sI see are due to
programmers who don't fully understand embedded C or the 8051
architecture that well. Much less how a compiler actually works.

Quoted text here. Click to load it

Many people use SDCC for two very important technical reasons.... it's
free and it runs on Linux.....  the other one is that it is open source.
This makes it UN-USABLE for much of the work I do. I have no guarantees
that it has not been "adjusted" buy some well meaning idiot.

Has it been run on either of the main C test suites?
How does it cope with the paranoia test?
What testing has been done on it?

Quoted text here. Click to load it

How much experience does he need to know it doesn't work?

Quoted text here. Click to load it

It doesn't work anything like as well as the commercial compilers, code
density etc.
It seems to have some serious short comings when compared to commercial
compilers.
It has not AFAIK passed anything like the Plum-Hall or Perennial tests.

Does it correctly handle structures? (It was mentioned to me a couple of
days ago it did not)
 




/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England    /\/\/\/\/\
/\/\/ snipped-for-privacy@phaedsys.org       www.phaedsys.org \/\/
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Re: C Compiler for 8051 microcontroler
Chris Hills threw some tea leaves on the floor

Quoted text here. Click to load it

Are you not responsible for your code Chris ?

Quoted text here. Click to load it

I don't doubt you, but how is the FDA relevant in this thread ?

Quoted text here. Click to load it

I understand that, and I haven't claimed it is.

Quoted text here. Click to load it

A bug report is *not* debuging the tools.


Quoted text here. Click to load it

Your ignorance about Free Software is astounding at times.

For every current Free Software package there is always a maintainer,
and that person or persons fixes bugs.

Quoted text here. Click to load it

Do they ?

They certainly take your money. They certainly go broke or get taken
over and dismantled, they certainly have key personel leave etc.

Quoted text here. Click to load it

Why ?

Quoted text here. Click to load it

You have no such guarantees with proprietary software either.
In fact you have *less* guarantees as you don't have the source to
check what's changed.

Quoted text here. Click to load it

Good questions, how do you answer them for your proprietary software ?

Quoted text here. Click to load it

Are you claiming that SDCC "doesn't work" now ?

Quoted text here. Click to load it

I don't doubt you, but why is this an issue ?

Quoted text here. Click to load it

That remark is so general, I'll just ignore it.


Quoted text here. Click to load it

Irrelevant for Free Software because of the proprietary nature of these
test suites.

The Plum Hall test suite requires licensing and hence it is not
acceptable to Free Software. Same for the PERENNIAL Validation Suites.

Quoted text here. Click to load it

Perhaps you would like to show why it does not ?



--
              Kind Regards from Terry
    My Desktop is powered by GNU/LinuX, Gentoo-1.4_rc2  
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler

Quoted text here. Click to load it

And you'd have to do the same thing with commercial tools
anyway [and then the bug doesn't get fixed for a year or two].

Quoted text here. Click to load it

Not in my experience.

I've gotten far, far, better support for the Gnu toolchain that
I ever got for any commercial product. For example, the bug I
found in the ARM assembler was fixed within hours of my
reporting it [and it was a very obscure bug].  

When I discovered there was a feature I wanted that wasn't
supported by the H8 linker, somebody told me exactly where/what
to do. Within a few hours, the feature was working.  A day
later my code had been reviewed, tweaked, and committed to the
official CVS tree by a maintainer.

Quoted text here. Click to load it

Apparently he never reads the license for that software stating
that it's "not guaranteed fit for anything. At all.  Ever."

Quoted text here. Click to load it

--
Grant Edwards                   grante             Yow!  BARBARA STANWYCK
                                  at               makes me nervous!!
We've slightly trimmed the long signature. Click to see the full one.
Re: C Compiler for 8051 microcontroler
Quoted text here. Click to load it

Yes. But my code does not include the compiler and validating it as
well.


Quoted text here. Click to load it

I have to work to FDA guidelines with some code. the requirements for
validating the compiler mean that I can use a validated commercial
compiler but could not afford to validate something like the SDCC.

Quoted text here. Click to load it

Yes.


But in a company you can change personal and not loose anything. It is
not the same as passing an open source project around. Besides the
embedded tools companies tend to vet people working on their tools.

Quoted text here. Click to load it

If it is open source, I have to test and validate the version I have. I
have no idea if the one I have is the tested version of if some well
meaning idiot has "adjusted" the source and re-compiled it.

Quoted text here. Click to load it

Far more guarantees... unless you are suggesting the the commercia
companies lie?


Quoted text here. Click to load it

Yes. I can even quote the Plum-Hall Licence number for the compiler test
suite.  


Quoted text here. Click to load it

Not to the same level the commercial compilers do.

Quoted text here. Click to load it

this is where we started...  It is probable (I don't have the chapter
and verse to quote so I wont say it is the case exactly) that Keil
compiler for example will produce executable that is half the size of
the SDCC. More to the point with data overlaying and correct handling of
integer promotion there are a lot of programs that will fit on chip in
an 8, 61, 32 or64K single chip part that wouldn't fit with the SDCC.
External memory is expensive.  Also of course you loose port pins. that
could push the cost of the design up by a few dollars.. say one or
two.... now multiply that by a run of 10,000 units. Your "free" compiler
has just cost you 10,000 dollars.


Quoted text here. Click to load it
I am glad you can afford to.


Quoted text here. Click to load it

This is like the primitive tribes (all long since gone) that said the
bullets of the un-believers could not hurt them.

I am not interested in your political/phiosophical beliefs. Which
industry accepted  tests have been applied to the SDCC compiler? which
has it passed?

None. In other words it is not an industrial C compiler? your "opinion"
does not count. Can yo finds anyone (suitably qualified) who would
support that the SDCC compiler (as it is now) is suitable for industrial
use?

A test is a test 2+2=4 regardless if it is calculated with a FSF program
or a commercial one. Any program that gives an incorrect answer is
wrong. It is no use you whining that you don't like the test. the Plum-
Hall and Perennial are the industry wide test suites. If you want o play
in the industrial world you have to pass these. Or of course come up
with your own (Free) test suite that is also accepted as a test for
compilers.

The SDCC has very poor code density and is untested by any accepted
industry test suite. Therefore it is not relevant for any industrial
use. Just hobby use.

I think that is what I said to start with.

I think for anyone who wants to experiment with a compiler, learn
parsing etc it is a great learning tool but I would not use it for any
commercial software.


BTW as it happens I am involved in doing a test suite that will be GPL.
It is not for compilers though.


Regards
        Chris.


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills  Staffs  England    /\/\/\/\/\
/\/\/ snipped-for-privacy@phaedsys.org       www.phaedsys.org \/\/
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Site Timeline