You are here: Home DOCUMENTATION NanoCore12 NanoCore12 User Manual - 1 INTRODUCTION

Technological Arts Inc.

Your Shopping Cart

Your Cart is currently empty.

NanoCore12 User Manual - 1 INTRODUCTION

Article Index
NanoCore12 User Manual
All Pages


NanoCore12 was designed as a versatile evaluation and application tool for the Freescale S12 “C” family of microcontrollers.  It is suitable for developing applications for any of the derivatives (e.g. 9S12C32, 9S12C128).  All of the subsystems are identical, with the differentiating factor among the chips being the amounts of Flash and RAM included on the chip.  NanoCore12 modules are completely self-contained, including RS232 interface and 5V regulator circuitry right on the module.  You can simply plug it into any solderless breadboard to use it.
For added convenience, though, a Docking Module is offered, which provides additional support for working with the microcontroller.  It includes a larger voltage regulator, which has extra current to spare for your applications.  The voltage regulator also has a jumper option to enable 3-Volt operation.  Other features include a standard 9-pin D-sub connector (“DB9”) for the RS232 serial interface, a socket to accommodate any size of  NanoCore12 module, a couple of user LEDs and pushbuttons, and a snap-off prototyping area.  A similar product, the School Board, is configured with a section of solderless breadboard instead of the snap-off prototyping area.  This configuration is ideal for quick experimentation and training purposes.  Product bundles are offered for both, and include a power supply and serial cable.  Resources, including documentation, tools, and examples, are available at
NanoCore12 modules are offered in 24-pin, 32-pin, and 40-pin DIP footprints that plug directly into a solderless breadboard, or into the DIP socket on the Docking Module, or into the socket strips on a School Board.  While the standard configuration incorporates the 9S12C32 MCU, a 9S12C128 version is available on the 40-pin “MAX”, offering four times the program space (128K vs. 32K) and double the RAM (4K vs. 2K).  All the modules mentioned have gold-plated 0.025” square pins.


 Residing in a 2K protected block of on-chip flash memory is Freescale’s standard Serial Monitor program (see Freescale Application Note AN2548).  When used with uBug12 (a free multi-platform application created by Technological Arts), you can display and edit memory and registers, erase and program flash, set breakpoints, do instruction tracing, disassemble a range of program memory, and much more.  When using CodeWarrior, you  can load programs into flash, and do source-level debugging in C and assembler.  When you’ve finished developing your program, flip a switch on NanoCore12 to Run mode, and your standalone program runs automatically from Flash, following reset or powerup.  See Chapter 2 for more on using uBug12 and CodeWarrior, and Appendix A for details on the resident Serial Monitor.


An RS-232C serial interface port connector (RX & TX only) is included on both the Docking Module and School Board, allowing communication with a PC com port,  or any other device which has an RS-232 serial port, via a standard 9-pin serial port extension cable.   The RS-232 channel is implemented via the SCI of the MCU, and when NanoCore is reset in Load mode, the resident Serial Monitor uses this port to communicate with an companion program running on your PC (e.g. uBug12).  In Run mode, the RS-232 port is available for your application.
While the MCU does support Controller Area Network (CAN),  it is not accessible on the 24-pin module.  On the 32-pin module, no physical layer circuit is provided for CAN, so if you would like to use it, you’ll need to add the appropriate transceiver circuit externally, connected to PM0 and PM1 of the MCU module.  However, the 40-pin module (NanoCore12MAX) includes an on-board CAN transceiver circuit, so the CAN interface can be used directly, without the need for additional circuitry.
In passing, it should be mentioned that the MCU also supports Serial Peripheral Interface (SPI).  Since this is a logic-level protocol, meant for local communications among peripheral chips, no transceivers are required nor are they provided.  Commonly used SPI chips and modules include:  serial memory (e.g. EEPROM, Flash), temperature controllers, clock/calendar chips, DACs, MP3 decoders, SD memory cards, etc.  The SPI pins are not accessible on the 24-pin module.
A block diagram of the 9S12C MCU is shown here.  Refer to the 9S12C data sheets for details on all of these subsystems.