MicroChip PIC problems1) NO real datasheet: no DC parameters, no AC parameters; all of the so-called datasheets relate to programming. 2) Inconsisent or NO terminology used for designating programming pins PGD/PGC versus ICSPDAT/ICSPCLK. This means that the "datasheet" may not tell one which pins to use for programming. RA0/RA1, as shown in some diagrams, may or may not be the required pins for tha particular PIC MCU you choose to use, and some "datasheets" will not give any indications as to which pins to use. 3) PICkit 2 MCU Programmer User's Guide shows how one can wire up your application to a programming header, which gives terminology for programming pins: RA0/ICSPDAT/PGD and RA1/ISCPCLK/PGC. But..DO NOT rely on use of RA0/RA1 for programming! Real example: Check Figure A-1 of the 44-pin Demo Board User's Guide which shows RB6/RB7, which seems to be a more common useage. 4) The PICkit 2 MCU Programmer User's Guide states that the PGD/PGC pins must be isolated from the application circuit for proper programming by using series resistors from the pins (of the MCU) to the applicaion circuit. Absolutely NO guide is gives - so randomly pick a value between 1K which may be too low, and 1Meg which may be too high. 5) In the PICkit 2 MCU Programmer User's Guide section 3.4.1, they say "..set the voltage box..". WHAT voltage box? NO clue! 6) Some large PDF document >116 pages contains PIC micro family attribute charts (programmemory, RAM bytes, I/O pins, etc), Systems Products, pin count/packaging info and other info. That last section is *very* useful as it seems to be the only consistent source for PGD/PGC pinning designations for MOST of the PIC devices. But note there is one package MISSING from this valuable reference. 7) The 44-pin Demo Board User's Guide indicates a fair number of PIC devices that it supports, and the PIC16F877A is in that list of 44 pin TQFP devices. BUT that is also available in the 40 pin DIP! So, when ordering, be *very* careful about full designation required to get what you need! 8) Crystal oscillator resistors, capacitors or other circuitry neeed to get the crystal to oscillate is TOTALLY inspecified and absolutely NO guide other than a vague mention that the 2 hours you waste may result in a damaged part! 9) MPLAB IDE: a) It is NOT integrated; as far as i can tell, it cannot program anything on its own! And the PIC starter CD seems useless for real-world programming (only lessons). see #11 below. b) He IDE, being unable to assemble or compile anything on its own, has a drop-down list for choosing some external resources for those tasks. c) If i remember correctly, one or two guides leads one thru an installation of a USB driver for the PICkit 2 programming pod, and NONE of the indicated methods follow the documentation and NONE work. But running the IDE after non-directed setup (device selection, programmer selection) one finds that MPLAB does indeed "find" the PIC16F887 on the demo board, which does run (because it was pre- programmed).
10) In the PICkit 2 Debug Express Getting Started section 7, they indicate a pull-down menu to select *programmers* which is a strong indication that MPLAB cannot of itself do any programming. Worse, that pulldown menu has PICkit 2 as one of the selections. BUT they say to NOT select it even tho the PICkit 2 programming software is needed to program the demo unit! ZERO integration.11) From PICkit Starter kit, I find NO programming software. So, I tried installing DebugExpress 12 lesson files.. Run 44pinDemoBdLessonSetup.EXE -- ERROR: "Unable to locate application file InstallLessons44P.MSI", which makes that useless. IF a CD disk cannot hold ALL of the required software,then a DVD disk is in order. 12) So I downloaded the PICkit 2 v2.55.02 Setup.ZIP, a 4Meg file which takes about 16 minutes on dial-up (chancy operation). Run it,and it immediately without any warning demands the internet giving a message "downloading required files". NO indication as to WHAT files, how many, sizes, etc.! It tok so long that one must battle auto disconnect every 25 minutes for OVER 1.5 hours (file 1); file size about 24 Megs (no file two, so the comment "required fileS"?). Then one gets "Installing .NET Framework 2.0". Well, if i knew that, I could have installed that from a CD that I had (program could have been provided - but let them be consistently INCOMPLETE and randomly chaotic. 13) Run the PICkit 2 v2.55 and get "The PICkit 2 OS v2.20.00 must be updated". WTF? So................................... Downloaded the "new" OS only to later discover it already was on the hard drive! But it gets even better! I then get the error message "PICkit 2 not found. Check USB connections" What??? It *IS* connected! Had to use the menu to tell the program to check connections! REAL WORK OF ART! 14) Connect application, check communications, PIC16F877A found, but no power. Try demo board, check communications, PIC16F887 found, no power. Nice. Another almost un-documented feature.