PIC6F77 Matrix Multimedia PICmicro microcontroller Multiprogrammer PICmicro Microcontroller Multiprogrammer datasheet J6 J RESET PB J99 2 Port E Port A Port B J RV Port D SW SW2 J5 Port C U 0V +5V +5V +4V OUT OUT IN X J0 J7 J Z B5 B4 B ONLY INSERT CHIP AT A TIME U U2 U40 LED pin U/4 eblocks ONLY INSERT CHIP AT A TIME TM EB00600 USB multiprogrammer 40 Contents. About this document 2. General information. Board overview 4. Getting Started 5. Block schematic and description Appendix A. Circuit diagram B. Pin out details C. Bus connections Copyright 2004 Matrix Multimedia Limited Page
About this document This document concerns the Matrix USB Multiprogrammer code EB-006-00-. Trademarks and Copyright PIC, PICmicro are registered trademarks of Arizona Microchip Inc. E-blocks is a trademark of Matrix Multimedia Limited. EB-006-00- and associates software and documentation are Copyright 2004 Matrix Multimedia Limited. Other sources of information There are various other documents and sources that you may find useful: Getting started with E-Blocks.pdf This describes the E-blocks system and how it can be used to develop complete systems for learning electronics and for PICmicro programming. PPP Help file This describes the PPP software and its functionality. PPP software is used for transferring hex code to a PICmicro microcontroller. Disclaimer The information in this document is correct at the time of going to press. Matrix Multimedia reserves the right to change specifications from time to time. Technical support If you have any problems operating this product then please refer to the troubleshooting section of this document first. You will find the latest software updates, FAQs and other information on our web site: www.matrixmultimedia.co.uk. If you still have problems please email us at: support@matrixmultimedia.co.uk. When emailing please state the operating system, the version of PPP you are using. Copyright 2004 Matrix Multimedia Limited Page 2
2 General information Description This new PICmicro microcontroller programmer connects to your PC via USB to provide you with one of the world s lowest cost and most flexible PICmicro microcontroller programmers. This board can be used with Assembly, C or Flowcode programming utilities provided by Matrix Multimedia. The board will program most, 4,, 2 and 40 pin PICmicro microcontroller devices using the flexible programming software provided PPP - and provides clean access to all I/O lines on the relevant PICmicro MCU devices. Further information on E-blocks is available in a separate document entitled Introduction to E-blocks.doc. Features E-blocks compatible Low cost Used as a programmer and as a development board Programs a wide range of PICmicro MCU devices Full suite of programming software RC or Xtal operation 5 I/O ports Three courses and programming systems compatible with this product are available on CD ROM: Copyright 2004 Matrix Multimedia Limited Page
PIC6F77 Board overview Matrix Multimedia PICmicro microcontroller Multiprogrammer J6 J RESET 2 4 PB 5 J99 2 Port E Port A U 0V +5V +5V +4V OUT OUT IN SW SW2 4 X J0 J7 J B5 B4 B Z 2 0 pin ONLY INSERT CHIP AT A TIME U U2 U40 U/4 7 LED 6 J5 5 Port B 6 J RV 9 eblocks ONLY INSERT CHIP AT A TIME TM EB00600 USB multiprogrammer 40 Port D 7 Port C. Power connector (positive outer negative inner) 2. USB connector. Reset switch 4. Port E I/O 5. Port A I/O 6. Port B I/O 7. Port C I/O. Port D I/O 9. RC clock speed potentiometer 0. RC clock speed switch. Clock crystal / RC switch 2. Crystal socket. PICmicro Programming link block 4. Screw Terminals 5. BJTAG connection 6. Expansion connector 7. PICmicro turned pin DIL sockets. Ready to go LED Copyright 2004 Matrix Multimedia Limited Page 4
4 Getting Started 4. Installation instructions - Software Installing PPP v To install run PPPv.exe, which is located at <D>:\PPPv\PPPv.exe and follow the instructions provided. <D> refers to your CD drive. By default PPPv is installed into: C:\Program Files\Matrix Multimedia\Common\PPPv\ There are four 'Features' that can be installed. * PPP v core files - this is PPP v itself, and should be installed. * Update ASM4PICs - This feature allows you to update ASM4PICs to use PPP v. * Update C4PICs - This feature allows you to update C4PICs to use PPP v. * Update Flowcode - This feature allows you to update Flowcode to use PPP v. The three updates will be automatically installed. Select the 'X' 'Do not install option' if you do not to update a feature. If you need to update a product at a later date you can re-run the install and update that feature. There is more help and information available on the CD provided at <D>:\PPPv\readme.txt <D> refers to your CD drive. 4.2 Installing in the Multiprogrammer When you connect the Multiprogrammer to your computer, via the USB cable, the first time there will be installation routine for this new hardware. This with most user will be a plug and play routine where your computer will automatically recognize the hardware. Running on Windows 2000 / ME / XP These programs allow plug and play for your new hardware. Therefore when you first connect the Multiprogrammer to your computer you will receive a pop-up screen that indicates that there is new hardware connected to the computer. The program itself will deal with any installation of any drivers that it requires internally. Therefore you can use your Multiprogrammer immediately. Running on Windows 9 (you will need the Windows 9 CD at hand) When you connect the Multiprogrammer to the computer your Windows 9 program will run a New Hardware Wizard. This procedure is straightforward and easy to understand. Follow the on-screen instructions. Once this has been completed the Mulitprogrammer will be ready to use. There is more detailed information and help on the CD provided at <D>:\eblocks\Installation Guide.doc Copyright 2004 Matrix Multimedia Limited Page 5
4. Programming the PIC6F Testing the Multiprogrammer Board follow.hex The following instructions explain the steps to test and use your LED Board. The instructions assume that PPP is installed and functional. It also assumes that you are confident in sending a program to the PIC via the multiprogrammer. More information on the procedures of programming via PPPv are giving in the document located at <D>:\eblocks\Installation Guide.doc and in the PPPv help file. Follow these instructions to test the Multiprogrammer board ) Ensure power is supplied to all the necessary boards. 2) Insert the LED board into Port B of the Multiprogrammer ) Ensure that the Multiprogrammer is in correct configuration - Fast mode (SW towards the centre of the board) - Ensure that a 9.660MHz crystal is inserted in the Multiprogrammer board SW2 is not used when in Xtal mode so it doesn t matter it s position 4) Program the a PIC6F with the test program follower.hex found in the directory <D>:\eblocks\multiprogrammer\follower.hex 5) Check the illumination of all LEDs This should satisfy that the Multiprogrammer Board is fully functional! Please note C4PICs V & V2 and FLOWCODE V will NOT program the PIC6F. Ensuring correct polarity for power supply Positive Inner/Positive Outer polarity To set up the correct polarity the connection symbols on the jack need to match those shown below. Connector dimensions The PSU is supplied with a number of connectors. The correct connector for Matrix Multimedia products is: Type D 5.0mm external diameter 2.mm internal diameter D is marked on one side, down by the pins, and 5.0x2. is marked on the other side. EB-006-00- Multi Programmer Board requires Positive Outer power supply The two arrows one on the connector socket and one on the connector pin, help you select the correct side of the power jack, and the symbol shows the correct outer connection. Copyright 2004 Matrix Multimedia Limited Page 6
5 Block schematic and description J99 USB connector RC SW2 Xtal 2 PIC6C745 slow fast RB RB2 RC0 RCRC2 RB RC speed SW RV X 2 Vpp 5V 40xx J Clock circuit MCLR RB7 RB6 RB RB4 Z RB5 J6 4V 0V 5V 5V 4V J0 J7 Vpp regulation 5V Power supply PB Reset J5 PIC devices Port E [RD0 - RE2] Pin 4 pin Pin 2 Pin 40 Pin Port D [RD0 - RD7] Port A [RA0 - RA4] Port B [RB0 - RB7] Port C [RC0 - RC7] 5 The Multiprogrammer solution is made up of two parts: A circuit board that allows various slave PICmicro devices to be programmed, and the program to be executed seamlessly, and the Windows based programming utility PPP. Power Supply The board can be powered from an unregulated 4V supply. The regulation circuitry will withstand unregulated 5V as a maximum voltage input. If you are using a DC power supply then you should use a 4V setting. Power can be connected using the 2.mm power jack (positive outer), or the screw terminal connectors J7, J0. Two 5V output screw terminals are supplied for powering other E-blocks. The regulator will supply up to 400mA via all outputs. Note Remember that other E-blocks will have to receive 5V by placing a connecting wire from the +V Out screw terminal of the Multiprogrammer to the +V screw terminal of each E-Block that requires a voltage. Programming (hardware) The Multiprogrammer connects to a personal computer via the USB socket. Any USB socket on the PC can be used. The host PIC6C745 microcontroller is used to communicate between the USB bus and the Multiprogrammer circuitry. The PIC6C745 is connected to a network of analogue switches formed by U and U4. These devices route 0V, 5V and Vpp to appropriate pins on the slave PICmicro devices as and when necessary. By default the pins RB6, RB7, and RB are used to program the slave PICmicro device. J allows RB4 and RB5 to be selected as alternative programming pins using link block J. This is not implemented at the time of manufacture and J is not fitted. This feature is also not supported in the current version of PPP software. Copyright 2004 Matrix Multimedia Limited Page 7
The ready to go indicator LED connects to the host PIC6C745. The 745 has an on-board A/D converter that detects the level of the supply voltage. LED is used to indicate that the host PIC6C745 is communicating with the PC, that the connection with the PC is valid, and that your Multiprogrammer board has the correct power supply. The Multiprogrammer board will require an external power supply it is not possible to take power for the board from the USB socket alone. DIL Sockets and I / O Ports The slave PICmicro DIL sockets are wired in parallel (see table of connections below) and the ports are fed out to 5 D-type sockets grouped in ports. These signals are also available on a 40-way header for expansion purposes. The ports are only partially complete Port A has only 5 connections, and Port E has only connections. This reflects the pin outs of the various PICmicro devices themselves. When using an -pin device it should be placed in the upper pins of the 4-pin DIL socket. Please refer to device datasheets for availability of port outputs on each device. NOTE RA4 on many PICmicro devices has an open collector output. This means that you will most likely need a pull up resistor to be able to detect a change in status. Please see the datasheet on the device you are using for further details. Reset Push Button PB provides a reset by pulling the MCLR pin low. Note that the PIC6C745 will reset the slave PICmicro as part of the send routine so that you do not need to press this switch each time you send your program to the board. Frequency Selection The board can be clocked by an RC network or by a Crystal. SW2 dictates whether an RC circuit or a crystal circuit is used on the slave PICmicro device. SW dictates whether a fast or slow RC network is used and in this mode RV will allow you to vary the oscillator speed. By default the board is fitted with a 9.660MHz crystal. The crystal fits into a small socket, which allows the crystal to be easily changed. For Matrix Multimedia s courses a.76mhz crystal is recommended. These frequencies are chosen as they divide down by PICmicro prescalers to give suitable frequencies for clock systems and for facilitating serial communication using standard baud rates. Copyright 2004 Matrix Multimedia Limited Page
Appendix A Circuit Diagram Copyright 2004 Matrix Multimedia Limited Page 9
Appendix B - Pin out details Broadly speaking the ranges of PICmicro devices are designed to be upwards compatible: the pin functions on an -pin device are available on a 2-pin device and a 40-pin device. This can be seen from the following excerpt from the Microchip product selector card. The following diagram shows the pin out of the various PICmicro devices: -pin PICmicro Note that GP0 maps to RB7 GP maps to RB6 GP2/AN2 maps to RA0/AN0 Vdd Vss GP5/OSC/CLKIN GP4/OSC2/AN/CLKOUT 2 7 6 GP0/AN0 GP/AN/Vref 4-pin PICmicro Vpp/GP/MCLR 4 5 GP2/TOCKI/AN2/INT Vdd 4 Vss RA2/AN2/Vrefout RA/AN/CMP/Vrefin RA4/T0CKI/CMP2 Vpp/RA5/THV/ MCLR -pin PICmicro 2 4 7 6 5 RA/AN RA0/AN0 OSC/CLKIN/RA7 OSC2/CLKOUT/RA6 RA5/TCKI/OSC/CLKIN RA4/TG/OSC2/CKLOUT Rc5 Rc4 Rc 2 4 5 6 2 0 9 7 RA0/CIN+/ICSPDAT RA/CIN-/ICSPCLK RA2/COUT/T0CK/INT Rc0 Rc Rc2 Vss RB0/INT RB/RX/DT RB2/TX/CK RB/CCP 5 6 7 9 4 2 0 Vdd RB7/TOSI RB6/TOSO/TCKI RB5 RB4/PGM MCLR Vpp/ RA0/AN0 RA/AN 40-pin PICmicro 2 40 9 RB7/PGO/KB RB6/PGC/KB2 RB5/KBI 2 4 5 6 7 9 0 2 4 2-pin PICmicro 2 27 26 25 24 2 22 2 RB0/INT 20 9 7 6 5 RB7/PGO RB6/PGC RB5 RB4 RB/PGM/CCP2 RB2/INT2 RB/INT Vdd Vss RC7/RX/DT RC6/TX/CK RC5/SDO/D+ RA/AN/Vrh/Vref+ RA4/T0CKI RA5/AN4/SS/Lvdin RE0/AN5/RD RE/AN6/WR RE/AN7/CS Avdd Avss OSC/CLKI OSC2/CLKO/RA6 RC0/TOSO/TCKI RC/TOSI/CCP2 RC2/CCP RC/SCK/SCL RD0/PSP0/CIN+ RD/PSP/CIN- 4 5 6 7 9 0 2 4 5 6 7 9 20 7 6 5 4 2 0 29 2 27 26 25 24 2 22 2 RC4/SKI/SDA/D- Vpp/MCLR RA0/AN0 RA/AN RA2/AN2/Vrl/Vref- RA/AN/Vrh/Vref+ RA4/T0CKI RA5/AN4/SS/Avdd/Lvdin Vss OSC/CLKI OSC2/CLKO/RA6 RC0/TOSO/TCKI RC/TOS/CCP2I RC2/CCP RC/SKC/SCL RA2/AN2/Vrl/Vref- RB4/KBI0 RB/PGM/CCP2/CANRX RB2/INT2/CANTX RB/INT RB0/INT0 Vdd Vss RD7/PSP7/PD RD6/PSP6/PC RD5/PSP5/PB RD4/PSP4/ECC/PA RC7/RX/DT RC6/TX/CK RC5/SKO/D+ RC4/SDI/SDA/D- RD/PSP/C2IN- RD2/PSP2/C2IN+ Copyright 2004 Matrix Multimedia Limited Page 0
Appendix C - Bus connections Expansion bus The pin connections on the expansion bus exactly mirror the pin numbering on the 40-pin DIL socket. Note that the pin numbering on the IDC socket is slightly different to that on a DIL socket which results in the seemingly odd arrangement of pins on the IDC pin chart. Pin Comparison Chart PICmicro Pinout Bus Name Pin Pin 4 Pin 2 Pin 40 Pin Vpp/MCLR 4 4 4 Vdd 4 20 & 2 Vss 5 & 9 2 & OCS 6 2 2 9 OCS2 5 0 4 RA0/AN0 7 2 2 RA/AN RA2 4 4 RA/AN 2 5 5 6 6 RA5/AN4 4 7 7 RB0 6 2 RB 7 22 4 RB2 5* * 2 5 RB 9 24 6 RB4 0 25 7 RB5 26 RB6 2 6* 2* 27 9 RB7 7* * 2 40 RC0 0 5 RC 9 2 6 RC2 7 RC 7 4 RC4 6 5 2 RC5 5 6 24 RC6 7 25 RC7 26 RD0 9 RD 20 RD2 2 RD 22 RD4 27 RD5 2 RD6 29 RD7 0 RE0/AN5 RE/AN6 9 RE2/AN7 0 For the, 2, and 40 pin devices the buses on devices are largely upwards compatible pin connections on an -pin device appear on a 2-pin device and a 40-pin device, and pins on a 2-pin device appear on a 40-pin device. This allows the, 2, and 40 pin DIL sockets to be connected in parallel with the PICmicro bus structure intact. This parallel connection is not possible with and 4 pin devices due to programming requirements which means that there are anomalies with the pin connections for the and 4 pin devices as follows: Copyright 2004 Matrix Multimedia Limited Page
Multiprogrammer port line Connection pin on 4 pin device 4 pin port line RB2 5 RA2 RB6 6 RA RB7 7 RA0 Multiprogrammer port line Connection pin on pin device pin port line RB2 RA2 RB6 2 RA RB7 RA0 Connections on J5 Bus Name 40 Pin IDC connector Vpp/MCLR Vdd & 2 & 2 Vss 2 & 20 & 2 OCS 25 OCS2 4 27 RA0/AN0 2 RA/AN 5 RA2 4 7 RA/AN 5 9 RA4/AN4 6 RA5 7 RB0 6 RB 4 4 RB2 5 2 RB 6 0 RB4 7 RB5 6 RB6 9 4 RB7 40 2 RC0 5 29 RC 6 RC2 7 RC 5 RC4 2 6 RC5 24 4 RC6 25 2 RC7 26 0 RD0 9 7 RD 20 9 RD2 2 40 RD 22 RD4 27 2 RD5 2 26 RD6 29 24 RD7 0 22 RE0/AN5 5 RE/AN6 9 7 RE2/AN7 0 9 Connections on J99 Bus Name J99 Vpp/MCLR U - RB7 - PGD 2 U - RB6 - PGC NC 4 NC 5 NC 6 GND 7 VBUS UI RB0 9 U- RB UA! 0 U-RB2 UB! U-RB U4ABC 2 U - RB4 U RB5 4 Copyright 2004 Matrix Multimedia Limited Page 2