Why All PIC+Basic+WIndows? Why not more AVR/ARduino+C ?!

This is the place for any magazine-related discussions that don't fit in any of the column discussion boards below.
Post Reply

What microcontroller family do you use most often?

Poll ended at Mon Sep 08, 2008 10:54 pm

Microchip/PIC/Parallax based
9
75%
Atmel/AVR/Arduino based
3
25%
Motorola 68HC based
0
No votes
Z80/80xx based
0
No votes
Xilinx based
0
No votes
ZiLog based
0
No votes
 
Total votes: 12

Tweeks
Posts: 1
Joined: Sat Aug 09, 2008 10:16 pm
Contact:

Why All PIC+Basic+WIndows? Why not more AVR/ARduino+C ?!

Post by Tweeks » Sat Aug 09, 2008 10:54 pm

In college, I fell in love with programming the Motorola 68HC seriese microcontrollers in my robotics class. PICs were really just coming out.. and while "cute"... isn't what "Real engineers" looked to to build industrial solutions. While PICs have matured a lot and have a dizzying array of chip-solutions to choose from now, there's still a lot more out there than just PICs.

Ten years after leaving school, the reason I still haven't got into consumer level microcontroller hardware hacking is because everything that I see is closed source, windows only, Basic or $200 compilers... Still rather "closed" feeling and toyish.

Why is this?

Why don't I see any good quality spots in N&V on AVRs or other worthy microcontroller dev platforms (just saw one this month for the first time... yay!)... Or more articles on entry level open source dev platforms like the Arduino?

With the low cost, low learning curve, and rapid development of the open-source/cross platform systems like AVR and Arduino... and all he rapid cross continent library development going on around the AVR/Arduino platforms... It would seem like the obvious choice for a zines such as N&V and Servo to latch on to (just as Make has done)... Or are the afore mentioned parties too deep in bed with Microchip and Parallax? ;)

(not looking for a flame war here... just some honest, contemplative discussions... see this article for an even handed PIC/AVR comparison.]

Tweeks
p.s. I use use a ZIF socket variant of the Arduino myself now:
Image

Engineer1138
Posts: 458
Joined: Thu Feb 05, 2004 1:01 am
Location: Minneapolis, MN
Contact:

Post by Engineer1138 » Mon Aug 11, 2008 12:18 pm

The simple answer is History.

When Microchip bought the rights to the PIC architecture (from General Instrument?) they made it trivial to get samples, put up TONS of application help (I have a book of Microchip code & schematics of real world little apps) and made sure all the popular catalog companies had plenty of inventory. They had free seminars where they gave away sample boards (I recently gave away my motor speed control board based on a PIC that I got at Embedded Systems Conference 10 years ago), and development systems.
In short, they made it easy for the hobbyists, engineers doing moonlighting work, and small companies to buy. The behemoths Motorola and Intel kept on doing the same old thing - focusing on big established businesses and primarily selling through their distribution chain and so Microchip began to eat their business from the bottom up. I remember a sales person describing a new Motorola chip (68HC0705J I think) back in 1990 or so as a "PIC killer." By that time, the behemoths realized they were losing market share.

