> I've only just joined the list so this has probably been suggested, >but if external components are ok, then why not use a simple 8-bit shift >register and an 8 way DIL switch with ascociated pull ups? On the PIC this >would need one output for clock,one input for data and most likely 1 output >to reset the shift register. Admittedly you don't actually require 256 >values, but 8 way switches and shift registers are the most common. > > Mike Rigby-Jones This was an interesting topic, just to summarize the suggestions to come up with a way of programming 1 to 80 unique addresses: 1. Using a Commercial Shift Register (Requires 3 12C508 Pins - Provides 256 combinations) 2. Using a timed R/C circuit (requires 1 12C508 Pin - Provides 256 combinations?) I have reservations about the stability (temperature and vibration) of this solution 3. Using a DS1820 with it's built in serial number (1 Pin) 4. Using another PIC with more pins 5. Programming the 12C508 with a unique serial number (0 Pins) 6. Wiring a DIP switch with the LEDs - the pins can either read the switches or drive the LEDs 7. Add a pre-programmed I2C EEPROM (2 Pins) The problem with most of these solutions is that an unacceptable number of pins of the proposed 12C508 are required to read the address AND, probably more importantly the number of possible addresses (80) is greater than the maximum possible using the six I/O pins of the 12C508. With this latter problem in mind, I would probably lean toward numbers 4, 5 or 7. myke This week in myke's Book Room: Houdini, biographies and his writings. http://www.myke.com/Book_Room