in-circuit serial programming
Install the programming software according to the instructions included with your programmer.
Connect your programmer to the LAB-X board using a 10-pin ribbon cable (part# 10CAB). Do not twist or fold
the cable to make the connection. The connectors on the programmer and LAB-X boards should line up to
allow a straight connection.
If your LAB-X board has a ZIF socket, raise the lever. Insert the microcontroller into the socket on the LAB-X
board and lower the lever to lock it into place. Make sure that the notch on the end of the microcontroller is
aligned with the lever end of the socket.
If your LAB-X board does not have a ZIF socket, carefully line up the PICmicro microcontroller's pins with the
holes in the socket and press it into place. Make sure the notch on the end of the microcontroller is aligned
with the notch at the end of the socket.
Connect a 16VDC adapter (part# ACAD) to the programmer's power jack. You may have different adapters for
the programmer and LAB-X board. Make sure you power the programmer with the 16V adapter.
Connect a 12VDC adapter (part# ACADX) to the LAB-X power jack. You must connect power to the LAB-X
board in order to program the microcontroller.
Run the programmer software on your computer and use the programming procedure to program the part.*
*The LED indicator on the EPIC will remain lit at half intensity when the EPIC is connected to the LAB-X board.
The indicator should light fully when a programming operation is in progress.
Migration from 16F877A to 16F887
The PIC16F877A is an older part that is becoming obsolete. In our bundled development
systems, we have replaced the 16F877A with the more modern 16F887. However, many
of the books that we sell only have sample programs for the 16F877A. This is especially
problematic in the book "LAB-X1 Tutorial and Resource Book" by Harprit Sandhu,
which is included in our Super Bundle development system. The following information
is intended to assist in converting programs for use with the 16F887. The syntax below is
for PICBASIC PRO Compiler.
Much of the function of the 16F877A ADCON1 register has been moved to the
ANSEL and ANSELH registers in the 16F887:
ADCON1 (16F877A)
ANSEL (16F887)
ANSELH (16F887)
ADCON1 = %00000000 '($00, 0)
ANSEL = %00011111
ANSELH = %00000000
PORTA analog
ADCON1 = %00000100 '($04, 4)
ANSEL = %00001011
ANSELH = %00000000
AN0, AN1, AN3 analog
ADCON1 = %00000110 '($06, 6)
ANSEL = %00000000
ANSELH = %00000000
All pins digital
ADCON1 = %00000111 '($07, 7)
ANSEL = %00000000
ANSELH = %00000000
All pins digital
ADCON1 = %00001110 '($0E, 14)
ANSEL = %00000001
ANSELH = %00000000
AN0 analog
ANSELH = %00000000 ADCON1.7 = 1
PORTA analog, result
right-justified
ADCON1 = %10000010 '($82, 130) ANSEL = %00011111
ADCON1.7 = 1
ADCON1 (16F887) DESCRIPTION
ADCON1.7 = 1
result right-justified
DEFINE ADC_CLOCK does not function on the 16F887. This define must be
replaced by a setting to the ADCON0 register:
DEFINE for16F877A
ADCON0 setting for 16F887
DEFINE ADC_CLOCK 0
ADCON0 = %00000000
DEFINE ADC_CLOCK 1
ADCON0 = %01000000
DEFINE ADC_CLOCK 2
ADCON0 = %10000000
DEFINE ADC_CLOCK 3
ADCON0 = %11000000
Component and Vendor Information
The following list is provided to assist you when purchasing parts for our products.
It includes components that are found on our products, and specified within product
documentation. Some of these components are found on more than one product.
Vendor part numbers are shown where possible, and a vendor list with phone
numbers is included at the bottom of the page.
Description
JDR
Bridge Rect, 1A, 100PIV
.01uf-MONO
Cap, 0.1uF, 25V, ceramic monolithic
.1uf-MONO
Cap, 100uF, 50V, radial electrolytic
100R50
Cap, 10uF, 63V, radial electrolytic
10R63
Cap, 1uF, 50V, radial electrolytic
1R100 (1R50)
22PF
Ceramic Resonator, 20MHz with caps
Digi-Key: X909-ND
Ceramic Resonator, 4MHz with caps
Digi-Key: X902-ND
Connector, 10-pin dual-row header
Digi-Key: S2011E-05-ND
Connector, 10-pin IDC female
Digi-Key: HSC10H-ND
Connector, 14-pin dual-row header
Digi-Key: S2011E-07-ND
Connector, 20-pin dual-row header
Digi-Key: S2011E-10-ND
Connector, 2-pin header
HDR-40
Connector, 3-pin header
HDR-40
Connector, 40-pin dual-row header socket
111704
Connector, DB25, 25-pin, right-angle, male
DB25PRS
Connector, DB25, 25-pin, right-angle, female
DB25SRS
Connector, DB9 9-pin, right-angle, female
DB09SRS
Connector, DC power, 2.1mm
Other
103018
Cap, 0.01uF, 25V, ceramic monolithic
Cap, 22pF, ceramic disk
Jameco
PC21S
101178
Connector, modular, 6-position, 6-contact
Digi-Key: A9049-ND
Connector, PC right angle, 9V batt, negative
Digi-Key: 593K-ND
Connector, PC right angle, 9V batt, positive
Connector, USB B-Female, PC right angle
Digi-Key: 594K-ND
230957
Digi-Key: WM17108-ND
Crystal, 20.000MHz
20.0MHZ
Crystal, 32.768KHz
32.768KHZ
Digi-Key: X036-ND
Crystal, 4.000MHz
4.0MHZ
14592
Diode, 1N4148
1N4148
179215
IC, 24C01, I2C EEPROM, 1K (128 x 8), 8-pin DIP
24C01
IC, 24C02, I2C EEPROM, 2K (256 x 8), 8-pin DIP
24C02
108839
IC, 24C04, I2C EEPROM, 4K (2 x 256 x 8), 8-pin DIP
24C04
108847
IC, 24LC08, I2C EEPROM, 8K (4 x 256 x 8), 8-pin DIP
Digi-Key: 24LC08B/P-ND
IC, 24LC16, I2C EEPROM, 16K (8 x 256 x 8), 8-pin DIP
Digi-Key: 24LC16B/P-ND
IC, 25LC040, SPI EEPROM, 4K (512 x 8), 8-pin DIP
Digi-Key: 25LC040/P-ND
IC, 25LC080, SPI EEPROM, 8K (1K x 8), 8-pin DIP
Digi-Key: 25LC080/P-ND
IC, 25LC160, SPI EEPROM, 16K (2K x 8), 8-pin DIP
Digi-Key: 25LC160/P-ND
IC, 93LC56A, Microwire EEPROM, 2K (256 x 8), 8-pin DIP
Digi-Key: 93LC56A/P-ND
IC, 93LC66A, Microwire EEPROM, 4K (512 x 8), 8-pin DIP
IC, 7407, Hex buffer
Digi-Key: 93LC66A/P-ND
7407
IC, NJU6355, real-time clock, 8-pin DIP
Digi-Key: NJU6355ED-ND
IC, DS1302, real-time clock
DS1302
176778
IC, DS1620, temperature sensor
DS1620
114382
IC, DS1820, temperature sensor
DS1820
IC, ICS502M PLL clock multiplier
Digi-Key: 800-1037-5-ND
IC, LTC1298, analog to digital converter
IC, MAX232CPE, RS232 driver
IC, MAX485, RS485 driver
IC, SN75176A, RS485 driver
Digi-Key: LTC1298CN8-ND
MAX232CPE
MAX485
75176
Digi-Key: 296-1737-5-ND
Infrared Remote Control Receiver Module
Sharp: GP1U581Y
LCD, 20-character x 2-line
Crystalfontz: CFAH2002A-NYG-JP
LED, 10-segment bargraph
LED201
LED, Infrared, T-1 3/4
LED172
LED, red, T-1 3/4
LED105
Oscillator, 4.000MHz, 8-pin DIP
Pot, 5K, PCB mount thumbwheel
Pot, 5K, PCB mount trimmer
Digi-Key: SE1203-ND
94705
Digi-Key: D4AA53
Regulator, 7805T 5 volt positive
Regulator, LM317T variable positive
7805T
LM317T
Resistor, 100, 1/4W
R100
Resistor, 10K, 1/4W
R10k
Resistor, 1K, 1/4W
R1K
Resistor, 240, 1/4W
R240
Resistor, 270, 1/4W
R270
Resistor, 4.7K, 1/4W
R4.7k
Resistor, 470, 1/4W
R470
Resistor, 7x10K bussed resistor pack
RPS7-10K
97826
Resistor, 9x470 ohm bussed resistor pack
RPS9-470
97869
Socket, 14-pin DIP
14 PIN ST
Socket, 16-pin DIP
112221
Socket, 18-pin DIP
18 PIN ST
Socket, 20-pin DIP
20 PIN ST
Socket, 28-pin DIP
112299
Socket, 40-pin DIP
41136
Socket, 40-pin ZIF, DIP, Aries
Socket, 8-pin DIP
40-6554-10
8 PIN ST
Speaker, Hycom HY-05, PC mount
106500
Switch, 6mm push button momentary
Switch, 8 position DIP switch
Transistor, 2N3906
104029
153251
8 position
2N3906
38842