Which uController to learn?

On Thu, 15 Mar 2007 13:52:06 -0700, in sci.electronics.design John E.


I'd start with lurking the usergroups, such as 8052.com and avrfreaks, dont't know about a group for the MSP430. See what they are doing, then pic(k) one. Lots of cheap eval boards. Some of the ARM micros look amazing, but beyond my comprehension
Comp.arch.embedded NG usually has a "my micro is better than your micro" thread going. Also checkout GCC compilers, Winavr etc. as you seem to be qualified for the dreaded makefile.
And be sure to practice your soldering skills/ interfacing techniques, this is very important compared with the Windoze World
martin
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Thanks for your comments, Martin.

That's really why I'm interested in getting into the u-controller world. To interface hardware to the "real world".
Soldering iron warmed up and at the ready...
--
John English


Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Still looking into the former (many decent PS models coming out of Asia, recently); got a couple of scopes.
Thanks,
--
John English


Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Thu, 15 Mar 2007 18:28:28 -0500, in sci.electronics.design "Anthony
snip

years ago I was given a few lines or so of C for an 8051, that has never failed me. But then I'm not a real programmer, most of my crap is just a few switch statements,
Boil a FET Nuke a motor, LCD Prompt" do you need fries with that" etc.
but good enuff for me, does the job. Maybe I should go and have another look at it?
grasshopper, over and out
martin
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
I recommend Microchip PIC, starting 18F series because it has build in multiplier. 100 for complier package and 100 for ICD2 programmer/ debugger. MPLAB is free.
8052 and other processor is a consideration, but I started with PIC becuase it supported with training package, available offshelve, extensive range and easy to use. I developed successful project based on PIC. I'm now working on 2191 Analog Device DSP processor.
Damn google no longer accept my email and change into more complex emil, so I say goodbye to this discussion group.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

AVR, M68HC, PIC, pick either one, find a C compiler, go with it, some chips have free compiler out there, like winavr for avr.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
John E. wrote:

http://www.dontronics-shop.com/pages.php?pageid # http://www.dontronics-shop.com/pages.php?pageidX
should provide a few pointers Don...
--
Don McKenzie
E-Mail Contact Page: http://www.dontronics.com/e-mail.html
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Many thanks, Don. Much good first-timer info there. A "rich" resource.
--
John English


Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
wrote:

You can't really say what one is 'best' - it depends on what you really want to do.
Even with PICs it's hard to say which is best - from tiny 8 pin controllers to massive 44 pin processing beasts with hundreds in between.
PIC assembly is tiresome at the least. The instruction set is tiny which means that they take considerably more coding than, say, x86 assembly.
Atmel micros are becoming popular too - though I haven't had any experience with them.
Depending on what you want, you may look at *gasp* Basic Stamps, made by Parralax (sp?) if you know BASIC well - just don't count on amazing performance.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Thu, 15 Mar 2007 22:21:33 +0000, the renowned Brendan Gillatt

Not to mention the 64, 68, 80 and 100-pin ones.

There are several flavo[r]s to PIC assembly.

That thing is not 'a microcontroller'.
As to the original question.. it really depends on the application and the peripherals you might need. If you need Ethernet and/or USB on board, that's one thing (you'll almost certainly want something with a decent C compiler and available protocol stack), if you just want to diddle some bits fast, or do a relatively slow PID control that's another. If you need 10, 12, or 24 bits of ADC, multiple PWMs, quadrature input, direct display drive, etc. etc. that may play a great role. The choice of core is only one consideration among many.
Best regards, Spehro Pefhany
--
"it's the network..." "The Journey is the reward"
snipped-for-privacy@interlog.com Info for manufacturers: http://www.trexon.com
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I often point to http://www.voti.nl/swp/n_index.html for an intro in PIC micro's.
If you have experience in 68000 then AVR may suit you better.
petrus bitbyter
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
John E. wrote:

PIC and Atmel AVR battle it out for the top spot in the entry level market, you will get tons of beginner support (hardware, software, and sample code) for either platform, arguably more than any other platfrom.
Which is the "best" is dependant upon your application. For example, if you do *really* low power stuff then the MSP430 series is very popular. If you want seamless migration from Flash to OTP to Mask ROM then PIC might be the way to go. If you want fast processing with a reasonable number of options then AVR might be the best bet. The list is endless...
For starting out, stick with AVR or PIC, and use a high level language like C. Both platforms have free C compiler suites, but IMHO the AVR GNU compiler is a PITA to get up and running, and the worst problem you can have when starting out is having to fight your tools. Also, I think the AVR STK500 programmer is (or was) a complete dog, horrible for a beginner. PICs have their quirks too, but I had a *lot* more trouble when starting out with the AVR's. But no doubt the AVR crowd will shoot me down in flames...
The PIC 18 series C compiler is essentially free from Microchip, and that combined with an MPLAB compatible programmer would be a very good and powerful starting platform if you don't want to play with the kiddie kits. However there are tons of good PIC starter kits and demo boards around, just look at the Farnell catalog or any of the multitude of PIC supplier website for starters.
Dave.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Well, to be fair, I didn't ask for "best". That's always a dead-end (or open-end) discussion.
I'm really interested in my options for assembly programming for interfacing with sensors, switches, etc., and controlling relays, LEDs, maybe the odd 7-segment or serial display. I don't think I'll need networking, or such, nor that I'll get back into learning a high-level language (never tackled 'C' - I think that would be a show-stopper, re. getting started with u-controllers).
So, I guess I'm asking for the the product line with the most supporting (good) documentation and examples and which has the potential for easing me toward my goal (ie, my previous para.) with the least hair-pulling.
Thanks,
--
John English


Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

