“Your time is limited, so don't waste it living someone else's life. Don't be trapped by dogma - which is living with the results of other people's thinking. Don't let the noise of other's opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.” Steve Jobs quoteste it living someone else's life. Don't be trapped by dogma - which is living with the results of other people's thinking. Don't let the noise of other's opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.” STEVE JOB

MICROCHIP TUTORIAL


I've got bunch of email asking me about why i choose microchip? There is no answer because i can programed both microchip and Atmel but i tend to use microchip for this project..check video link below..



INTRODUCTION
Beginner in electronics basically think that the microcontroller is the same as the CPU. That's not true. They are different from each other in many ways. The first and most important difference in favor of the microcontroller is its functionality. In order for the microprocessor to be used, other components, first of all memory, must be added to it. Even though it is considered a powerful computing machine, it is not capable of establishing direct communication with the peripherals.
The microcontroller is designed to be all in one piece of silicon. No other specialized peripheral components are needed for its operation as all necessary circuits.
The operation of logic circuits is based on principles established by a British mathematician George Boole in the middle of the 19th century, even before the first bulb was invented. Originally, the main idea was to express logical forms through algebraic functions. It soon had lead to a real product which, much later, evaluated in what today is known as AND, OR and NOT logic circuits. The principle of their operation is known as Boolean algebra.

For beginner you need microchip programmer to transfer the code into the target chip. Picture below show you the example of programmer.

Devices called "programmers" are traditionally used to get program code into the target PIC. Most PICs that Microchip currently sell feature ICSP (In Circuit Serial Programming) and/or LVP (Low Voltage Programming) capabilities, allowing the PIC to be programmed while it is sitting in the target circuit. ICSP programming is performed using two pins, clock and data, while a high voltage (12V) is present on the Vpp/MCLR pin. Low voltage programming dispenses with the high voltage, but reserves exclusive use of an I/O pin and can therefore be disabled to recover the pin for other uses (once disabled it can only be re-enabled using high voltage programming).

There are many programmers for PIC microcontrollers, ranging from the extremely simple designs which rely on ICSP to allow direct download of code from a host computer, to intelligent programmers that can verify the device at several supply voltages. Many of these complex programmers use a pre-programmed PIC themselves to send the programming commands to the PIC that is to be programmed. The intelligent type of programmer is needed to program earlier PIC models (mostly EPROM type) which do not support in-circuit programming.

Many of the higher end flash based PICs can also self-program (write to their own program memory). Demo boards are available with a small bootloader factory programmed that can be used to load user programs over an interface such as RS-232 or USB, thus obviating the need for a programmer device. Alternatively there is bootloader firmware available that the user can load onto the PIC using ICSP. The advantages of a bootloader over ICSP is the far superior programming speeds, immediate program execution following programming, and the ability to both debug and program using the same cable. You can search programmer at amazon, or ebay for cheap.



2 in 1 Development Tool - On-Board USB 2.0 programmer + On-Board mikroICD (In-Circuit Debugger) mikroICD is a highly effective tool for Real-Time debugging at hardware level. It enables you to execute mikroC PRO, mikroPascal PRO and mikroBasic PRO programs on a host PIC microcontroller and monitor variable values, Special Function Registers (SFRs), RAM and EEPROM memory modules while the program is running. There is also an ultra fast USB 2.0 programmer for MCU programming that now supports more PIC microcontrollers.

PIC microcontrollers can be programmed at 5V and 12.5 V. If 5V is used, the RB3 pin is used for programming ad thus cannot be used for other purposes. When the PICFlash performs programming at 12.5V, the RB3 pin is left free, as the 12V voltage is generated by a charge pump. Connection to a PC is established via the serial port, which means that the PICFlash programmer can operate on any PC.


The MPLAB PICkit 3 allows debugging and programming of PIC® and dsPIC® Flash microcontrollers at a most affordable price point using the powerful graphical user interface of the MPLAB Integrated Development Environment (IDE). The MPLAB PICkit 3 is connected to the design engineer's PC using a full speed USB interface and can be connected to the target via an Microchip debug (RJ-11) connector (compatible with MPLAB ICD 2, MPLAB ICD 3 and MPLAB REAL ICE). The connector uses two device I/O pins and the reset line to implement in-circuit debugging and In-Circuit Serial Programming™.


MPLAB®ICD 3 In-Circuit Debugger System is Microchip's made hardware debugger/programmer for Microchip Flash Digital Signal Controller (DSC) and microcontroller (MCU) devices. It debugs and programs PIC® Flash microcontrollers and dsPIC® DSCs with the powerful, yet easy-to-use graphical user interface of MPLAB Integrated Development Environment (IDE). I personally use this ICD3 with mechanical dev. board for motor application purpose.