■ SCREENSHOT 5. This
printed circuit board can be
loaded and soldered in the
time it took to successfully
attach a pair of the wirewrap
wires in Photo 3.
■ SCREENSHOT 6. This
printed circuit board is
tiny but every component
can be manually mounted
with the right soldering
PIC18F46J50 PCB a daughterboard. I decided to forego
the use of socket pins and tacked the daughterboard
down to a perfboard with double-sided plated-through 0.1
inch centered holes. As you can see, I also nailed the
interface card to the double-sided plated-through
If you believe Schematic 1, we should only have to
make six connections to attach the interface card to the
PIC18F46J50’s SPI portal. You can count’em in Photo 6.
The absence of header sockets allows the longer portions
of the PIC18F46J50 daughterboard header pins to
protrude just enough to make excellent wire wrap
connections. I’m sure you’ve counted the connections; my
RadioShack wire wrap tool got twisted exactly 12 times.
Call it what you will, but “setting sail” is a seaman’s
■ SCREENSHOT 7. The top
and bottom layer ground
planes are the glue that
holds the circuitry together.
If you have doubts about
that, try routing the
without the planes.
way of saying “smoke
test and shakedown
cruise.” When I plug
both ends of a USB
cable into their
respective port, I stand a
chance of releasing the
smoke and/or testing my
laptop’s USB emergency
stop mechanisms. The
good news is that I can still use our PIC18F46J50
hardware and my laptop to continue with this Design
I intentionally wired the microSD interface card to
match the USB/Mass Storage Device demo code that
comes packaged with the Microchip Application Libraries.
Normally, I would have included some status LEDs and a
serial port in the daughterboard design to aid in the
debugging phase of the project. In that the idea was to
provide you with a universal PIC18F46J50 design, I
omitted all of the status LEDs and debugging peripherals
from the daughterboard design realizing that they could
be mounted on the motherboard and electrically attached
to the daughterboard’s header pins.
Instead of the standard and methodical debugging
methods I normally employ, we’re going to perform some
Blitzkrieg debugging. The only prerequisite to Blitzkrieg
programming is to survey the HardwareProfile.h file that
accompanies the Application Library demo code you wish
to load and execute. If your HardwareProfile.h contents
accurately reflect your hardware, there’s a very good
chance that your target hardware will run all or part of the
■ PHOTO 5. Everybody is on the boat in this shot. It’s time
to set sail.
■ PHOTO 6. Six wirewrap connections are all it takes to
couple the microSD card to the PIC18F46J50.