We built a machine with a CAN bus connecting modules to a CAN board in a PC.
We had a useful little Laser Beam Power Meter [LBPM] board based on a PIC16F876 attached to CAN. It had a debug serial port. S/w was developed on MPLAB/CCSC C.
The next machine used a Cypress FX2LP (based on an 8051). It has a debug serial port. S/w was developed on Keil C.
Whaddya know, we need to connect the old LBPM board to the new Cypress board.
As I fear this may happen again, I am looking for software to use the USART to connect the two.
As I suspect there may be other useful PIC boards from our past that may be dragged in, I'd like to use the 8051 as a single master talking to one (initially) or more PIC boards.
It's low volume and we do not want to lay out any new boards.
It's quite low throughput.
I accept I am very likely to lose my debug facilty, but that's life.
Both ends seem to support addressing over the USART.
Any simple suggestions? Protocol? C source code appreciated :-)
Things we considered but rejected: a) Put USB target on the PIC board b) Put CAN on the Cypress board c) Introduce another interface (SPI, IIC, etc) - they've been used/adapted already. d) Use a USB to CAN adapter box (or make one) e) Wireless, optical fibres, or any other sort of magic. f) Etc.