EasyManua.ls Logo

Texas Instruments TMS320*2801 Series - Page 67

Texas Instruments TMS320*2801 Series
94 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
www.ti.com
Bootloader Code Listing (V3.0)
// TI File $Revision: /main/3 $
// Checkin $Date: January 10, 2005 15:57:54 $
//###########################################################################
//
// FILE: SPI_Boot.c
//
// TITLE: 280x SPI Boot mode routines
//
// Functions:
//
// Uint32 SPI_Boot(void)
// inline void SPIA_Init(void)
// inline void SPIA_Transmit(u16 cmdData)
// inline void SPIA_ReservedFn(void);
// Uint32 SPIA_GetWordData(void)
//
// Notes:
//
//###########################################################################
// $TI Release:$
// $Release Date:$
//###########################################################################
#include "DSP280x_Device.h"
#include "280x_Boot.h"
// Private functions
inline void SPIA_Init(void);
inline Uint16 SPIA_Transmit(Uint16 cmdData);
inline void SPIA_ReservedFn(void);
Uint16 SPIA_GetWordData(void);
// External functions
extern void CopyData(void);
Uint32 GetLongData(void);
//#################################################
// Uint32 SPI_Boot(void)
//--------------------------------------------
// This module is the main SPI boot routine.
// It will load code via the SPI-A port.
//
// It will return a entry point address back
// to the ExitBoot routine.
//--------------------------------------------
Uint32 SPI_Boot()
{
Uint32 EntryAddr;
// Assign GetWordData to the SPI-A version of the
// function. GetWordData is a pointer to a function.
GetWordData = SPIA_GetWordData;
// 1. Init SPI-A and set
// EEPROM chip enable - low
SPIA_Init();
// 2. Enable EEPROM and send EEPROM Read Command
SPIA_Transmit(0x0300);
// 3. Send Starting for the EEPROM address 16bit
// Sending 0x0000,0000 will work for address and data packets
SPIA_GetWordData();
// 4. Check for 0x08AA data header, else go to flash
if(SPIA_GetWordData() != 0x08AA) return FLASH_ENTRY_POINT;
// 5.Check for Clock speed change and reserved words
SPIA_ReservedFn();
// 6. Get point of entry address after load
SPRU722C November 2004 Revised October 2006 Bootloader Code Overview 67
Submit Documentation Feedback

Table of Contents

Related product manuals