Reply by Dave Nadler April 21, 20112011-04-21
A quick follow-up...

First thanks to those who sent suggestions.

I used AAPCB and they were first rate, fast,
and dealt nicely with a few of my, um, errors.
They had the boards fabbed, bought the parts,
shipped first-rate no-squawk first-article
a day ahead of schedule.

This is a moderately dense 4-layer, parts
both sides, nothing really hard. Does have
some large SMD inductors and such, all AOK.

Thanks again,
Best Regards, Dave
Reply by ChrisQ April 1, 20112011-04-01
Nico Coesel wrote:

> > Then don't bring it up. The trouble with hyperterminal is that in the > end of the day it can do everything including releasing the serial > port without closing the program (which AFAIK Tera term can't do). >
The bad thing about hyperterminal was that it locked up or even could blue screen the machine on older versions and the user interface is just so clunky. The advantage of terraterm is that it is easy to use, works on the network for telnet as well as serial lines. Also, the source is available, in C and Pascal, so you can modify the code if your not happy with it. Terraterm just works, whereas hyperterminal seems to obstruct everything you want to do... Regards, Chris
Reply by Nico Coesel April 1, 20112011-04-01
David Brown <david@westcontrol.removethisbit.com> wrote:

>On 31/03/2011 14:16, Schueler wrote: >> Dear all, >> >> thanks so far for contributing to this fruitful discussion. I finally bought >> the >> MDE 8051 Trainer Board populated with the MAXIM DS89C4xx 8051 derivate. It >> features the ability to being programmed via HyperTerminal by means of a hex >> file. Since this is my first encounter with microcontrollers, let me ask you >> for advice how to generate a hex file for this device. Is there any freeware >> or open source tool for this purpose of how should I proceed? >> Thank you. >> > >I don't want to start another battle here about terminal emulators. >Everyone seems to have their favourite - but there is a solid consensus >that HyperTerminal is the worst option. I'd recommend you get Tera Term >Pro <http://ttssh2.sourceforge.jp/> - it's free, and works well. If you >want to know what's wrong with HyperTerminal, or what alternatives there >are, /please/ search the comp.arch.embedded archives before posting >anything on the subject. And if anyone else wants to recommend a >different program, and really feels it is worth the time and effort to >go through the subject /again/, please start a new thread.
Then don't bring it up. The trouble with hyperterminal is that in the end of the day it can do everything including releasing the serial port without closing the program (which AFAIK Tera term can't do). -- Failure does not prove something is impossible, failure simply indicates you are not using the right tools... nico@nctdevpuntnl (punt=.) --------------------------------------------------------------
Reply by malcolm April 1, 20112011-04-01
On Apr 1, 12:16=A0am, "Schueler" <berti.schue...@arcor.de> wrote:
> Dear all, > > thanks so far for contributing to this fruitful discussion. I finally bou=
ght
> the > MDE 8051 Trainer Board populated with the MAXIM DS89C4xx 8051 derivate. I=
t
> features the ability to being programmed via HyperTerminal by means of a =
hex
> file. Since this is my first encounter with microcontrollers, let me ask =
you
> for advice how to generate a hex file for this device. Is there any freew=
are
> or open source tool for this purpose of how should I proceed? > Thank you.
You can move from a DS89C4xx, to a more modern device, and make up any compiler differences in the silicon. So the SiLabs C8051F581 for example, has 128KF, and 8KRam, and has OnChip debug that works with SDCC.(not a terminal download-and-hope) Search for TOOLSTICK582DC, and TOOLSTICKBA, for the low cost pair to develop. -jg
Reply by Oliver Betz March 31, 20112011-03-31
David Brown wrote:

[...]

>I don't want to start another battle here about terminal emulators. >Everyone seems to have their favourite - but there is a solid consensus >that HyperTerminal is the worst option. I'd recommend you get Tera Term
No consensue because I disagree. HyperTerminal is by far _not_ the worst option. Oliver -- Oliver Betz, Muenchen (oliverbetz.de)
Reply by Nico Coesel March 31, 20112011-03-31
Chris H <chris@phaedsys.org> wrote:

