ok, so I guess the above idea was a bit odd. I've gone back to the board and used some logic buffers (non inverting) as drivers, and a way of making PCB routing easier. I have one non tecnhical question for those who use development boards.
Would you like to have the option of running either the LCD display, or 7 segment LED display from SPI?
I am planning on the following scheme. It's overly complicated to design, but should make things relatively straight forward for the user to configure, allowing a versatile microcontroller board, where one isn't forced to use a single port for say the LCD or LED display, or have to use hundreds of jumper wires.
Essentially, I'm using a parallel buffer and a serial to parallel shift register, with their outputs tied. Using tristate output enable means one can select between the two outputs. This 8-bit output is connected to both the LCD and seven segment display, with the shift register 'load' tied to the E strobe of the LCD. Although its not finished it sohuld allow the following options with a couple of jumpers:
1) LCD in 4 bit mode, parallel on port B. 6 lines required.
2) LCD in 4 bit mode, serial via SPI (shift register). 3 lines required. (plus backlight control).
3) Seven segment display on port B. 8 lines required for A-DP, extra 3 lines for 'digital select' via a line decoder. Total: 11 lines. These digit select lines can be sockets requiring only 3 'wires' to be placed from selected IO to decoder.
4) Seven segment display on SPI. 3 lines required for A-DP, extra 3 lines for 'digital select' via a line decoder. total 6 lines.
Because my board is designed to take 8, 14, 18, 28 and 40 pin PIC's, I didn't want to hardwire the LCD/LED displays to port D, as this would mean one could only use them with 40 pin PIC's. With the above scheme, one could use either display with 18 and 28 pin PIC's too, AND have many IO's to spare. Also meaning one wouldn't have to wire up the displays using wires, or lots of dip switches. It would be possible to run the LCD from an 8 pin PIC, which is always handy for quick debugging and simple prototyping idea's.
Again, I realise this is horrendously complicated. But many dev boards seperate each 'module', requiring the user to use jumper wires for every line (6 for LCD, and 11 for the LED display) one might as well just breadboard it if its going to require a mass of wires on the board. Some devboards like the 'bigPIC4' use DIP switches. Handy, but they take up space, and generally, you'll have to flick several switches at a time for a certain configuration. It also means one doesn't always know what micro pins are connected to what, requiring the user to go check the paperwork every time its used.
The use of 'cheap' SMT logic chips, should make life a bit easier, whilst keeping the versatility of the dipswitch scheme. Meaning only a few jumpers are required for the user. Not only that but with the pinout of things like the 74HC541/573, it actually makes routing IO's easier. (less jumper wires for single sided boards).
All the above focuses on using either PORTB on any PIC, or SPI (either PORTC on 28/40 PIC's, or wire sockets for the custom pinouts on 18 PIC's). So it doesn't touch PORTA or D, leaving the analogue pin's free for analogue/general IO, and port D for extra switches/LED's.
Although this is just my own project, my own custom devboard, would anyone be interested in a advanced dev board? Seems I might be able to get pretty much everything thats on the bigPIC4 onto this, along with a solderless breadboard for custom circuits
All on eurocard 160x100mm PCB, designed for DIY PCB makers. Another handy feature is, its stackable. The arduino made this idea popular its its been around for yonks, ala PC104.
Blueteeth