PDA

View Full Version : OT: Most Popular PIC or Microcontroller Devices



Paul Alciatore
10-22-2014, 03:50 AM
I am working on a peripheral device to be used with the popular PIC chips and micro-controller chips and boards. It is designed to function with a wide variety of these devices, hopefully all of them and, as part of it's development, I am in the process of writing some software to demonstrate it's use and to provide the library routines needed to utilize it.

The hardware, a small PC board, has been successfully prototyped and it is working properly with one of the PIC devices, a PICAXE 08M2. This is one of the least expensive, smallest, simplest, and slowest PIC devices available so I figured that if it can be made to work with this one, it should work with virtually all of the others.

So now I want to write some code for two, three, or more other devices and I would like them to be some of the most widely sold and used ones. What I would like to know is which ones are the most popular? Which ones have the largest sales? Does anybody here have any idea?

I ask this here because I have not been able to get an answer on boards that are dedicated to such devices. I have found in the past that there are people here that have a wide variety of interests and they are usually much more willing to share than some others, computer code writers being one example of such.

PStechPaul
10-22-2014, 06:05 AM
I have heard of the PICAXE but was not familiar with it. I see that you can get the simple development kit (https://www.sparkfun.com/products/8321) for only $4, so it's definitely inexpensive. It seems to use an 8 pin processor but not a standard PIC device. It may have a BASIC interpreter built-in, or perhaps there is software that acts as a compiler. I originally learned programming in BASIC in the late 60s and used it in my Sinclair ZX-80 and when I first got a PC clone, but when I started working with microprocessors around 1985 I did most programming in assembly (Z80 and 8085). My first foray into microcontrollers led me to select the Microchip PIC series and I did everything in assembler until recently, and now I do most things in C.

As for popularity, it depends on whether you mean hobbyists or commercial/industrial/automotive/military users. The favorite of hobbyists seems to be the Arduino, which is usually programmed in C and has access to machine code for the Atmel AtMega or whatever processors they have. I have been helping out with a DIY EV charger and EVSE that uses the Arduino Mini Pro, and although it seems OK, I am not impressed. My personal choice is the PIC, and I no longer enjoy programming in BASIC, and do so only when necessary (as when writing VBA scripts). I have a number of projects I am working on that will use various flavors of the PIC, and I am very impressed with some of the more recent devices like the 8 pin PIC12F1822, which has a USART and PWM and many other peripherals in a $1 device, and for about $2 you can even get a 14 pin device with USB. I have done a lot with the PIC18 series, which are quite powerful, but there are now 16 and 32 bit PICs running at 40+ MHz and are actually cheaper than their less capable predecessors.

TI has some really nice high-end devices, and Motorola/Freescale/Whatever are very widely used in automotive applications like the ECU that is now pretty much standard.

lwalker
10-22-2014, 07:37 AM
Paul, I can't answer in terms of overall global sales, but from an availability, ease of use and hobbyist popularity standpoint, the Atmel AVR series blow everything else out of the water. The very popular Arduino series of hobbyist boards is based on the Atmel Mega 32 and Mega168 variants. As a result of the Arduino's popularity, the Mega series are easy to work with, there is tons of existing code and Arduino libraries for them and they are trivial to program either directly from a parallel port (remember those? :-) or from a cheap $10 programmer. I also have the AVR-ICE II In-Circuit Emulator for serious debugging, but rarely need it.

The tools are free and are based on the GNU Open Source C/C++ compiler. They are very high quality and the development environment (Studio 6) that can be downloaded from Atmel is based on Microsoft's Visual Studio, so if you have used that, everything will be familiar. There are other, simpler development environments also.

I've completely standardized on the AVRs for at least the last 10 years. I have projects here that range from a custom controller that fits in a stage performer's shoe, based on an 8-pin Tiny13 chip that runs on a coin cell, to more industrial flow counter items (http://www.cedarlakeinstruments.com/products/products.php). The first (FM6) is based on a Mega169 processor and the other counter runs on a Tiny2313.

If you need help finding resources, I'd be happy to help.

Lyndon

alanganes
10-22-2014, 07:51 AM
I'd have to second the AVR series. They make so many variants there is bound to be a version that is near ideal for whatever it is you are doing. I've not done a microcontroller project in a while, but these things seem to be everywhere.

J Tiers
10-22-2014, 08:11 AM
Another vote for the AVR. Arduino is a weird way to use them, but without that, they are popular, easy to use, and the development hardware is cheap. If it works with AVR it can work with PIC and whoever.

If you use a standard interface, SPI etc, you are pretty well set. That little PIC may or may not have a reasonable standard port

Weekend_Scientist
10-22-2014, 10:06 AM
I tend to use the PIC16F690. At the time I bought my "PIC Kit II" programmer that was the chip that came with the kit. It has roughly 16 IO pins, lots of analog inputs and runs fast enough for most of my needs. If I need more IO I go for the PIC18F45K22 with 35 IO pins.

For programming, I use Matrix Flowcode because I'm lazy and would rather spend my time soldering stuff together rather than doing 'real' programming. :)

MaxHeadRoom
10-22-2014, 10:22 AM
My preference so far is the Picmicro 18F series, I graduated from the 16F due to the new commands making table access easier and no bank switching, etc .
PIC18f23k22 & 18f45k22.
Max.

Fasttrack
10-22-2014, 11:17 AM
Others have said, but I will say it again: Atmel AVR.

I own a small business building technology for the pyrotechnic industry and my designs rely on 8 and 32 bit AVR devices. My full time job is as a physicist with a aerospace/defense R&D company and even in those applications I use AVR devices for simple control. We also use Atmel ARM products but most of the "heavy" computing work or timing critical work is done by Xilinx products. They make some combined FPGA/microprocessor packages with excellent tamper-proof features that make them ideal for the defense/intelligence community.

If it is for hobbyists or people who have limited experience with microcontrollers, 8 bit AVR is the way to go.

Fasttrack
10-22-2014, 11:21 AM
Paul, I can't answer in terms of overall global sales, but from an availability, ease of use and hobbyist popularity standpoint, the Atmel AVR series blow everything else out of the water. The very popular Arduino series of hobbyist boards is based on the Atmel Mega 32 and Mega168 variants. As a result of the Arduino's popularity, the Mega series are easy to work with, there is tons of existing code and Arduino libraries for them and they are trivial to program either directly from a parallel port (remember those? :-) or from a cheap $10 programmer. I also have the AVR-ICE II In-Circuit Emulator for serious debugging, but rarely need it.

The tools are free and are based on the GNU Open Source C/C++ compiler. They are very high quality and the development environment (Studio 6) that can be downloaded from Atmel is based on Microsoft's Visual Studio, so if you have used that, everything will be familiar. There are other, simpler development environments also.

I've completely standardized on the AVRs for at least the last 10 years. I have projects here that range from a custom controller that fits in a stage performer's shoe, based on an 8-pin Tiny13 chip that runs on a coin cell, to more industrial flow counter items (http://www.cedarlakeinstruments.com/products/products.php). The first (FM6) is based on a Mega169 processor and the other counter runs on a Tiny2313.

If you need help finding resources, I'd be happy to help.

Lyndon

Also, the AVR Dragon is available for $49. It has many of the features of the AVR ICE - that is one of the biggest strengths of the ATMEL products, IMO. The development tools are cheap and the reference code/designs available are extensive. Development time is super quick on even pretty complex projects. The same is not true for other microcontrollers.

ikdor
10-22-2014, 03:34 PM
I too favour the AVR but I think microchip have improved their lineup. A bit too late perhaps as they seem to have lost the hobby market. Their lineup is great though for making a million of something with all their variants.
But getting back to the original question, I'd just call microchip and ask them. But then you need to ask yourself in advance what you mean by popular; volume or number of applications.
Igor

Georgineer
10-22-2014, 04:04 PM
I have heard of the PICAXE but was not familiar with it. I see that you can get the simple development kit (https://www.sparkfun.com/products/8321) for only $4, so it's definitely inexpensive. It seems to use an 8 pin processor but not a standard PIC device. It may have a BASIC interpreter built-in, or perhaps there is software that acts as a compiler....

... I no longer enjoy programming in BASIC, and do so only when necessary

Paul,
The Picaxe does indeed have some bootstrap code pre-programmed into it, which limits the amount of memory available, but means that it can be programmed through a serial cable and doesn't need a separate programming device. It's available in different PICs from 8 to 40 pins.

I've always detested BASIC, and have always avoided it as much as possible (having started in ALGOL and advanced to PASCAL), so I have always used the Picaxe flow chart software which is quite clever enough for my present needs.

George

Paul Alciatore
10-22-2014, 04:31 PM
Thanks for the responses.

As I said, I already have it working with a PICAXE 08M2. I am not at all sure how popular they are, but that part of the project is done.

I should have also mentioned that I am already working with an Arduino Uno and working my way through some C and Arduino C lessons. I hope to have it working with that one soon. I really want to know where to go from there. I guess it would be good to have at least one example with a naked PIC like the ones mentioned above (PIC16F690, etc.) but I have absolutely no idea as to which ones are more or less popular. And then there other board level devices like the Propeller, Basic Stamp, etc. Are any of them more popular than the Arduino? I don't know.

I know there is some curiosity about the device. All I will say at this point is that it requires only two digital output pins from the device it is attached to. My hope is that will make it almost completely universal for PIC style devices, with the correct software, of course. All will be revealed when it goes on sale.

Fasttrack
10-22-2014, 09:53 PM
Are any of them more popular than the Arduino? I don't know.


No. :) Arduino is pretty huge in the hobby world right now. For more computational intensive tasks, Raspberry Pi and Beaglebone boards are becoming popular.

Re Arduino: Keep in mind that the Arduino IDE abstracts the hardware. The result is much easier to implement/learn but it is also much less efficient. Plus there is the bootloader that takes up space. If you are doing something for a product, it is better and cheaper to code it directly in C or assembly and put it on the chip directly. Check out the Atmel Studio IDE. You can program in assembly, C, C++, etc with lots of toolchains available.

Puckdropper
10-22-2014, 11:07 PM
I got the feeling that the PIC16F84 was a pretty popular chip. Microchip has made several pin-compatible replacements. It is a rather basic chip, using the 35 opcode instruction set.

This might be a case where you just have to pick one. The 16F690 comes with the PIC KIT 2 programmer, so there's probably thousands of those running around.

MaxHeadRoom
10-22-2014, 11:55 PM
The 16F690 comes with the PIC KIT 2 programmer, so there's probably thousands of those running around.

Apart from free Mplab, Pickit 2 has a standalone hex programmer and the Logic analyzer and signal generator and in-circuit debugger. Unfortunately some of the later pic's are only supported by Pickit 3 which does not have the extra features.
Dave Jones Rant https://www.youtube.com/watch?v=LjfIS65mwn8
Max.

macona
10-23-2014, 02:13 AM
TI has their MSP430 processors and there are all sorts of flavors of them.

Then there are the ARM chips, the Teensy 3.1 is very, very popular. It has a cortex M4+ and can run regular C or arduino stuff.

Then there is the new kid on the block, the Intel Edison. Pretty cool little module, x86 dual core Atom processor at 500Mhz. I have a couple I am playing with at work. They can run linux and can be programmed in Go. Also there is an arduino port for it as well. A but hard to get right now, people are buying them up. I am using one for a project at work.

RTPBurnsville
10-23-2014, 08:11 AM
AVR may be popular in the hobby community. However, Renesas is the number one world leader in microcontrollers by volume. A quick web search will get you the numbers and other info if interested.

Here is their website:
http://www.renesas.com/index.jsp

Robert

lwalker
10-23-2014, 09:15 AM
While it's true that AVR is popular in the hobby community, remember that we are a tiny part of a drop in the bucket compared to industrial sales. The important part of being popular to hobbyists is that there is a lot of support when you need help.

Paul: if you're concerned about availability, a technique I've used in the past is to check inventory of a chip at Digikey an Mouser a few weeks apart. Also, I avoid chips less than a year old: they are often being snapped up by huge manufacturers and the distributors will prioritize their million dollar orders over everyone else.

In the end, I've found that what forces me towards any particular device is the availability of cheap development tools. These days that's not an issue.