⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 boot_5402.c

📁 TMS320C5402 写FLASH的BOOT
💻 C
字号:
#include "C5402.h" 
#include "port_5402.h" 
#include "flash.c" 
#include "boot_dat.h"

typedef unsigned int U16;
typedef volatile ioport unsigned IOPORT;

U16 val;

//-----------5402 Registers VAL------------    

#define PMST_VAL  0x00A0
#define SWWSR_VAL 0x7FFF
#define SWCR_VAL  0x0000
#define BSCR_VAL  0x0006
#define CLKMD_VAL 0x4007
//9007 pll*10 4007 pll*5 1007 pll*2 片上初始硬件clk*5 晶振20m 设置成40m 时钟周期25ns

//---------------Init 5402 -----------------   

void Init_board(void)
{
     CLKMD=0x0000;
     while(CLKMD&0x0001);
     CLKMD=CLKMD_VAL;
     PMST=PMST_VAL;
     SWWSR=SWWSR_VAL;
     SWCR=SWCR_VAL;
     BSCR=BSCR_VAL;
}

//---------------main -------------------- 
void main() 
{   
    U16 i,temp; 
    Init_board(); 
    Flash_Ready();
    Flash_Erase_ALL;
    // Flash_Write_OneWord(0x8000,0x3FF6);
    for(i=0;i<=0x01A9;i++) //  0x01A9为boot表的长度
    {    
    	Flash_Write_OneWord((0x8000+i,Flash_data[i]));
    }
    Flash_Write_OneWord(0xFFFF,0x8000);  
    val  = Flash_Read_OneWord(0x00); 
    temp = Flash_Read_OneWord(0x00);
    temp = Flash_Read_OneWord(0x01);
    temp = Flash_Read_OneWord(0x02); 
    while(1);
    exit(0);
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -