Mark Whitis's Website Home Page Linux Book: Linux Programming Unleashed My Resume Genealogical Data Contact Info Security About

MC9S12DP256 Microcontroller Development Board

[Micro Board Picture] (click to enlarge)

Introduction

This is a development board I designed based on the Freescale MC9S12DP256 or MC9S12DP512 micro.

Features

Avoids common pitfalls of Micro Development Boards

Sensible Pinout

One of the nicest features of this board is the sensible pinout of the I/O connectors. All the I/O pins are fully functional I/O, individually programmable in each direction, though some have additonal special functions.

Special Functions(some ports)FunctionPinPinFunction
PWM0/Timer0/AnalogIn0/AnalogOut0/RXCAN0D0I/O 1 2GND
PWM1/Timer1/AnalogIn1/AnalogOut1/TXCAN0D1I/O 3 4GND
PWM2/Timer2/AnalogIn2/AnalogOut2/RXCAN1D2I/O 5 6GND
PWM3/Timer3/AnalogIn3/AnalogOut3/TXCAN1D3I/O 7 8GND
PWM4/Timer4/AnalogIn4/AnalogOut4/RXCAN2D4I/O 910GND
PWM5/Timer5/AnalogIn5/AnalogOut5/TXCAN2D5I/O1112GND
PWM6/Timer6/AnalogIn6/AnalogOut6/RXCAN3D6I/O1314GND
PWM7/Timer7/AnalogIn7/AnalogOut7/TXCAN3D7I/O1516;GND
MISO (SPI in) H0I/O1718GND
MOSI (SPI out) H1I/O1920GND
SCK (SPI clock) H2I/O2122GND
SS (SPI Slave Select) H3I/O2324GND
(jumper isolated) 5V 25;26GND

The 12 bit (8 bits + 4 handshake) can be used in a wide variety of ways:

Using ribbon cable connectors or stacking male/female connectors and one of the SPI with chip select or parallel with multiplexed address formats, multiple boards can be connected to the same 12 bit connector in many applications.

Additional modes which would be more usable with a more powerful micro (FPGA based) and/or a CPLD enabled peripheral.

I thought about using a smaller connector, but no other connector series is as versatile in the lab. 26 pin header connectors are availble in standard IDC ribbon cable, 26 cavity housing + crimp contacts (Molex C-grid or Amp-Modu), 26 contact discrete wire termination IDC connectors, Male/Female board stacking headers, PCB mount straight or right angle male or female connectors (through hole or surface mount), Board to board standoff connectors, Connectors are availible in tin or gold. Mates with standard breadboard patterns. 26 pin ribbon cables with header to DB25 connector or DIP headers or edge connectors are standard items. Smaller pin count housings and crimp pins (C-grid/Amp-modu) can be used to connect a subset of the pins. Some of the more useful sizes: 1x1, 1x2, 2x2, 3x2, 4x2, 8x2, 6x2, 1x4, 1x8, 1x12. Header pins mates with standard logic analyser leads (just pull off the clip). A wire with a crimp pin on each end protected by either a 1x1 housing or heat shrink tubing is a very versatile jumper. Test point access adapters are availible off the shelf or can be fashioned with a piece of protoboard or a ribbon cable with an extra IDC connector and a male header. Inline switch isolation adapters (to disconnect individual pins) are availible off the shelf. Ribbon cables from IDC connectors can be ripped to individual leads (get the rainbow wire - it rips better and is easier to trace) or to subsets (I.E. rip one 12 bit interface into three 4 bit interfaces). IDC ribbon cable direct to board solder connectors are availible in the same pinout. Flat flex cable assemblies with header connectors in various sizes are readily availible (but they tend not to stack end to end). And break to length strips are availible. And almost any lab has some mating connectors laying around.

Software

By the Author

Third Party Software

Files

Surface Mount