>In message <3ZydnWuLD6WH5gnQnZ2dnUVZ8rWdnZ2d@lyse.net>, David Brown ><david@westcontrol.removethisbit.com> writes > >> Then there is the open source SDCC. My understanding (without having >>used any of these tools) is that SDCC generates good, sensible code, >>but is not nearly as clever as Keil at re-using and merging memory. > >I have used this one and it supports only the mainstream 8051's The >Dallas parts are not mainstream and use a non standard core with >additional non standard SFR's
Well, having different SFRs doesn't hurt the compiler. As long as the controller can run 8051 code you can use SDCC. The term support for microcontroller families is always a bit vague. The people maintaining GCC for the MSP430 finally agreed not to have a command line option which specifies the controller. Instead you select the proper link file and header files.
>SDCC does not generate good or sensible code. Last time we had this >discussion and it got heated someone (no names to protect the guilty) >who was arguing very strongly for the SDCC was going to produce a >comparison between the two. Some two years later and we are still >waiting.... > >Keil used to recommend the Dunfield 8051 compiler for hobby users with >no money.
Sorry, but the Dunfield 8051 compiler is a real piece of crap. CRAP! CRAP! CRAP! CRAP! Yes, I admit I'm one of the dumb suckers who actually bought the Dunfield 8051 compiler. If you have no money use SDCC. Even the very first versions of SDCC will outperform the code generated by the Dunfield compiler at 1/4 the clock rate.
>NOTE it is worth looking around at come of the 8051 dev kits as the >limit on their eval Keil compilers is twice the normal one. > >>But then, if you were interested in writing efficient code that runs >>quickly, you wouldn't be using an 8051 in the first place. > >Ouch! Be fair the 8051 is very cost effective for a lot of things. Not >everything warrants a PPC :-)
I'd rephrase that as: if you want to use good quality free tools, the 8051 is a really bad choice. -- Failure does not prove something is impossible, failure simply indicates you are not using the right tools... nico@nctdevpuntnl (punt=.) --------------------------------------------------------------
Reply by David Brown March 31, 20112011-03-31
On 31/03/2011 15:51, Chris H wrote:
> In message<3ZydnWuLD6WH5gnQnZ2dnUVZ8rWdnZ2d@lyse.net>, David Brown > <david@westcontrol.removethisbit.com> writes > >> Then there is the open source SDCC. My understanding (without having >> used any of these tools) is that SDCC generates good, sensible code, >> but is not nearly as clever as Keil at re-using and merging memory. > > I have used this one and it supports only the mainstream 8051's The > Dallas parts are not mainstream and use a non standard core with > additional non standard SFR's > > SDCC does not generate good or sensible code. Last time we had this > discussion and it got heated someone (no names to protect the guilty) > who was arguing very strongly for the SDCC was going to produce a > comparison between the two. Some two years later and we are still > waiting.... > > Keil used to recommend the Dunfield 8051 compiler for hobby users with > no money. > > There is the option of course of the Keil evaluation compiler. The > biggest problem with the 8051 is the very small amount of RAM. You > usually run out of this first rather than program memory. The Keil uses > a rigorous calling tree analysis to do data overlaying. Something you > should not do manually! I have seen 120 bytes of data shrink to 19 bytes > in the Keil compiler. > > It also comes with a large number of example programs. > > The other point of the Keil system is the extremely good simulator > debugger. It will also mate with the www.labcenter.com PCB design > software which also has a spice simulator. SO you can actually simulate > the hardware and software. The Lancenter SW is not expensive. > > > NOTE it is worth looking around at come of the 8051 dev kits as the > limit on their eval Keil compilers is twice the normal one. >
Well, I'm not going to argue for or against tools I haven't used, and don't intend to use - I was merely passing on what I've heard, with some predictions on how this thread would proceed.
>> But then, if you were interested in writing efficient code that runs >> quickly, you wouldn't be using an 8051 in the first place. > > Ouch! Be fair the 8051 is very cost effective for a lot of things. Not > everything warrants a PPC :-) >
The 8051 is a good choice if you have a lot of legacy code, or if you want a weird chip that happens to contain an 8051 core. Otherwise there are much better choices in almost every way - both in terms of the chips themselves and the tools around them. I fully agree that not every project warrants a PPC - you don't buy a chip that is more expensive, requires more power, or is more difficult to use than necessary. But you are talking about an architecture that is stuck in the land that time forgot - if you drop the 8051 requirement, then you can always find better chips.
Reply by ChrisQ March 31, 20112011-03-31
Chris H wrote:

