Where to begin with PIC chips?

Okay, so I've gone out & bought my Arduino clone, had fun* with it, bought a truckload of ATMEGA 48-328's & had fun* with them and would like to now broaden my horizons a little. I'd like to see what's on the other side of the fence & give PIC chips a try. From what I can see, both have their advantages/disadvantages & can excel in some areas where the other may flounder.

Basically, my question is this: what's the cheapest/quickest/easiest** way to get into PIC development?  Is it really as easy as grabbing a couple of chips, downloading the software from rev-ed & buying a programming cable? Or am I missing something? Is there a 'Welcome to PICworld" tutorial out there somewhere that I've missed or is it a matter of wading through the manual on the bus to work every day? (Hmm, that may be more than one question but you get the idea).

*Disclaimer for my gf - it's not fun, it's work, honest!

** In order of importance due to ongoing house renovations :-s

are you talking about picaxe?

it is that easy.  buy a couple picaxe chips, make/buy a download cable, download the picaxe editor and have fun.

But picaxe is not the same as pic.  it’s like arduino vs avr development.

Pic chips are a little more complicated,  you need a programmer (pickit 2 is a good cheap choice) and you need to get the c compiler from microchip (can be a little confusing, there are different choices and prices associated with the compilers) and you need to study datasheets pretty carefully to understand how to twiddle the bits to make it do what you want.

Doesn’t Microchip have/offer

a C compiler for free for their line of PICs?

Yes, free is one of the prices

But, I still found it confusing because depending on which chips you target you need to get the right one and when yuou find code on the internet, sometimes it is written with a different compiler target. It can trip you up.

I actually use the CCS compiler which isn’t free, but it has many communications protocol libraries included 

My point is that getting the environment set up to start programming was not as easy for pic development as it it for picaxe or arduino.


There’s more setup with
There’s more setup with going the PIC route but there’s so much versatility with the PIC series of chips, it beats out every other microcontroller series I have seen when it comes to this (AVR, PICaxe, Arduino etc) except for FPGA’s or the other monsters. If you’re just starting out with programming go with something that will be easy to learn, such as arduino then when you become more proficient you can switch to PIC.

Thanks guys,

I have to confess to my brain being a little tired when I posted this & forgeting about the fact that picaxe =/= pic. To be honest, I’d be happy enough plugging away at the pic chips themselves as it looks like they would be of more use further down the line. As Krumlink said, there seems to be a huge amount of versatility with them.

The programming’s not a huge issue (about 30 yrs worth behind me so far) & I can generally pick up new dialects with enough ‘head meets desk’ trial & error.

I’ve had a quick peruse of MPLAB on the Microchip site & tried to find a programmer or two, would this one (link) be sufficient or am I missing some arcane ingredient?


One of the best programmers for PICs

is the PICkit2. You can use it in Windows and Linux for sure. I am not sure about Mac, but, it may be supported on Mac. If you are using Windows you will even get a bit more bang for your buck as the PICkit2 is capable of more than just programming. I would suggest you avoid the PICkit3 though. It may be newer and ‘might’ support a few more PICs, but, it just really is not said to be as capable as the PICkit2.

As for programming languages, you have assembly language, C(some free), JALv2(free), maybe a version of BASIC(no not PICAXE, maybe some free). Without better knowledge of programming languages, assembly is not my cuppa, but, PICs are supposed to have a fairly tight, 35 to 45 word, assembly vocabulary.

I second the pickit2

It is inexpensive and has some nice extra feartures.  I built a serial programmer when I started, but I had some problems with it not being able to program my chips and the software you use to download isn’t as good as the one for the pickit2.  I saved myself a lot of hassle when I bought the pickit2 in a fit of frustration.  It works without drivers on windows, which is real nice.

I really like the logic analyzer and the comm terminal that come with the pickit2 software.  They are very handy, very basic functionality, but works well.   The logic probe helpped me debug a 1-wire interface I wrote once, very handy.