bmw@isgtec.UUCP (Bruce Walker) (03/14/90)
In article <1990Mar13.170733.13225@utzoo.uucp> henry@utzoo.uucp (Henry Spencer) writes: > In article <1247@swbatl.sbc.com> adams@swbatl.UUCP (Tom Adams - 235-745) writes: > >I'm interested in stuff that will fit on one proto-board, has a serial > >port, and provides some ttl level input and output. > > My own long-time favorite (although admittedly I haven't used it a lot > in things that actually got built) is the 68701. My own long-time favorite (since 1979) is the Zilog Z8. Now a family of course (like all the other single-chippers). I *did* use this little guy in a lot of things that got built, including a line of vacuum-flourescent panel meters for the manufacturing and nuclear industries and as the brains of a daisy-wheel motor driver. For this, the Z8 had to perform a second- order servo-loop algorithm (tachometer and absolute positioning functions) while receiving shaft encoder signals every 40uS and directly driving an 8-bit DAC to the motor amp.* These micros have all the usual bells and whistles: 128 bytes ram, 32 control registers, up to 32 bits of i/o, two on chip timers, flexible uart, xtal osc. etc. But the biggie for me, what really makes this chip stand out, is the nice clean, "orthogonal" instruction set. This was the first (and still the only cheap) single-chipper without the classic Intel-patented accumulator bottleneck (ala 8051). All the instructions are dual (some triple) operand with source and destination registers declared. Of course, this is of real interest to assembly-coders, but in those days (and still much today) asm was the only way one coded for real-time micro apps. There is a company marketing a C compiler for the Z8 but I have to admit to being very dubious about the possibilities of its producing tight code. I actually thought about the problems of porting a "tiny" C to the Z8 and decided that it could only be done reasonably with either threaded-code or an AI-driven code generator :-) Zilog hands out free cross-assemblers on the PC for the Z8 and Super-8. The Z8601 has 2K of masked ROM, so it's only of interest to high volume designers (rec.audio?), but there are "piggy-back" versions (Z8603?) that allow a 2K or 4K eprom to be plugged in. You can also sacrifice 12 i/o pins and hook up an eprom to the Z8681 (which has its internal ROM disabled). There are other flavours as well, I don't have my Zilog book handy here. If you are giving any thought to an i8051 or 68xx design, check out the Z8! --- * other apps I used a Z8 for: - buffered serial to Centronics adapter. - floppy disk exerciser/controller. - practical joke: hooked up a Z8 to someones terminal with some code to print a UNIX login. It let them login then gave random syntax errors for all input. This was written in on-chip Tiny Basic for the Z8671. -- Bruce Walker ...uunet!utai!lsuc!isgtec!bmw bmw@isgtec.uucp "What is the mind? No matter. What is matter? Never mind." -- Homer Simpson ISG Technologies Inc. 3030 Orlando Dr. Mississauga. Ont. Can. L4V 1S8
mollers.pad@nixpbe.uucp (Moellers) (03/15/90)
adams@swbatl.sbc.com (745) writes: >I'ved been reading my new copy of The Art of Electronics (Horowitz & Hill >Cambridge University Press, 2e 1989) and I'm finding it quite enjoyable. >One topic it brings to mind is microprocessor based instruments (aka toys!). >I'm interested in stuff that will fit on one proto-board, has a serial >port, and provides some ttl level input and output. Currently I'm >collecting information on suitable processors. The Art of Electronics >uses a 146805E2 in a low power application and a 68008 in a high >power signal averaging instrument. An excellent recent article here >mentioned the Motorola 68HC11A2, 68HC11E2, and 68HC11F1. These seem a >little high-powered for stuff I'm interested in doing & I wonder >what else is in common use. >I'm curious about what other micro-controller/processors folks out there >have used, and how they stack up on: > 1) Support chip count. > 2) Assembly language ease of use > 3) Neat stuff on-chip > 4) Price/availability If speed isn't the issue, You might want to consider Zilog's Z8, Intel's 8052AH or NatSemi's INS????, all of which have a version with a built-in BASIC interpreter which makes programming less tedious. I've built a tiny BASIC "computer" with the Z8 consisting of 2 chips: the Z8 and a MAX232 RS232C I/F! (Not that it was of any use, no program storage, but if You add an external latch (it has a mux'ed A/D-Bus) and an EPROM You can at least run standalone pgms). The Z8 has a 16-bit integer BASIC. The 8052AH has a floating-point BASIC but needs more glue logic (and at least one RAM chip). I can't say much about NatSemi's INS????, I haven't used it. The Z8 leaves one 8-bit port and one 6-bit port free to use (the 6 bit port is 3 bits in - 3 bits out). The 8052AH leaves no free pins (as far as I remember), You'll have to add a 8055 or so. NB There seems to be a 8052-"like" chip made by Siemens which has a BASIC interpreter too. Hope this helps Josef Moellers | c/o Nixdorf Computer AG USA: uunet!philabs!linus!nixbur!mollers.pad | Abt. DX-PC !USA: mcvax!unido!nixpbe!mollers.pad | Pontanusstr Phone: (+49) 5251 146245 | D-4790 Paderborn
GMoretti@massey.ac.nz (Giovanni Moretti) (03/16/90)
> Re Small Count Microprocessor Systems The Intel 8031 microprocessor is one that I've used and works fine. It's got 128 bytes of internal ram, a serial port, two timers (one of which can act as a baud rate clock for the serial port) and one to one and a half 8 bit parallel ports all for NZ$5 (probably about US$3). To run it needs an EPROM and an address latch (usually 74LS373). The processor is fast with most of the instructions completing in one microsecond. It can have up to 64K of EPROM and 64K of external RAM (at the same time). The architecture is a bit warped, which is fine if you're using assembler for small projects or a compiler for big ones (but don't try to write a compiler for it - I did and it's tortuously painful - irregularities EVERYWHERE). To get at the external RAM you have to move the data into the accumulator through a single index register, modify it and put it back, which tends to slow things down a bit. An eprom version (8751) was quite expensive last time I looked around (US$30 I think) but is available if you need a single chip solution (sounds like a saleman :-). There is also a version with built in floating point BASIC and EPROM BURNING routines and needs only a terminal. Steve Ciarcia did an article in BYTE on these (8052-basic) If you need to modify large data structures (which must necessarily be in external ram) one of the Motorola processors is probably a better bet (I've also build and programmed Motorola 6802 & 6809 systems) ,otherwise the 8031 is cheap, fast and widely available. Cheers Giovanni -- ------------------------------------------------------------------------------- | GIOVANNI MORETTI, Consultant | EMail: G.Moretti@massey.ac.nz | |Computer Centre, Massey University | Ph 64 63 69099 x8398, FAX 64 63 505607 | | Palmerston North, New Zealand | QUITTERS NEVER WIN, WINNERS NEVER QUIT | -------------------------------------------------------------------------------
dana@lando.la.locus.com (Dana H. Myers) (03/17/90)
In article <1247@swbatl.sbc.com> adams@swbatl.UUCP (Tom Adams - 235-745) writes: >I'm interested in stuff that will fit on one proto-board, has a serial >port, and provides some ttl level input and output. Currently I'm >collecting information on suitable processors. The Art of Electronics >uses a 146805E2 in a low power application and a 68008 in a high >power signal averaging instrument. An excellent recent article here >mentioned the Motorola 68HC11A2, 68HC11E2, and 68HC11F1. These seem a >little high-powered for stuff I'm interested in doing & I wonder >what else is in common use. I've used a lot of Intel. I think there has yet to be a truly cooler family of microcontrollers than the MCS-96 (include 8097, 80C196, etc.), but this is probably overkill. For the record, the MCS-96 is very nice to program, with a large amount of register RAM on chip and a 'RISC' type of architecture. There is no accumulator and there are 3 operand instructions. The MCS-96 family is a 16 bit family. Performance wise, in tightly coded assembler, the 80C196 with a 12 MHz clock is roughly comparable to a 12 Mhz 80286 in terms of throughput (excluding interrupts and all that jazz). The 8051 family is ubiquitous, and works pretty well despite the fact it isn't as nice as the 96 family to program. The later 51 family members like the 80C51FA and the 80C51GB are actually really hot. The FA has a trick capture/compare unit, the GB has extra ports and A/D converters. The 6805 stuff is roughly comparable to the 8051 family, though a 68HC705 draws about half the current than the 80C31BH, I don't think there is a 6805 quite as sexy as the 80C51GB. If you have easy access to a family (already have a chip, get chips from a friend, etc.), use it. Among the 8 bit CPUs, they're all quite comparable. The only real differences are in the on-chip peripherals. The Motorola family has a greater number of combinations, Intel has all the same features, but a smaller number of variations. ***************************************************************** * Dana H. Myers WA6ZGB | Views expressed here are * * (213) 337-5136 | mine and do not necessarily * * dana@locus.com | reflect those of my employer * *****************************************************************