A couple of years ago I bought a PICKit2 for the princely sum of £5 including postage. It was a special offer from Microchip that I couldn’t refuse. I’d tinkered with the Atmel AVR chip in the past, but liked the on-board USB features of the Microchip PIC18F range. I knew it would be useful for some custom HID devices for Flight Simulator one day.
Anyway, I’ve got a simple alarm clock idea which wakes you up by gradually increasing the brightness of an LED strip light behind the headboard of the bed. As a minimum, it needs a simple microcontroller, a real time clock (RTC) of some sort, one or more power transistors for the LEDs, and an LCD screen and buttons for the UI. If I wanted to get this thing done quickly, I’d probably go for an Arduino solution - there are less hardware options and more really good demos and tutorials. However, I already have this PICKit2, and learning the raw nuts and bolts of the PIC range will allow me to avoid the cost of a £20 Arduino in every project.
- PICKit2 programmer, which I believe has ICD capabiities
- 44-pin demo board. This has a PIC16F887 onboard, some LEDs and a potentiometer
Installed in this order
- Java SE Runtime version 6 (32 bit version, despite being on 64bit OS) (version 7 doesn’t seem to work with MPLAB X)
- MPLAB X from Microchip - don’t download the compilers from this page, they are never the most up to date
- HI-TEC C compiler for PIC10,12,16 (version 9.83 as of Feb 2012, signin required)
- HI-TEC C compiler for PIC18 (version 9.80 as of Feb 2012, signin required)
- Microchip PICKit2 programmer (latest is v2.61 in Feb 2012)
Although, I want to be writing my own code in C, to test the environment is working, I will first send a pre-compiled HEX file to the demo board, and test.
- Hit the “Auto Import Hex + Write Device” button
- Choose a demo file from C:\Program Files (x86)\Microchip\PICkit 2 v2\DBE Demo\16F887Demo.HEX
- The programmer should erase and then program the chip, but you won’t see anything happen
- You must manually supply power to the board using the ‘VDD PICkit2′ ‘On’ checkbox
I must have spent 2 hours programming and reprogramming the device wondering why the demo wasn’t running. Eventually I tried the ‘VDD PICKit2′ ‘On’ option, hoping it wouldn’t fry my board, and it worked instantly. I’ll put it down to bad UI design of the PICkit2 Programmer - it’s clearly designed with Microchip engineers in mind, and not Joe Public. The help file, whilst technically accurate, needs to spell it out clearly: “Once you have programmed your demo board, you need to supply it with power. The PiICkit2 can do this for you, but you need to tell it using this option [big arrow pointing to diagram]”.
Other pre-compiled demos can be found on the PICkit2 CD-ROM, in the 44Pin Demo Board folder.
The second test (in the next post) is to compile a sample ASM in MPLAB X, upload to the demo board, and run it.