So although I agree that AVR is a better platform (I've standardized on it), PICs will be popular for a long time due to the sheer volume of chips they have sold over the last 15 years and the ensuing name recognition.

I've never been a fan of the PIC architecture, but I admire Microchip's marketing genius.

User avatar
philba
Posts: 2050
Joined: Tue Nov 30, 2004 1:01 am
Location: Seattle
Contact:

Post by philba » Mon Aug 11, 2008 1:13 pm

there are a couple of other reasons that the PIC is more popular.

One is a consequence of their "Let 1000 flowers bloom" strategy - tens of thousands of designs and designers out there. If there is a circuit that you are interested in - it is highly likely that there will be at least one PIC version that turns up in your search. Often, you find many PIC based circuits.

PICs are pretty rugged and resilient. It's kind of hard to kill a PIC. Wire one up backwards - it gets hot but doesn't die right away.

There is a really really wide variety of PICs out there. From 6 pins and up. With just about every imaginable combination of peripherals.

Microchip doesn't hide the details of their programming interface. I know that Atmel wouldn't release the small AVR's debugwire interface. For quite a while, there was only a $500 tool that could program/debug their low pin count AVRs. There was no way that a 3rd party could easily develop a programmer/debugger. To their credit, they came out with the cheap AVRDragon but it's still not open. I guess Atmel wants to make a business of their programming tools. Microchip doesn't seem to care if people clone their debugger. Openess nets a lot of benefit.


As a SW developer, I recognize that the AVR line has a much nicer architecture but I mostly use PICs because architecture is only one aspect.

psycho
Posts: 388
Joined: Thu Jan 10, 2008 8:13 pm
Location: Northwest Indiana
Contact:

Post by psycho » Tue Aug 12, 2008 3:38 am

I am not too keen on companies who have their stuff closed, either. Microchip has a programmer/debugger for $35. And, if you still can't afford that, the schematic and firmware (w/source) are on their website free for the taking. Although PICs leave a bit to be desired I like them and I will continue to use them (better the devil you know).

To me, I will say that I would *never* buy a stamp (or anything from Parallax). I remember looking at the BS2's a few years ago and I was unimpressed. You can do a whole lot more buying the PIC than paying $40 for that. If you like basic that much, get a basic compiler - there are a number of them out there. (look at GCBasic on sourceforge). I say this because I almost got suckered into using BS2 when I started out. Take the time and learn the actual PIC that goes on a BS2 and save yourself a boatload of money.

If I were going to get into a different type of chip, it would be FPGA's. Though not a uC, you can implement just about anything you want on it. In fact, a dev board for the Altera or Xilinx is on my wish list :)

Kevin

User avatar
MrAl
Posts: 3862
Joined: Fri Jan 11, 2002 1:01 am
Location: NewJersey
Contact:

Post by MrAl » Tue Aug 12, 2008 7:05 am

Hi there,

One of the things i like about Microchip is that they make a lot
of stuff in a dip package. What i dont like about Microchip is
that they only put out their 32 bit microcontrollers (relatively new)
in very small outline packages. That's a problem for me because
i dont like to have to solder those packages unless really necessary.

Im not sure how to vote here though, but probably i'd go with
the PIC. I say im not sure because other archs have their
advantages too and i did design and build a Z80 based
microcomputer/microcontroller board about 10 years ago.
The disadvantage of the Z80 is you dont get anything like ROM
or RAM on the chip (a few registers that's it) like you do with
the uC's. You have to add your own EEPROM and Static Ram.
I used a UVPROM coded as an uploader so it would take
programs from a host computer. It could then be programmed
for just about anything. Oh yeah, you also have to roll your
own I/O ports too, and no AD converter unless you add that
too. All of this makes me more or less have to vote PIC here.
LEDs vs Bulbs, LEDs are winning.

psycho
Posts: 388
Joined: Thu Jan 10, 2008 8:13 pm
Location: Northwest Indiana
Contact:

Post by psycho » Tue Aug 12, 2008 8:05 am

You brought up a very good point about MC having alot of DIP packages. Also, the 5v vs. 3.3v argument.

Kevin

RiJoRi
Posts: 13
Joined: Tue Aug 12, 2008 11:25 am
Contact:

Post by RiJoRi » Tue Aug 12, 2008 11:59 am

Actually, the microcontrollers I've used most over the past few years have been Nat Semi's HPC and COP-8. Both are in the "we're only making these 'cause you and some other big companies are ordering millions of them" category. This is at work, of course. At home, I have a slew of 8051s, 8048's and their derivatives. I became a dumpster-diver when the company I work for moved last year -- the '51 has that lovely /EA pin that allows you to run external programs even if the internal memory has been programmed.

Actually, my first exposure to micros was to microprocessors -- Z80, 6809, 8085, 6502 -- used as microcontrollers. It was quite irritating to come across the 8051: where the heck are the control lines? How can I work if I can't probe the data bus? :smile:

But, there is hope for me: I've gotten the TI TMS430(?), and the Renesas M16C. I'm expecting the AVR Butterfly board and a PICKIT2 daily.

--Rich

User avatar
philba
Posts: 2050
Joined: Tue Nov 30, 2004 1:01 am
Location: Seattle
Contact:

Post by philba » Tue Aug 12, 2008 12:56 pm

MrAl wrote:What i dont like about Microchip is
that they only put out their 32 bit microcontrollers (relatively new)
in very small outline packages. That's a problem for me because
i dont like to have to solder those packages unless really necessary.
I don't know how they could produce a decent 32 bit chip in a DIP or SOIC. Those chips all have lots of peripherals and thus a lot of pins. I think that's just a reality of the wider instruction sets. There are lots of ways to use the 32 bit chips. The guy that did the USB Bit Whacker (PIC18F2450) is close to shipping a PIC32 version. He's using a 40 pin DIP format so it will be usable by you. Pretty cheap last time I looked. Check out this thread on the sparkfun forums. http://forum.sparkfun.com/viewtopic.php ... ight=pic32

hal
Posts: 1
Joined: Thu Aug 14, 2008 5:33 am
Contact:

Post by hal » Thu Aug 14, 2008 5:43 am

After the last issue, I was thinking exactly the same thing. I used to do a lot of work on PICs, but would only use assembly. While this worked well for some stuff (a couple of clocks, panel meter on my power supply), It was a joke for more complicated stuff (my current project is a GPSr for geocaching. It stores waypoints, then does the floating point geometry in spherical coordinates to calculate distance between 2 lat/long pairs.) I found salvation in AVR's GCC, and am not turning back. I don't think it's just a recent 'fad,' although Arduino might be. AVR + WinAVR (GCC) has been working extremely well for me, was cheap and easy to get started, and will probably be the only microcontroller platform I'll use for a while.

While I find a lot of the reads in N+V interesting (which is why I continue to subscribe), many of the projects are inaccessible for me to build them as written, since I lack the $50 basic stamp, $200 Picbasic compiler, or $1000 Pic C compiler. And even if I did have that kind of money to spend on my hobby, there are many things on my "wish list" above these tools, (like a storage oscilloscope) since I can get essentially the same performance for free from AVR/GCC.

kucomp
Posts: 31
Joined: Thu Feb 07, 2008 10:17 pm
Location: California
Contact:

Post by kucomp » Thu Aug 14, 2008 7:24 am

MrAl wrote: One of the things i like about Microchip is that they make a lot
of stuff in a dip package.
I agree. While Atmel has 8 bit processors in DIP, Microchip's has some 16-bit dsPIC's and PIC24's in DIP and those micro's pack in a lot of power. Microchip also has a free GCC compiler (MPLAB C30) for these 16 bit processors. Plus, if someone started out with a PIC24/dsPIC, I think they could easily move up to PIC32.
philba wrote: I don't know how they could produce a decent 32 bit chip in a DIP or SOIC.
The 32-bit Motorola 68000 comes in a 64 DIP package. Don't know if it's decent, but...:
Image

User avatar
philba
Posts: 2050
Joined: Tue Nov 30, 2004 1:01 am
Location: Seattle
Contact:

Post by philba » Thu Aug 14, 2008 8:13 am

That 64 pin DIL is about the size of an aircraft carrier... Very few chips have been packaged in larger than 40 pin DIL packages. It's really not cost effective for the manufacturer.

The mot 68K is like 20+ years old and it's not really a microcontroller. You need rom, ram and all manner of peripherals to make it work.

Like it or not, the world has gone to surface mount. It's not really as bad as you might think. Sure, you can't shove a chip in a solderless breadboard but that's not so big a deal and you can often find inexpensive header devices that allow access to sophisticated chips. SparkFun sells a number of them and there are a number of companies that make adapter boards for common surface mount packages. Also, surface mount chips aren't that hard to solder, even the super fine pitch ones. Though BGAs are mostly beyond the hobbyist.

User avatar
MrAl
Posts: 3862
Joined: Fri Jan 11, 2002 1:01 am
Location: NewJersey
Contact:

Post by MrAl » Thu Aug 14, 2008 9:18 pm

philba wrote:That 64 pin DIL is about the size of an aircraft carrier... Very few chips have been packaged in larger than 40 pin DIL packages. It's really not cost effective for the manufacturer.

The mot 68K is like 20+ years old and it's not really a microcontroller. You need rom, ram and all manner of peripherals to make it work.

Like it or not, the world has gone to surface mount. It's not really as bad as you might think. Sure, you can't shove a chip in a solderless breadboard but that's not so big a deal and you can often find inexpensive header devices that allow access to sophisticated chips. SparkFun sells a number of them and there are a number of companies that make adapter boards for common surface mount packages. Also, surface mount chips aren't that hard to solder, even the super fine pitch ones. Though BGAs are mostly beyond the hobbyist.
Hi Philba,

Well, how do you solder your 0.5mm pitch packages then?
I had quite a time with the SSOP-28 package.
LEDs vs Bulbs, LEDs are winning.

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 8 guests