Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

choosing microcontrollers

Status
Not open for further replies.

grim

New Member
do we have too much choice?

if we have a look at Farnell, they list 720 pics.

this can be reduced somewhat by specifiying 'flash' and 'dil' so there are 275

which is still a lot. Farnell filtering isn't much use after that.
they range from £0.50 to £15.57

from a hobbyist point of view, no one is going to have all of those to play with.

I would guess if there are several parts with the same 'features' then we would want the one which has the most memory, fastest performance - but how to find this, without getting all the specs, creating a huge spreadsheet and filtering it all?

Microchips Product Selector is a bit unweildy, but appears to be the only way foward.
further selection can now be made depending on weather it's a current item or not.

Now at this point, as a learner, who wants to have half a dozen chips to play with to cover most eventualities is swamped with choice. As a learner, half the features don't mean anything. that of course doesn't mean they won't be of use.

sorry for the ramble..... so the question for the experienced pic'rs. which six pics would you advise a learner to have, and why?:confused:
 
I would suggest you initially use the 14 bit series (16Fxxx), you can move to the 18F series later.

Then it's a question of picking suitable ones:

1) 16F628 - 18 pin.
2) 16F876 - 28 pin, includes A2D
3) 16F877 - 40 pin, includes A2D
4) 12F675 - 8 pin, includes A2D
5) 16F819 - 18 pin, includes A2D
6) 16F88 - includes A2D.

The 16F628 is a good initial choice, as it's simple to use and isn't over-burdened with extras - which is why I choose it for my tutorials. But all of those run the same 14 bit core, and code is pretty well interchangeable between them.
 
Hi Nigel
even with my limited time on here, I knew you would be first on scene!

Nigel Goodwin said:
I would suggest you initially use the 14 bit series (16Fxxx), you can move to the 18F series later.

Then it's a question of picking suitable ones:

1) 16F628 - 18 pin.
2) 16F876 - 28 pin, includes A2D
3) 16F877 - 40 pin, includes A2D
4) 12F675 - 8 pin, includes A2D
5) 16F819 - 18 pin, includes A2D
6) 16F88 - includes A2D.

The 16F628 is a good initial choice, as it's simple to use and isn't over-burdened with extras - which is why I choose it for my tutorials. But all of those run the same 14 bit core, and code is pretty well interchangeable between them.

thanks for the suggestions - I have all your tutorials saved safely on my pc:D
good advice on the common 14bit core.

however that list throws up a problem - some of those chips are not recommended by microchip for new designs - but those are the very same chips that people have been using for many years, so there is lots of code out there to use. 16F628 which i know you use, Microchip recommend the 'A'

same goes for the 16F876 16F877. I suppose when learning, the huge amount of info on these chips outweighs supply problems or cost issues in the future.

prepares shopping list:D
 
and as a bonus, all of those except the 628 have icd2 debugging. result
 
Just buy the chip that fit your criteria. There will always be a better chip. If you have to produce a design then the bosses don't give a **** if you use a 555 or the "latest windows chip". I have personally found that "technology from 1/2 a dozen years ago" works fantastically well.

Mike.
 
grim said:
however that list throws up a problem - some of those chips are not recommended by microchip for new designs - but those are the very same chips that people have been using for many years, so there is lots of code out there to use. 16F628 which i know you use, Microchip recommend the 'A'

I'm not suggesting either the 'A' version or the 'non-A' version, the 'A' is just a later silicon revision of the original chip - for practical purposes they are essentially the same thing. There are occasionally very minor changes you need to make, but they are clearly explained in the migration documents.
 
Nigel Goodwin said:
I'm not suggesting either the 'A' version or the 'non-A' version, the 'A' is just a later silicon revision of the original chip - for practical purposes they are essentially the same thing. There are occasionally very minor changes you need to make, but they are clearly explained in the migration documents.

yes, but for the complete novice, it's easier to use the chip that the project was designed for, and leave migration documents until they understand what the differences are.

oh and the fun i am having trying to get 10 way headers from farnell. either the header, the recepticle ofr the pin is out of stock/discontinued on nearly every range.....
 
grim said:
yes, but for the complete novice, it's easier to use the chip that the project was designed for, and leave migration documents until they understand what the differences are.

Some have no differences at all!.

oh and the fun i am having trying to get 10 way headers from farnell. either the header, the recepticle ofr the pin is out of stock/discontinued on nearly every range.....

Try RS Components.
 
why dont you try a basic developer like proton+

the lite version is free, but limits how many lines you can write, but you will be damn supprised what you can do with that many lines in basic. I2C protocol with the command "BUSIN or BUSOUT", full math support even with float values that can range from -2147483646.999 to +2147483646.999, there is so much support out there for it aswell, and interfacing with newer components such as gps modules/graphic lcd's/sd cards is damn easy when you get the ball rolling.
 