This board uses surface mount components except for most of the connectors. This includes two high density 0.65mm (0.025") lead parts, the micro and the D/A converter. It is feasable to assemble this board in a home or throughole lab, however. And the pintest application makes it easier to debug any mistakes. You will need at a minimum, a fine tip temperature controlled soldering iron ($50), fine guage solder, fine tiped tweezers, a sharp pick, and solder wick. A syringe with flux is also nice to have. A syringe of solder paste can also be used. A bright light and hands free magnification is essential. If you can see it, you can probably solder it. Options include a binocular microscope, a swing arm illuminated magnifier ($75), or a visor magnifier ($30 - I used one with two different lens pairs and installed both (the second one held on with a wire tie) for additional magnification. The binocular microscope is best for the 0.65mm parts, but it can be done using the magnifier lamp or with the visor and the magnifying lamp used simultaneously. A hyperdermic needle (standardsharp, not blunt tip) is good for scraping between leads to remove solder bridges.

Howard Electronics is a good source for the equipment. The Microscope Store has stereo and trinocular boom microscopes for under $600. Pay attention to the focus distance specs, you want enough room under the microscope to work. A trinocular scope lets you attach a camera without removing one of the eyepieces. A good digital camera that will focus up close can also be used for inspection.

License

Free for personal use. Contact me for commercial licensing, such as to sell boards or to embed the design in a larger board.

Daughterboard Expansion connector

Additional expansion connector (unused). Provides SPI with multiple chip selects, both async serial ports, additional input and output pins (SPI based). Additionally, some analog inputs (intended for 2 joysticks) are availible on this pin (via an analog mux to the main analog inputs).

This connector was originally intended for a user-interface daughterboard that would have 2 opto-isolated RS-232/RS-422/RS-485 switchable serial ports, optoisolated canbus, LCD display, 2 joysticks, 16key keypad, 4 pushbuttons, 3 LEDs, touchscreen interface, SD/SDIO/MMC card interface, real time clock, and LEDs. It uses a smaller 50 pin 0.5mm flat flex connector.

Erratta

This board was designed under horrendous time pressures, and this was the first prototype pass. I.E. this was my "breadboard". With wire mods, the board has stood up to over a year of testing.

A few wire mods were required to circumvent limitations of a couple pins on the micro.

Wire mods:

Some of these changes may be relected on the schematic and/or PCB but I think I was interrupted before I finished.

User interface board (vaporware)

The user interface board connector pinout isn't very rational. It is the result of taking a schematic for a single board and dividing it into two boards by dropping a pair of connectors in the middle. I decided that two double sided boards back to back made more sense than 1 4 layer board with components both sides for few reasons: in small quantities, cost was about the same (after all a 4 layer board is basically 2 two layer boards laminated together), I needed the first board immediately for a project but the second could wait, and for applications that didn't need all the extra features why pay for the second board.

I am not planning on building the user interface board that mates with the flat flex connector anytime soon, unless I have specific client requirements. Already have schematic and parts placement, but not routing. Some of the functions will show up on separate peripheral modules. I may produce a similar user interface board, but I will be moving away from the flat flex connector and using a standard 12 pin interface. I might make an adapter allowing the flat flex connector to be used to avoid tying up any of the user I/O ports.

Future Plans

I am focusing my development efforts towards FPGA embedded and FPGA attached micros. They will use the same connector pinout but not necessarily the same footprint. They will support 5V TTL/HCT level, 3.3V, 2.5V, and possibly 1.8V, and 1.2V signal levels. Probably 72 I/O pins on 6 connectors. A/D and D/A will likely be a separate board. Many megabytes of RAM and MMC card flash. JTAG. Option to run embedded Linux.

As an intermediate step, I plan to make an adapter from the Xilinx spartan3e development board FX2 connector to three 12 bit I/O connectors.

I have sketched out a whole bunch of I/O boards that will use the standard 12 bit ports (or subsets). RS-232/RS-422/RS-485, LED indicator boards, switch input boards, LCD display, relay driver, motor driver, ethernet, USB, RS-422 driver/receivers for non-communications applications, level translation, SPI A/D and D/A, high speed A/D and D/A, FTDI USB, etc.

The current micro doesn't support differential (LVDS) signalling but futur ones will. The 26 pin connector was designed with two options for differential signals. One is to use two adjacent data pins as a differential pair. The other is to replace the signal return lead (gnd) with the negative differential signal.

This file is maintained by Mark Whitis (whitis@freelabs.com).

Senior Engineer for hire
Software Development - Electronic Design - Embedded Systems - Device Drivers - System/Network Administration and Security - Motor Control, RobotCNC - Linux/Un*x - 25+ years experience
The author of these pages is looking for a new gig.
[RESUME]

Engineers and electronic hobbyists: The new Open Symbol Project is creating open schematic symbols and PCB footprints for a variety of different CAD packages.

Mark Whitis's Website Home Page Linux Book: Linux Programming Unleashed My Resume Genealogical Data Contact Info Security About

All email messages received must pass the turing test or they will be considered SPAM. If it could have been written by a machine, it was.

Under no circumstances are you to email me with questions regarding windoze, any other microsoft operating system or application, or any software which runs under any form of windoze.

*