Page 2
How to Reach Us: Information in this document is provided solely to enable system and software implementers to use Freescale Semiconductor products. There are no express or implied copyright licenses granted Home Page: hereunder to design or fabricate any integrated circuits or integrated circuits based on the information www.freescale.com in this document.
Chapter 1 M5251C3 Evaluation Board The 5251 is a versatile single-board computer based on the MCF5251 ColdFire® Processor. It may be used as a powerful microprocessor based controller in a variety of applications. It serves as a complete microcomputer system for reference design, development/evaluation, training, and educational use. The user need only connect an RS-232 compatible terminal (or a personal computer with terminal emulation software) and a power supply to have a fully functional system.
The MCF5251 processor has 128 Kbytes of internal SRAM organized as 2 banks of 64 Kbytes. The SRAM can be used for either data or instruction space. There is one SDRAM (U12) device on the PCB. The system ships with 1 x 4 Mbytes x 16 of SDRAM totalling 8 Mbytes of volatile memory.
Page 10
dBUG> RS-232 Terminal or PC +7.0 to +14 VDC Input Power Figure 1-2 Minimum System Configuration M5251C3 Evaluation Board Users Guide, Rev. 0 Freescale Semiconductor...
Installation and Setup This section discusses all the steps needed to prepare the board for operation. Read all the sections carefully before using the board. When you are preparing the board for the first time, be sure to check that all jumpers are in the default locations.
1.6.3 Providing Power to the Board The board accepts three means of power supply connection—P1, P2, or J4. Connector P1 is a 2.1 mm power jack, P2 is a lever-actuated connector, and J4 is a PC disk drive-type power connector. The board accepts +7 V to +14 V DC at 1.0 amp via either of the connectors.
1.6.7 Using a Personal Computer as a Terminal A personal computer may be used as a terminal provided a terminal emulation software package is available. Examples of this software are PROCOMM, KERMIT, QMODEM, Windows 95/98/2000/XP Hyper Terminal or similar packages. The board should then be connected as described in Section 1.6.6, “Connecting the Terminal.”...
System Power-up and Initial Operation When all of the cables are connected to the board, power may be applied. The dBUG ROM Monitor initializes the board and then displays a power-up message on the terminal, which includes the amount of memory present on the board.
Page 16
Table 1-2 Jumper Settings (Continued) Jumper Setting Function JP10 Not fitted External 1.2V (core) supply current measurement JP11,JP13 Not fitted I2S0 5V pull-up (SDA0 and SCL0) JP12 ** Fitted External 3.3V (pad) supply current measurement JP14 ** 1-2 1.2V (core) supply from internal regulator 1.2V (core) supply from external regulator JP15 * 1-2...
Using the BDM Port The MCF5251 microprocessor has a built in debug module referred to as BDM (background debug module). In order to use the BDM, simply connect the 26-pin debug connector on the board (J12) to the P&E BDM wiggler cable provided in the kit. No special setting is needed. Refer to the ColdFire® User's Guide BDM section for additional instructions.
Chapter 2 Using the Monitor/Debug Firmware The M5251C3 single board computer has a resident firmware package that provides a self-contained programming and operating environment. The firmware, named dBUG, provides the user with monitor/debug interface, in-line assembler and disassembly, program download, register and memory manipulation, and I/O control functions.
An additional function called the “TRAP 15 handler” allows the user program to utilize various routines within dBUG. The TRAP #15 handler is discussed in Section 2.5, “TRAP #15 Functions” on page 2-22. The operational mode of dBUG is shown in Figure 2-1.
Figure 2-1 Flow Diagram of dBUG Operational Mode 2.2.2 System Initialization The act of powering up the board will initialize the system. The processor is reset and dBUG is invoked. dBUG performs the following configurations of internal resources during the initialization. The instruction cache is invalidated and disabled.
of the exception table is made at address $00000000 in SDRAM. To take over an exception vector, the user places the address of the exception handler in the appropriate vector in the vector table located at 0x00000000, and then points the VBR to 0x00000000. The Software Watchdog Timer is disabled and internal timers are placed in a stop condition.
Command Line Usage The user interface to dBUG is the command line. A number of features have been implemented to achieve an easy and intuitive command line interface. dBUG assumes that an 80 x 24 ASCII-character dumb terminal is used to connect to the debugger. For serial communications, dBUG requires eight data bits, no parity, and one stop bit (8N1).
Table 2-1 dBUG Command Summary (Continued) Mnemonic Syntax Description dc value Data Convert di<addr> Disassemble dl <offset> Download Serial dn <-c> <-e> <-i> <-s <-o offset>> <filename> Download Network go <addr> Execute gt addr Execute To HELP help <command> Help ird <module.register>...
For the interactive mode, the user enters the command and the optional <addr>. If the address is not specified, then the last address is used. The memory contents at the address are disassembled, and the user prompted for the new assembly. If valid, the new assembly is placed into memory, and the address incremented accordingly.
The optional value <inc> can be used to increment (or decrement) the data value during the fill. This command first aligns the starting address for the data access size, and then increments the address accordingly during the operation. Thus, for the duration of the operation, this command performs properly-aligned memory accesses.
2.4.5 BR (Breakpoints) Usage: BR addr <-r> <-c count> <-t trigger> The BR command inserts or removes breakpoints at address addr. The value for addr may be an absolute address specified as a hexadecimal value, or a symbol name. Count and trigger are numbers converted according to the user-defined radix, normally hexadecimal.
This command first aligns the starting address for the data access size, and then increments the address accordingly during the operation. Thus, for the duration of the operation, this command performs properly-aligned memory accesses. Examples: To search for the 16-bit value 0x1234 in the memory block starting at 0x00040000 and ending at 0x00080000: bs 40000 80000 1234 This reads the 16-bit word located at 0x00040000 and compares it against the 16-bit value 0x1234.
Wherever possible, the disassembler will use information from the symbol table to produce a more meaningful disassembly. This is especially useful for branch target addresses and subroutine calls. The DI command attempts to track the address of the last disassembled opcode. If no address is provided to the DI command, then the DI command uses the address of the last opcode that was disassembled.
in conjunction with the -s option to indicate an optional offset for S-record download. The filename is passed directly to the TFTP server and therefore must be a valid filename on the server. If neither of the -c, -e, -i, -s or filename options are specified, then a default filename and filetype will be used.
To execute code at the C function main(), the command is: go _main To execute code at the address 0x00040000, the command is: go 40000 2.4.12 GT (Execute To) Usage: GT addr The GT command inserts a temporary breakpoint at addr and then executes target code starting at the current program counter.
UART0, and UART1. Refer to the MCF5407 Reference Manual for more information on these modules and the registers they contain. Example: To modify the TMR register of the first Timer module to the value 0x0021, the command is: irm timer1.tmr 0021 2.4.15 HELP (Help) Usage: HELP <command>...
2.4.18 MD (Memory Display) Usage: MD <width> <begin> <end> The MD command displays a contiguous block of memory starting at address begin and stopping at address end. The values for addresses begin and end may be absolute addresses specified as hexadecimal values, or symbol names.
Examples: To set the byte at location 0x00010000 to be 0xFF, the command is: mm.b 10000 FF To interactively modify memory beginning at 0x00010000, the command is: mm 10000 2.4.20 MMAP (Memory Map Display) Usage: mmap This command displays the memory map information for the M5251C3 evaluation board. The information displayed includes the type of memory, the start and end address of the memory, and the port size of the memory.
Here is an example of the output from this command: PC: 00000000 SR: 2000 [t.Sm.000...xnzvc] An: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 01000000 Dn: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 2.4.22 RM (Register Modify) Usage: RM reg data The RM command modifies the contents of the register reg to data.
• client—This is the network Internet Protocol (IP) address of the board. For network communications, the client IP is required to be set to a unique value, usually assigned by your local network administrator. • server—This is the network IP address of the machine which contains files accessible via TFTP. Your local network administrator will have this information and can assist in properly configuring a TFTP server if one does not exist.
client: 192.0.0.2 gateway: 0.0.0.0 netmask: 255.255.255.0 filename: test.srec filetype: S-Record mac: 00:CF:52:49:C3:01 2.4.26 STEP (Step Over) Usage: STEP The STEP command can be used to “step over” a subroutine call, rather than tracing every instruction in the subroutine. The ST command sets a temporary breakpoint one instruction beyond the current program counter and then executes the target code.
To remove the symbol “junk” from the table, the command is: symbol -r junk To see how full the symbol table is, the command is: symbol -s To display the symbol table, the command is: symbol -l 2.4.28 TRACE (Trace Into) Usage: TRACE <num>...
To program all 7 sectors of user Flash, the command is: upuser To program only 1000 bytes into user Flash, the command is: upuser 1000 2.4.31 VERSION (Display dBUG Version) Usage: VERSION The VERSION command displays the version information for dBUG. The dBUG version, build number and build date are all given.
TRAP #15 Functions An additional utility within the dBUG firmware is a function called the TRAP 15 handler. This function can be called by the user program to utilize various routines within the dBUG, to perform a special task, and to return control to the dBUG. This section describes the TRAP 15 handler and how it is used. There are four TRAP #15 functions.
asm (“ trap#15”); /* make the call */ asm (“ move.ld1,d0”); /* put the character in d0 */ 2.5.3 CHAR_PRESENT This function (function code 0x0014) checks if an input character is present to receive. A value of zero is returned in D0 when no character is present. A non-zero value in D0 means a character is present. Assembly example: move.l #$0014,d0...
Chapter 3 Hardware Description and Reconfiguration This chapter provides a functional description of the M5251C3 board hardware. With the description given here and the schematic diagrams in Appendix A, the user can gain a good understanding of the board's design. In this manual, an active low signal is indicated by a "-" preceding the signal name in the text and a bar over the signal name in the schematics.
points to the Flash memory. The contents of the exception table are written to address $00000000 in the SDRAM. The Software Watchdog Timer is disabled, the Bus Monitor is enabled, and the internal timers are placed in a stop condition. The interrupt controller registers are initialized with unique interrupt level/priority pairs.
-TA generation for each chip-select. These registers are programmed by the dBUG monitor to map the external memory and I/O devices. The M5251C3 uses the following signals to select external peripherals: -CS0 to enable the Flash ROM (See Section 3.1.13, “Flash ROM.”) -SDRAS, -SDCAS, and -SDRAM_CS1 to enable the SDRAM (See Section 3.1.12,...
3.1.10 TA Generation The processor starts a bus cycle by asserting -CSx with the other control signals. The processor then waits for a transfer acknowledgment (-TA) either from within (Auto acknowledge - AA mode) or from the externally addressed device before it can complete the bus cycle. -TA is used to indicate the completion of the bus cycle.
3.2.2 QSPI Module The QSPI (Queued Serial Peripheral Interface) module provides a serial peripheral interface with queued transfer capability. It will support up to 16 stacked transfers at one time, minimizing CPU intervention between transfers. Transfer RAMs in the QSPI are indirectly accessible using address and data registers. Functionality is very similar, but not identical, to the QSPI portion of the QSM (Queued Serial Module) implemented in the MC68332 processor.
— 0–8 bytes data length — Programmable bit rate up to 1 Mbps — Content-related addressing • Up to 32 flexible message buffers of zero to eight bytes data length, each configurable as Rx or Tx, all supporting standard and extended messages •...
General Purpose I/O Pins The MCF5251 offers 60-bits of general-purpose I/O of which 6 are dedicated general purpose inputs and 3 are dedicated general purpose outputs. Seven of the GPIO lines are also available as edge sensitive interrupt inputs plus one dedicated pin is used to generate a WAKEUP interrupt from low power mode. The functions of all I/O pins are individually programmable, since they are multiplexed with other pin functions.
Flash Memory Card/IDE Interface Module The SCF5251 memory bus allows connection of an IDE hard disk drive or SmartMedia flash card with a minimum of external hardware. It can interface with both an IDE device and a SmartMedia device connected, although both cannot be supported simultaneously, as the IDE-DIOR and IDE-DIOW signals can only be used to interface to one or the other.
Appendix A Schematics This section is composed of the schematics for the M5251C3 Evaluation Board, including the schematic for the MCF5251 Evaluation Board. M5251C3 Evaluation Board Users Guide, Rev. 0 Freescale Semiconductor...
Page 55
Figure 3-3 shows the Audio Interface. BEAD (100MHz) Analog right channel input 4x 4.7K Analog ground AINR RCA PHONO JACK AINL VREF 4.7uF 25V 470R MCLK1/GPIO11 VCOM SCLK3/GPIO35 AGND SCLK MCLK MCLK2/QSPI_CS2/GPIO24 LRCK LRCK3/GPIO43 DGND SDTO SDATAI3/GPIO8 Analog left channel input AK5353VT RCA PHONO JACK 2.2nF...
Page 56
Figure 3-4 shows the separate schematic for the MCF5251 Evaluation Board. +3.3VP JP14 selects between core running +1.2VP +3.3VP from internal or external 1.2V supply C115 C101 C130 C103 C131 C100 C129 C106 C108 C104 C105 C107 C102 Default setting - connect pins 1+2. VRTC 0.1uF 0.1uF...
Page 57
Figure 3-5 shows the Debug and Test Points. +3.3V Shrouded BDM Header IMPORTANT NOTE: ONLY a 3.3V BDM debugging cable can be used with the -BKPT DSCLK MCF5250 processor. -RESET PST3/INTMON1/GPIO47 PST2/INTMON2/GPIO48 PST1/GPIO49 JP21 PST0/GPIO50 DDATA3/RTS0_B/GPIO4 JP23 JP27 DDATA2/CTS0_B/GPIO3 DDATA1/RTS1_B/SDATA2_BS2/GPIO2 JP28 DDATA0/CTS1_B/SDATA0_SDIO1/GPIO1 PSTCLK/GPIO51...
Page 60
Figure 3-8 shows Power Supply. DC voltage input range +7 to +14V Switchcraft RAPC712 must be +12V for XTRIM operation Power Jack Connector - 2.1mm diameter NOTE: the positive terminal of each power connector is shown on the silkscreen of 3.3V Regulator +3.3V the PCB...
Page 61
Figure 3-9 shows Serial Interfaces and Clocks. +3.3V 24 MHz 11.2896 MHz NOTE: The I2C/Mbus on the MCF5251 will USBCRIN USBCROUT CRIN CROUT support both 3.3V & 5V devices. QSPI_CLK QSPI_DIN QSPI_DOUT EBUIN4/QSPI_CS0/GPIO15 RP29 EBUOUT2/QSPI_CS1/GPIO16 JP19 MCLK2/QSPI_CS2/GPIO24 JP16 -CS1/QSPI_CS3/GPIO28 22pF 22pF 22pF 22pF...
Need help?
Do you have a question about the freescale M5251C3 and is the answer not in the manual?
Questions and answers