i'll check out proton, cheers.

Nigel, I could get the bits from RS, but I have an order with FEC almost ready to go, so min order charge is taken care of...

getting back to the pic selection, i recon the PIC16F88 seems to offer a little of everything. icd2, internal clock, a2d, comparators, decent eprom and ram, etc.

i appreciate that a chip with more features may be harder to learn, but would that be a good one to have in the box, as a solution to most problems?

I will start off with some of those on your list, so i can worj through the tutorials, but what's your opinion of the 88? What have i missed, or is it the "perfect" jack of all trades?
;)

Graham
 
grim said:
I will start off with some of those on your list, so i can worj through the tutorials, but what's your opinion of the 88? What have i missed, or is it the "perfect" jack of all trades?

I included it in my list, it's an excellent device - but for an absolute beginner it may have too many facilities.
 
so you have.:D I got so carried away with the selection chart, I didn't look at your list:rolleyes:

at least the crimps are in stock now. weyhey order on the way:D
 
Have you already decided pics are the only way to go for you? Atmel's AVR series are also popular with hobbyists. Pics are more prevalent than AVR's but they have their advantages, a big one being programming ASM for AVR's is significantly less painfull.
 
Last edited:
Sceadwian said:
Have you already decided pics are the only way to go for you? Atmel's AVR series are also popular with hobbyists. Pics are more prevalent than AVR's but they have their advantages, a big one being programming ASM for AVR's is significantly less painfull.

PIC's are far more popular, but they have been about for far longer! (the AVR was just an attempt by Atmel to try and take some of their market share, even to copying a three letter name!) - as for assembly language, PIC's are popular because their assembly language is so easy, with only a very small number of instructions in their RISC architecture.

Where the AVR might look easier is if you have experience with a similar style of assembler, otherwise it's probably more difficult than PIC assembler.
 
AVR's are a RISC architecture as well and the memory access is less complicated as no banking is required. The instruction sets are comparable.
AVR's assembler is actually much simpler, most people that switch from PIC's to AVR's comment they have to unlearn 'tricks' that they had to learn to program pics.
I'm not trying to start an AVR or PIC war (these threads always seem to turn into them =)) just trying to say if you're going to start getting into micro controllers that it's a good chip line to investigate.
 
From a learning point of view, I want to settle on one or two chips, one high level language, one programmer, one...... etc

really know and understand them, and then expand.

so now i need the tools to program the 628 and the 88
 
for a cheap programmer, grab the one here; (australian shop)

https://www.altronics.com.au/index.asp?area=item&id=K9505S

its easy to build, and comes with complete instructions, and the information on where to get the programmer (IC-Prog). The Addon boards are so that you can program 18/28/40 pin pics in the 16X series, ie, 16F628, 16F88, 16F877.

For a great (probably the best) developement tool, you cant go past Proton+

**broken link removed**

the lite version limits your code to 50 lines, and with the following PIC's

• 12C508
The 8-pin, 12-bit 12C508 device is arguably the best-selling microcontroller of all-time, but has now been superceded by the 14-bit 12Fxxx range.
• 12F675
The 8-pin, 14-bit 12F675 is one of the new breed of PICmicros® that incorporates advantages such as ADC, comparators, on-chip EEPROM and of course Flash re-programmability.
• 16F628A
The 18-pin, 14-bit 16F628A is the sucessor to the ever popular, but now very outdated, 16F84 device. The 16F628A offers 2KBytes of code space, 128Bytes of RAM, on-chip EEPROM, comparators, USART and hardware PWM.
• 16F877
The 40-pin, 14-bit 16F877 is the Rolls-Royce of the 14-bit core devices and contains 8KBytes of code space, 368Bytes of RAM, 256Bytes of on-chip EEPROM and more on-chip features than you can shake a stick at - such a USART, HPWM, etc, and is the obvious choice for any new design.

But If you like it, then buy it!! the development tools such as ISIS alow you to not only simulate your code line by line, but in an actual circuit with LCD's/keypads/thousands of different digital/anologue components! And the updates for Proton+ are free, unlike other development tools, check out my website for a begginers insight to pic programming in Proton+
 
think i have the programmer covered, with an ICD2 - and a pickit2 for good measure.

I'll check out proton, and a few other freebies for evaluation - then pick one.
 
grim said:
think i have the programmer covered, with an ICD2 - and a pickit2 for good measure.

I'll check out proton, and a few other freebies for evaluation - then pick one.

Learn assembler first - you can't effectively use a high level language without at least a rough knowledge of assembler.
 
oh i completely agree. but i also like running before i can walk:D
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top