> > There is the option of course of the Keil evaluation compiler. The > biggest problem with the 8051 is the very small amount of RAM. You > usually run out of this first rather than program memory. The Keil uses > a rigorous calling tree analysis to do data overlaying. Something you > should not do manually! I have seen 120 bytes of data shrink to 19 bytes > in the Keil compiler. >
That's something we can agree on :-). I worked on a project where the client was immovably opposed to hw platform change and insisted on using a legacy platform that resulted in over 6 banks of code and data. The way the bl51 linker overlayed everything seemed almost like magic. We did have the benefit of generous external xdata ram space, which no doubt helped. It's a very good toolchain indeed, if you need that sort of capability... Regards, Chris
Reply by Chris H March 31, 20112011-03-31
In message <3ZydnWuLD6WH5gnQnZ2dnUVZ8rWdnZ2d@lyse.net>, David Brown
<david@westcontrol.removethisbit.com> writes

> Then there is the open source SDCC. My understanding (without having >used any of these tools) is that SDCC generates good, sensible code, >but is not nearly as clever as Keil at re-using and merging memory.
I have used this one and it supports only the mainstream 8051's The Dallas parts are not mainstream and use a non standard core with additional non standard SFR's SDCC does not generate good or sensible code. Last time we had this discussion and it got heated someone (no names to protect the guilty) who was arguing very strongly for the SDCC was going to produce a comparison between the two. Some two years later and we are still waiting.... Keil used to recommend the Dunfield 8051 compiler for hobby users with no money. There is the option of course of the Keil evaluation compiler. The biggest problem with the 8051 is the very small amount of RAM. You usually run out of this first rather than program memory. The Keil uses a rigorous calling tree analysis to do data overlaying. Something you should not do manually! I have seen 120 bytes of data shrink to 19 bytes in the Keil compiler. It also comes with a large number of example programs. The other point of the Keil system is the extremely good simulator debugger. It will also mate with the www.labcenter.com PCB design software which also has a spice simulator. SO you can actually simulate the hardware and software. The Lancenter SW is not expensive. NOTE it is worth looking around at come of the 8051 dev kits as the limit on their eval Keil compilers is twice the normal one.
>But then, if you were interested in writing efficient code that runs >quickly, you wouldn't be using an 8051 in the first place.
Ouch! Be fair the 8051 is very cost effective for a lot of things. Not everything warrants a PPC :-) -- \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ \/\/\/\/\ Chris Hills Staffs England /\/\/\/\/ \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
Reply by Rich Webb March 31, 20112011-03-31
On Thu, 31 Mar 2011 14:16:15 +0200, "Schueler" <berti.schueler@arcor.de>
wrote:

>Dear all, > >thanks so far for contributing to this fruitful discussion. I finally bought >the >MDE 8051 Trainer Board populated with the MAXIM DS89C4xx 8051 derivate. It >features the ability to being programmed via HyperTerminal by means of a hex >file. Since this is my first encounter with microcontrollers, let me ask you >for advice how to generate a hex file for this device. Is there any freeware >or open source tool for this purpose of how should I proceed?
[Please don't top-post.] The Small Device C Compiler (aka sdcc) is free open-source software and is reasonable to start out with. You're probably best to begin poking around with getting your first "Hello, world!" program (i.e., get a selected pin to toggle at a selected rate) in assembler so that you get accustomed to the 8051 architecture before moving on to C programming. http://sdcc.sourceforge.net/ -- Rich Webb Norfolk, VA