CML12S-DP256 Development Board for Motorola MC9S12DP256 xiom anufacturing 2000 2813 Industrial Ln. • Garland, TX 75041 • (972) 926-9303 FAX (972) 926-6063 email: Sales@axman.com • web: http://www.axman.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 CONTENTS GETTING STARTED.......................................................................................................3 Installing the Software ........................................................................................4 Board Startup .....................................................................................................4 Support Software................................................................................................
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 GETTING STARTED The Axiom CML12S-DP256 single board computer is a fully assembled, fully functional development system for the Motorola MC9S12DP256 microcontroller. Provided with wall plug power supply and serial cable. Support software for this development board is provided for Windows 95/98/NT/2000/XP operating systems. This development board applies option selection jumpers.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 Follow the steps in this section to get started quickly and verify everything is working correctly. Installing the Software 1. Insert the Axiom 68HC12 support CD in your PC. If the setup program does not start, run the file called "SETUP.EXE" on the disk. 2. Follow the instructions on screen to install the support software onto your PC. You should at minimum install the AxIDE for Windows software. 3. The programming utility “AxIDE” requires you to specify your board.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 At minimum, you should install the AxIDE program. This provides the flash programming utility and communication with the board via the COM port and the supplied serial cable. This program includes a simple terminal for interfacing with other programs running on the CML12Sxxx and information from your own programs that send output to the serial port.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 It is important to understand the development board's use of Memory and Addressing when writing source code so you can locate your code at valid addresses. For example, when in debug mode, you should put your program CODE in External RAM. In assembly language, you locate the code with ORG statements in your source code. Any lines following an ORG statement will begin at that ORG location, which is the first number following the word ORG, for example: ORG $4000.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 DO NOT use long path or file names (> 8 characters). The free assembler is an older DOS based tool that does not recognize them. If there are no fatal errors in your source code, 2 output files will be created: HELLO.S19 HELLO.LST a Motorola S-Record file that can be loaded or programmed into memory a common listing file which provides physical address information with resulting opcode and operand information.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 You can modify the hello program to display other strings or do anything you want. The procedures for assembling your code, uploading it to the board and executing it remain the same. MON12 has many features such as breakpoints, memory dump and modify and simple program trace (no redirect of the PC is followed). Type HELP at the MON12 prompt for a listing of commands or consult the Mon12 documentation on the disk for more information.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 MON12 OPERATION Mon12 is an embedded monitor / debug utility that allows loading a compiled software program (S record) into Ram memory for testing and debug. The monitor may control the execution of the software by applying the SWI software interrupt service. Other features allow memory and register examination or modification. Communication with the monitor is provided on the HCS12 SCI0 serial port or COM port on the development board.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 A) Determine if Auto Start in enabled and proceed to vector if not a value of $FFFF. B) Set Stack, Initialize memory map and SCI0 port and send prompt. C) Receive first character from Console port and execute monitor if ASCII text / command, else start utility mode for programming services.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 This vector initialization should remain after debug when auto start will be applied for launching the user's application. Note that the user interrupt service routines must be located in the $4000 - $7FFF address range for correct operation. See Autostart for more details. MON12 and NOICE Memory Map ADDRESS TYPE MEMORY MEMORY APPLICATION $C000 $FFFF FLASH MON12, NOICE, and Utility firmware located in internal flash, Page $3F.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 The CML12S-DP256 provides the NOICE debug monitor kernel as a subset of the MON12 monitor in reserved flash memory. User may apply the NOICE development system by setting the MON12 Autostart for the $F800 vector, reset the board and launch the NOICE host software on the PC. The NOICE monitor kernel applies the same resources, memory map, and ram interrupt table as the MON12 monitor. NOICE operation notes: Baud Rate = 19.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 User application must perform all initialization including Stack setting, hardware startup, and external memory bus enable if needed, when the Autostart is applied. MON12 Ram Interrupt Vector table must also be applied in the same manner as under MON12 supervision or application interrupts will be trapped instead of serviced. See the CML12S.asm file for sample start-up initialization code.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 MODC The MODC option jumper provides Special Mode enable during Reset. This option must be open or idle when operating with the MON12 or NOICE monitors. If a BDM cable is applied to BDM port, the MODC option must be installed to enable Special Mode. Failure to install the MODC jumper during BDM application may cause communication problems with the host. AUTO OFF / spare The AUTO OFF (Spare on REV C.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 JP1 and JP2 JP1 and 2 option jumpers provide an easy method of connecting or isolating the HCS12 SCI0 and SCI1 serial channel RXD pins respectfully from the provided on-board RS232 transceiver. To apply the RXD pins on the SCI channels for other user applications requires that the transceiver driver be removed from the HCS12 pin. User may then apply signals to the respective pins at the MCU PORT connector without driver conflict.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 The VDD supply is for reference or external 2.5V input only and should not be loaded by external circuitry or damage to the HCS12 device may occur.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 BUS_PORT GND PA2/D10 PA1/D9 PA0/D8 A0 A1 A10 OE* A11 A9 A8 A12 WE* PE3/LSTRB* PE5/MODA PE6/MODB +5V PE2/RW PE4/ECLK GND 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 D11/PA3 D12/PA4 D13/PA5 D14/PA6 D15/PA7 A2 A3 A4 A5 A6 A7 A13 A14 A15 PE7/NOACC ** PE1/IRQ* PE0/ XIRQ* RESERVED RESERVED RESET* The BUS_PORT supports off-board memory devices while the HCS12 is in expanded mode.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 JP1 will isolate the SCI0 RXD pin from the transceiver. The 1,4,6,7,8, and 9 pins provide RS232 flow control and status. These are connected on the on the bottom of the development board to provide NULL status to the host. User may isolate pins and provide flow control or status connection to the host by applying HCS12 I/O signals and RS232 level conversion. P_COM2 P_COM2 is a 3 pin header that provides the HCS12 SCI1 serial port translated to RS232 signal levels.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 CAN BUS TERMINATION The CAN port provides RC11,12, and 13 1206 SMT size termination resistors on the bottom of the CML12Sxxx board that are not installed at the factory. The termination resistors provide optional bias and termination impedance for the CAN bus connected to the CAN Port. Type of wire media, data rate, length of wire, and number of CAN bus nodes can all effect the requirement or value of the termination for the CAN bus.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 NOTES: 1) The LCD write requires 3 SPI transfers. Transfer 1 provides data 0 - 3 and RS (register select) value. Transfer 2 provides the same data with the EN (D7) bit set. Transfer 3 provides same data with the EN bit clear. 2) Resistor R25 can be removed to apply and external VEE potential. 3) CUT-AWAY 1 - 3 provide a means to isolate the LCD Port from the HCS12 SPI channel.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 TROUBLESHOOTING The CML12SXXX board is fully tested and operational before shipping. If it fails to function properly, inspect the board for obvious physical damage first. Ensure that all IC devices in sockets are properly seated. Verify the communications setup as described under GETTING STARTED and see the Tips and Suggestions sections following for more information.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 Tips and Suggestions Following are a number of tips, suggestions, and answers to common questions that will solve many problem users have with the CML12SXXX development system. You can download the latest software from the Support section of our web page at: www.axman.com Utilities • If you’re trying to program memory or start the utilities, make sure all jumpers are correct.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 TABLE 1. LCD Command and Character Codes Command codes are used for LCD setup and control of character and cursor position. All command codes are written to LCD panel address $B5F0. The BUSY flag (bit 7) should be tested before any command updates to verify that any previous command is completed. A read of the command address $B5F0 will return the BUSY flag status and the current display character location address.
C M L 1 2 S D P 2 5 6 0 7 / 1 7 / 0 2 TABLE 2.