My specific project is to use a microcontroller to emulate a controller on multiple game consoles. A number of them use serial communication with a clock line; NES, SNES, 3DO, Playstation 1 and Playstation 2 are the easiest examples. The frequency of the clock signal varies greatly, but the fastest seems to be the PS2 at 500KHz.
I am looking at using a 18LF4550 as my target microcontroller, but can be swayed to look at others if there is a strong reason to.
My main concern is whether or not there is technology built into the PIC to make this kind of serial communication easier/faster. I could certainly program it to wait for the needed rise or fall on the clock line, and shift each bit I need individually, but this feels very inelegant. Are there any functions for shifting data in time with an external clock signal that I can look into?
I am looking at using a 18LF4550 as my target microcontroller, but can be swayed to look at others if there is a strong reason to.
My main concern is whether or not there is technology built into the PIC to make this kind of serial communication easier/faster. I could certainly program it to wait for the needed rise or fall on the clock line, and shift each bit I need individually, but this feels very inelegant. Are there any functions for shifting data in time with an external clock signal that I can look into?