You can also clock an Avr slowly and runs on uW. The butterfly runs in stand-by mode for months on a single button cell.

But I would not call an Avr fast, not comparing to an Arm. I have a 20MHz(50 Mhz max) Arm talking to a 8Mhz(16MHz max) Avr. The Arm is around 5 to 10 times faster than the Avr.
They are roughly the same size, cost and complexity.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

For a no frills easy to understand and get going, I'd say 8051 series. The Dallas 89c450 and Atmel 89c51ED2 both have hardware boot loaders so you can get code into them very quickly and see whats going on with your code. I hate C
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hey John.
We're an "8051" Shop mostly. And almost everything we do is in Assembler.
Right now, we're using Atmel and Phillips (NXP or whatever they call themselves now).
What I like about Atmel is: A - They're very responsive when you need them (which isn't often because their documentation is some of the best I've seen.)
B - For programming their newer devices, all you need is $25 for their AT89ISP adapter (and a target board - which you can make yourself or just butcher one of your production boards and dedicate it as your new "bench programmer" - which is what we did. No more spending $1,000's on EPROM burners!!
C - Their product mix is varied enough (i.e., A/D conversion, # of ports, Serial, etc..) that you can make most designs work. And "Yes." it is a fine line between "hobbist" and "serious volume production" sometimes. Or so we would all wish.....!!
For Phillips - I like their smaller stuff. 89LPC90x series. They're a little flaky to get programmed (due mostly to poor documentation and IMHO too many hobbiest in the mix), but we do use them in production volumes.
The Keil EPM900 board is a good development board for the above, and runs about $200. Plus the cost of many, many, many phone calls to Keil to get an order placed. (Note: This company THRIVES on Voice Mail.) But good stuff once you get it, and get it working.
The EPM900 will come with a 4K code limited Assembler, C-Compiler and Debugger (in addition to the hardware emulator). All in all, a pretty good value.
I looked at PIC's a few times and didn't like them. Hard to say exactly why, I guess. Their basic stamp stuff seemed overpriced and underpowered. And really, I think those are out there for experimenters and hobbyist, not serious production. (Now everyone will beat up on me for saying that..?)
But I hope this (and the comments of others) gives you something to ponder while making your choices. COBOL, huh?! Good for you!
Eventually all the other COBOL programmers will die out and you can name your price!!
-mpm
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Be wary of certitude. PIC's bizarre fscked architecture is abhorred by right-thinking engineers (of course, there are no absolutes, but this is quite close to one).
If you have experience as you have enumerated, you will have little difficulty learning almost any architecture; the choice of which is "useful" depends on the "use" to which you intend to apply this knowledge.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
snipped-for-privacy@yahoo.com says...

In the early days, though I'm sure that has changed, the stack depth was way too short for any reasonable level of subroutine coding, this also affected the design of systems which needed multiple (flexiblely) prioritised interrupt sources...
Since I had been using the 8051 and atmel variants which had far deeper stacks and ease of changing returns and flexible control of interrupt response I had never any need to revisit the PIC.
Oh and the code/data memoru separation I found to be irritating on odd occasions,

From what I recall the 68000 series was the closest to a orthogonal instruction set making for great compiler efficiencies, with the later generaton of PICS there were, iirc, still many instruction exceptions which didnt allow compilers to be as efficient could have been good for assembler writers but you really dont want to stay in assembler as generally projects get more complex and we do want to have a social life dont we ?
--
Regards
Mike
* VK/VL Commodore FuseRails that wont warp or melt with fuse failure indication
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I'm beginning to hear a lot of that (c;

I think I should clarify that my desire isn't to go in the direction of microprocessors, but in the direction of microcontrollers. I distinguish those that have data and memory bus pins from those that are self-sufficient, memorywise. The latter may have I/O such as analog inputs and/or outputs, but not necessarily; they may interface with outboard converters.
Thanks,
--
John English


Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
John E. wrote:

Since you're starting, the 18F PICs may be more in line with what you want. Not even any bank switching till you're ready for it. Plus Microchip has a decent C compiler for them (I never used it, but that's what I keep hearing) that has something like a 90 day trial. After the trial, uninstall and reinstall. www.picbook.com is a good treatise on the 18F PICs.
Don't let anyone fool you, all microcontrollers have their quirks and problems. IMO, the 8052 is the pits.

You won't regret it.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.