//#####################################################################
//文件: memory.c
//說明: 直接對外部擴展的存儲器訪問。在XINTF Zone2上擴展一個64K×16位的SRAM
//#####################################################################
#include "DSP281x_Device.h"
#include "DSP281x_Examples.h"
//主程序
main()
{
int i;
unsigned int * px;
unsigned int * py;
unsigned int * pz;
//Step 1. 初始化系統(tǒng)控制寄存器、 PLL、 WatchDog、時鐘
//本函數(shù)存放在DSP281x_SysCtrl.c文件中,如不進行此操作,系統(tǒng)時鐘運行在復位值狀態(tài)
InitSysCtrl();
//Step 2. 初始化GPIO,本函數(shù)存放在DSP281x_Gpio.c 文件
//InitGpio(); //本例程序中未使用GPIO,跳過
//Step 3.初始化PIE中斷向量表,使每個中斷向量指向一個空的中斷服務子程序(ISR)
//這些空的子程序存放在DSP281x_DefaultIsr.c文件中,用戶可在這些子程序中直接
//插入自己的中斷代碼,執(zhí)行中斷操作,應用程序一般都要進行此操作
DINT; //關全局中斷
IER = 0x0000; //關CPU級中斷
IFR = 0x0000; //清除中斷標志位
//初始化PIE控制寄存器,本函數(shù)在DSP281x_PieCtrl.c文件中
//InitPieCtrl(); 本例未使用PIE,跳過
//初始化中斷向量表,本函數(shù)在DSP281x_PieVect.c文件中。一般都要進行此操作
InitPieVectTable();
//使能CPU中斷和PIE中斷,本函數(shù)在DSP281x_PieCtrl.c文件中
EnableInterrupts();
//Step 4.初始化片內(nèi)外設,本函數(shù)在DSP281x_InitPeripherals.c文件中
//InitPeripherals(); 本例未使用,跳過
px=(unsigned int *)0x80000;
py=(unsigned int *)0x80100;
for ( i=0,pz=px;i<16;i++,pz++ )
(*pz)=i; //向0x80000~0x8000f寫入0~f
for ( i=0,pz=py;i<16;i++,pz++ ) //在此加軟件斷點
(*pz)=0x1234; //向0x80000~0x8000f寫入0x1234
for ( i=0;i<16;i++,px++,py++ ) //在此加軟件斷點
(*py)=(*px); //將0x80000~0x8000f內(nèi)容復制到0x80100~0x8010f
while(1)
{
} //在此加軟件斷點
}