> According to Wikipedia (http://en.wikipedia.org/wiki/Parallel_ATA
> ) the CS pins are
> "Chip Select" pins... in IC terms... that selects which
> chip the main controller wants to talk to.

Yes, but they really select chips, not drives. They select different PATA 
register sets on the drive.

> Hence the use of SPI over the RS232 link used in the 16F877
> version of the schematic.

USART ("RS232") can be used, of course. As it is only internal communication, 
you're free to choose any baud rate. You can configure a 16F877@20MHz to 
communicate at 5 megabaud, I think. You can not however translate this to RS232 
levels using a MAX232, but you don't have to. Just connect the TX line of one 
PIC to the RX line of another.

SPI does not need start and stop bits, so the usable data rate can be slightly 
higher, but you need more pins. And, SPI supports chip-select inputs or 
daisy-chain setup, so multi-device-communication is easier with SPI.
 
> I want to keep the hard drive controller separate for the
> simple reason that it will allow me
> to add upto 4 PATA drives per PIC device.

How do you count four? PATA only supports Master and Slave, that makes two 
drives per controller.

You can multiplex the PATA connectors using bus drivers, like 74HC245. If 
you're only using one drive at a time, that could be a cheap and simple 
solution. You can easily expand one controller to 20 hard drives this way.

Greets,
Kiste


-- 
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/jallib?hl=en.

Reply via email to