|
by Mark Samuels
Start ý A
Choice PIC ý Getting Connected ý Address
Decoding ý The Identify Drive Command
ý Laying the Foundation ý No
Limits ý Sources and PDF
GETTING CONNECTED
The theory of operation in interfacing
to the CompactFlash card in its Common Memory mode is similar to an
IDE interface. In a nutshell, eight registers are accessible by the
host and loaded with various data. After the first seven registers
are loaded with the appropriate information, the eighth (command)
register is loaded with a command, and that command is executed. To
accomplish this, I have a 17-pin connection from the PIC to the card,
including three address lines (E2:E0), eight data lines (D07-D00),
and six control lines. For an absolute minimum interface to a CF card,
a few of these control signals are not necessary.
According to the CompactFlash specification,
signals CD2 and CD1 are grounded internally to the card to indicate
that a card has been inserted. [1] I connect the PIC to CD1 (with
a 10-kilohm pull-up), and if the pin is low, a card is present. Another
connection that can be removed from the interface is the RDY/ýBSY
signal. In my example code, I poll this line prior to read and write
operations to ensure that the card can accept a command, but a fixed-time
delay can also be used if free I/O pins are getting tight.
A third signal that is not absolutely
necessary but nice to have is a reset line. Strobing the reset line
low will, as the name suggests, reset the controller in the CF card.
The other three control lines that I use are CE1, which will connect
the card data bus (useful if sharing an 8-bit data bus), the active
low OE (output enable), and WE (write enable) strobe signals.
As you can see in Figure
1, the remaining interface lines are fairly straightforward. The
three address lines to the card are on Port E, which is conveniently
a 3-bit wide port. The eight data lines from the card are connected
to Port D, and the control lines are on Port C. So much for the hardware
interface.
PREVIOUS
NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ýCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |