亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dec6713.gel

?? c6713的一個非常實用的uart測試程序
?? GEL
字號:
/*--------------------------------------------------------------*/
/* DEC6713.gel                                                  */
/* version 1.00                                                 */
/*                                                              */
/* This GEL file is designed to be used in conjunction with     */
/* CCS 2.21 and the TMS320C6713 DSP based DEC.                  */
/*                                                              */
/*--------------------------------------------------------------*/

/*--------------------------------------------------------------*/
/* The StartUp() function is called each time CCS is started.   */
/* Customize this function to perform desired initialization.   */
/*--------------------------------------------------------------*/

StartUp()
{
    setup_memory_map(); 
    GEL_Reset();  
    init_emif();
} 

/*--------------------------------------------------------------*/
/* Setup memory map for C6713 DEC.                              */
/*                                                              */
/*--------------------------------------------------------------*/
setup_memory_map()
{
	
	GEL_MapOn();            
	GEL_MapReset();         
	
	/* On-chip memory map */
	GEL_MapAdd(0x00000000,0,0x00030000,1,1); /* Internal RAM (L2) mem    */
	GEL_MapAdd(0x01800000,0,0x00000024,1,1); /* EMIF control regs        */
	GEL_MapAdd(0x01840000,0,0x00000004,1,1); /* Cache configuration reg  */
	GEL_MapAdd(0x01844000,0,0x00000020,1,1); /* L2 base addr & count regs*/
	GEL_MapAdd(0x01844020,0,0x00000020,1,1); /* L1 base addr & count regs*/
	GEL_MapAdd(0x01845000,0,0x00000008,1,1); /* L2 flush & clean regs    */
	GEL_MapAdd(0x01848200,0,0x00000010,1,1); /* CE0 mem attribute regs   */
	GEL_MapAdd(0x01848240,0,0x00000010,1,1); /* CE1 mem attribute regs   */
	GEL_MapAdd(0x01848280,0,0x00000010,1,1); /* CE2 mem attribute regs   */
	GEL_MapAdd(0x018482c0,0,0x00000010,1,1); /* CE3 mem attribute regs   */
	GEL_MapAdd(0x01880000,0,0x00000004,1,1); /* HPI control reg          */
	GEL_MapAdd(0x018c0000,0,0x00000028,1,1); /* McBSP0 regs              */
	GEL_MapAdd(0x01900000,0,0x00000028,1,1); /* McBSP1 regs              */
	GEL_MapAdd(0x01940000,0,0x0000000c,1,1); /* Timer0 regs              */
	GEL_MapAdd(0x01980000,0,0x0000000c,1,1); /* Timer1 regs              */
	GEL_MapAdd(0x019c0000,0,0x0000000c,1,1); /* Interrupt selector regs  */
	GEL_MapAdd(0x019c0200,0,0x00000004,1,1); /* Device configuration     */

	GEL_MapAdd(0x01a00000,0,0x00000800,1,1); /* EDMA parameter RAM       */
	GEL_MapAdd(0x01a0ffe0,0,0x00000020,1,1); /* EDMA control regs        */ 

	GEL_MapAdd(0x01b00000,0,0x0000002b,1,1); /* GPIO                     */ 
	GEL_MapAdd(0x01b40000,0,0x0000003c,1,1); /* I2C0                     */ 
	GEL_MapAdd(0x01b44000,0,0x0000003c,1,1); /* I2C1                     */ 	
	GEL_MapAdd(0x01b4c000,0,0x00000300,1,1); /* McASP0                   */ 	
	GEL_MapAdd(0x01b50000,0,0x00000300,1,1); /* McASP1                   */ 	
	GEL_MapAdd(0x01b7c000,0,0x00000128,1,1); /* PLL                      */ 			
	
	GEL_MapAdd(0x01bc0000,0,0x00000050,1,1);   /********cTools*********/
	GEL_MapAdd(0x02000000,0,0x00000014,0,1); /* QDMA regs                */
	GEL_MapAdd(0x02000020,0,0x00000014,0,1); /* QDMA pseudo-regs         */
	GEL_MapAdd(0x30000000,0,0x04000000,1,1); /* McBSP0 data              */
	GEL_MapAdd(0x34000000,0,0x04000000,1,1); /* McBSP1 data              */
	
	GEL_MapAdd(0x3c000000,0,0x04000000,1,1); /* McASP0 data              */
	GEL_MapAdd(0x3c100000,0,0x04000000,1,1); /* McASP1 data              */ 
	
	/* Off-chip memory map */
	GEL_MapAdd(0x80000000,0,0x01000000,1,1); /* CE0, SDRAM, 16 MBytes    */
	GEL_MapAdd(0x90000000,0,0x00040000,1,1); /* CE1, 8-bit ROM, 128KBytes*/
	//GEL_MapAdd(0x90080000,0,0x00000008,1,1); /* CE1, 8-bit I/O port      */
	GEL_MapAdd(0xA0000000,0,0x10000000,1,1); /* CE2 - SBSRAM	         */
	GEL_MapAdd(0xB0000000,0,0x10000000,1,1); /* CE3 - Daughtercard       */
}

/*--------------------------------------------------------------*/
/* CPLD DEFINITIONS	                                        */
/*--------------------------------------------------------------*/
//#define DEC6713_CTL_REG         0xB0000000
//#define DEC6713_INTSTAT_REG     0xB0000001
//#define DEC6713_STAT_REG        0xB0000002
//#define DEC6713_WDT_REG         0xB0000003

/*#define Get_Board_Rev     ((*(char *)CPLD_REV) & 0x07)
#define Get_Cpld_Rev      ((*(char *)CPLD_REV>>4) & 0x0F)
#define Get_Switches      ((*(char *)CPLD_STAT>>4) & 0x0F)
#define LED0_on           *(char *)CPLD_STAT = 0x01
#define LED1_on           *(char *)CPLD_STAT = 0x02
#define LED2_on           *(char *)CPLD_STAT = 0x04
#define LED3_on           *(char *)CPLD_STAT = 0x08
#define LEDs_off          *(char *)CPLD_STAT = 0x00*/

/*--------------------------------------------------------------*/
/* init_emif() 		                                        */
/*--------------------------------------------------------------*/
init_emif()
{
	#define EMIF_GCTL       0x01800000
	#define EMIF_CE1        0x01800004
	#define EMIF_CE0        0x01800008
	#define EMIF_CE2        0x01800010
	#define EMIF_CE3        0x01800014
	#define EMIF_SDRAMCTL   0x01800018
	#define EMIF_SDRAMTIM   0x0180001C
	#define EMIF_SDRAMEXT   0x01800020
	#define EMIF_CCFG       0x01840000;  /* Cache configuration register */
	
	/* EMIF setup */
	*(int *)EMIF_GCTL     = 0x00000068;
	*(int *)EMIF_CE0      = 0xffffbf33;  /* CE0 SDRAM                     */
	*(int *)EMIF_CE1      = 0x02208802;  /* CE1 Flash 16-bit               */
	*(int *)EMIF_CE2      = 0x22a28a22;  /* CE2 Daughtercard 32-bit async */
	*(int *)EMIF_CE3      = 0x02258802;  /* CE3 Daughtercard 32-bit async */

    //if (Get_Board_Rev == 2)
   // {
	    *(int *)EMIF_SDRAMCTL = 0x57115000;  /* SDRAM control (16 Mb)     */
//	} else
//	{
//	    *(int *)EMIF_SDRAMCTL = 0x47115000;  /* SDRAM control (8 Mb)      */
//	}
	*(int *)EMIF_SDRAMTIM = 0x00000578;  /* SDRAM timing (refresh)        */
	*(int *)EMIF_SDRAMEXT = 0x000a8529;  /* SDRAM Extension register      */
}
 
/*--------------------------------------------------------------*/
/* clear_memory_map()                                           */
/*--------------------------------------------------------------*/
clear_memory_map()
{
    GEL_MapOff();
}

/*--------------------------------------------------------------*/
/* FlushCache()                                                 */
/*--------------------------------------------------------------*/
FlushCache()   
{ 
    /* Invalidate L1P and L1D */
    *(int *)0x01840000 = (*(int *)0x01840000 | 0x00000300);  

    /* Clean L2 */
    *(int *)0x01845004 = 0x1;
}   

/*--------------------------------------------------------------*/
/* OnReset()                                                    */
/*--------------------------------------------------------------*/

OnReset(int nErrorCode)
{
	/* A debugger reset or GEL_Reset() does NOT reset the C6713
	* pll. Uncomment the following line if you want your pll
	* reset.
	*/
	/*reset_pll(); */
	init_emif();
}

/*--------------------------------------------------------------*/
/* OnPreFileLoaded()                                            */
/* This function is called automatically when the 'Load Program'*/
/* Menu item is selected.                                       */
/*--------------------------------------------------------------*/
OnPreFileLoaded()
{
/*	GEL_Reset(); 	 -- Commented out for CCS 2.20 */
	FlushCache(); 
	IER = 0;
	IFR = 0;
	init_emif();
}


/*--------------------------------------------------------------*/
/* OnRestart()                                                  */
/* This function is called by CCS when you do Debug->Restart.   */
/* The goal is to put the C6x into a known good state with      */
/* respect to cache, edma and interrupts.                       */
/* Failure to do this can cause problems when you restart and   */
/* run your application code multiple times.  This is different */
/* then OnPreFileLoaded() which will do a GEL_Reset() to get the*/
/* C6x into a known good state.                                 */
/*--------------------------------------------------------------*/
OnRestart(int nErrorCode )
{

      /* Turn off L2 for all EMIFA CE spaces.  App should
      *  manage these for coherancy in the application.
      *  GEL_TextOut("Turn off cache segment\n");
      */
      *(int *)0x1848200 = 0;  /* MAR0 */
      *(int *)0x1848204 = 0;  /* MAR1 */
      *(int *)0x1848208 = 0;  /* MAR2 */
      *(int *)0x184820c = 0;  /* MAR3 */
      
      /* Disable EDMA events and interrupts and clear any
      *  pending events.
      *  GEL_TextOut("Disable EDMA event\n");  
      */               
      *(int *)0x01A0FFE8 = 0;          /* CIERL */           
      *(int *)0x01A0FFF4 = 0;          /* EERL */
      *(int *)0x01A0FFF8 = 0xFFFFFFFF; /* ECRL */
      
      /* Disable other interrupts */
      IER = 0;
      IFR = 0;
}	

/*--------------------------------------------------------------*/
/* RESET MENU                                                   */
/*--------------------------------------------------------------*/ 
menuitem "Resets";

hotmenu ClearBreakPts_Reset_EMIFset()
{
	GEL_BreakPtReset();
	GEL_Reset();
	init_emif();
} 

hotmenu Flush_Cache() 
{ 
	FlushCache();
} 

hotmenu ResetPll()
{
	reset_pll();
}

hotmenu InitPll()
{
	init_pll();
}

hotmenu InitCpld()
{
	init_cpld();
}

/*--------------------------------------------------------------*/
/* MEMORY MAP MENU                                              */
/*--------------------------------------------------------------*/ 
menuitem "Memory Map";

hotmenu SetMemoryMap()
{
	setup_memory_map();
}

hotmenu ClearMemoryMap()
{
	clear_memory_map();
}

/*--------------------------------------------------------------*/
/* C6713 PLL SUPPORT                                            */
/*--------------------------------------------------------------*/
#define PLL_BASE_ADDR   0x01b7c000
#define PLL_PID         ( PLL_BASE_ADDR + 0x000 )
#define PLL_CSR         ( PLL_BASE_ADDR + 0x100 )
#define PLL_MULT        ( PLL_BASE_ADDR + 0x110 )
#define PLL_DIV0        ( PLL_BASE_ADDR + 0x114 )
#define PLL_DIV1        ( PLL_BASE_ADDR + 0x118 )
#define PLL_DIV2        ( PLL_BASE_ADDR + 0x11C )
#define PLL_DIV3        ( PLL_BASE_ADDR + 0x120 )
#define PLL_OSCDIV1     ( PLL_BASE_ADDR + 0x124 )

#define CSR_PLLEN          0x00000001
#define CSR_PLLPWRDN       0x00000002
#define CSR_PLLRST         0x00000008 
#define CSR_PLLSTABLE      0x00000040
#define DIV_ENABLE         0x00008000

reset_pll()
{
	/* Set the PLL back to power on reset state*/
    *(int *)PLL_CSR     = 0x00000048;
    *(int *)PLL_DIV3    = 0x00008001;
    *(int *)PLL_DIV2    = 0x00008001;
    *(int *)PLL_DIV1    = 0x00008000;
    *(int *)PLL_DIV0    = 0x00008000;
    *(int *)PLL_MULT    = 0x00000007;
    *(int *)PLL_MULT    = 0x00000007;
    *(int *)PLL_OSCDIV1 = 0x00080007;           
}

init_pll()
{
    /* When PLLEN is off DSP is running with CLKIN clock source,
    * currently 50MHz or 20ns clk rate.
    */
    *(int *)PLL_CSR  &= ~CSR_PLLEN;

    /* Reset the pll.  PLL takes 125ns to reset.    */
    *(int *)PLL_CSR  |= CSR_PLLRST;

    /* PLLOUT = CLKIN/(DIV0+1) * PLLM
    * 450    = 50/1 * 9
    */ 
    *(int *)PLL_DIV0    = DIV_ENABLE + 0;  
    *(int *)PLL_MULT    = 18;               


    *(int *)PLL_OSCDIV1 = DIV_ENABLE + 4;

    /* Program in reverse order. 
    *  DSP requires that pheriheral clocks be less then
    *  1/2 the CPU clock at all times.
    */

    *(int *)PLL_DIV3    = DIV_ENABLE + 4; 

    *(int *)PLL_DIV2    = DIV_ENABLE + 3; 

    *(int *)PLL_DIV1    = DIV_ENABLE + 1; 
    
    *(int *)PLL_CSR  &= ~CSR_PLLRST;

	/* Now enable pll path and we are off and running at 225MHz
	* with 90 MHz SDRAM.
	*/
    *(int *)PLL_CSR |= CSR_PLLEN;

}

/*--------------------------------------------------------------*/
/* LED_cycle()                                                  */
/*--------------------------------------------------------------*/
/*LED_cycle()
{
	LED3_on;
	LED2_on;
	LED1_on;
	LED2_on;
	LED3_on;
	LEDs_off;
} */ 

/*--------------------------------------------------------------*/
/* init_cpld() - Set CPLD to default state                      */
/*--------------------------------------------------------------*/
init_cpld()
{

	*(char*)DEC6713_CTL_REG = 0;
	//*(char*)CPLD_DC   = 0;
	//*(char*)CPLD_MISC = 0;
}
		
/*--------------------------------------------------------------*/
/* MEMORY MAP MENU                                              */
/*--------------------------------------------------------------*/ 
/*menuitem "Check DSK";
hotmenu QuickTest()
{
	LED_cycle();
	LED_cycle();
	LED_cycle();
	GEL_TextOut(" Switches: %d  Board Revision: %d CPLD Revision: %d\n\n","DSKOutput",1,1,1,
	              Get_Switches, Get_Board_Rev, Get_Cpld_Rev);	
}*/

menuitem "SEED-DEC6713 UART CHANNEL SELECT";

hotmenu UART_A_CHANNEL_SELECT()
{
	*(unsigned char *)(0x20000) = 0x01;		
}

hotmenu UART_B_CHANNEL_SELECT()
{
	*(unsigned char *)(0x20000) = 0x02;		
}

hotmenu UART_AB_CHANNEL_SELECT()
{
	*(unsigned char *)(0x20000) = 0x03;		
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品性做久久久久久| 在线这里只有精品| 欧美一区二区三区日韩| 亚洲免费av高清| 91视视频在线观看入口直接观看www | 九九久久精品视频| 欧美在线免费观看亚洲| 婷婷久久综合九色国产成人| 色狠狠色噜噜噜综合网| 亚洲精品国产精华液| 成人av网站在线| 一个色综合av| 精品视频一区三区九区| 亚洲不卡av一区二区三区| 欧美日韩精品福利| 激情五月婷婷综合| 久久久精品国产免大香伊| 国产一区在线观看视频| 国产日韩av一区| 国内精品写真在线观看| 国产亚洲欧美色| av中文一区二区三区| 尤物av一区二区| 91网上在线视频| 国产99久久久精品| 国产精品传媒入口麻豆| 92国产精品观看| 免费日韩伦理电影| 久久精品视频免费| 91小视频在线| 亚洲综合在线视频| 精品成人一区二区三区四区| 国产综合色视频| 中文字幕在线不卡视频| 欧美日韩小视频| 亚洲欧美日韩国产手机在线| 欧美乱妇15p| 国内欧美视频一区二区| 亚洲欧美在线视频| 欧美人与z0zoxxxx视频| 国产精品亚洲视频| 亚洲成av人在线观看| 久久综合九色综合97婷婷女人 | 免费高清成人在线| **欧美大码日韩| 欧美高清视频一二三区 | 亚洲精选一二三| 欧美三级电影精品| 成人在线综合网| 肉肉av福利一精品导航| 国产欧美一区二区三区在线老狼| 91亚洲精品久久久蜜桃网站| 国内不卡的二区三区中文字幕 | 国产主播一区二区三区| 亚洲国产精品天堂| 久久精品无码一区二区三区| 欧美性猛交xxxx黑人交| 国产成人aaaa| 久热成人在线视频| 亚洲综合色噜噜狠狠| 久久蜜臀精品av| 欧美理论电影在线| 粉嫩aⅴ一区二区三区四区| 五月综合激情婷婷六月色窝| 国产精品人妖ts系列视频| 欧美一区二区三级| 91高清视频在线| 91蜜桃婷婷狠狠久久综合9色| 一区二区三区欧美亚洲| 国产色91在线| 精品免费视频.| 日韩一区二区免费在线观看| 91黄色激情网站| 国产69精品久久777的优势| 亚洲午夜精品网| 最新国产の精品合集bt伙计| 一区二区日韩av| 久久久久久久久久久久久夜| 这里只有精品视频在线观看| 在线视频观看一区| 91免费精品国自产拍在线不卡 | 欧美性xxxxxx少妇| 成人av免费观看| 国产精品一区二区久久精品爱涩 | 色菇凉天天综合网| 色综合久久久久| 99精品国产91久久久久久 | 91美女蜜桃在线| 成人av午夜影院| av在线综合网| 91在线精品一区二区三区| av成人老司机| 91看片淫黄大片一级在线观看| eeuss影院一区二区三区| 成人av集中营| 国内精品在线播放| 蜜桃av一区二区| 精品亚洲国产成人av制服丝袜| 国产精品一区二区在线观看不卡| 亚洲一区二区三区四区在线免费观看 | 亚洲一区在线播放| 日韩西西人体444www| 26uuu国产电影一区二区| 久久久精品国产99久久精品芒果 | 欧美成人欧美edvon| 日韩情涩欧美日韩视频| 欧美精品九九99久久| 精品国产髙清在线看国产毛片| 欧美成人国产一区二区| 久久影院午夜论| 一级女性全黄久久生活片免费| 婷婷久久综合九色综合伊人色| 五月激情六月综合| 久久精品国产精品亚洲精品| 久久电影网电视剧免费观看| 国产乱对白刺激视频不卡| 成人一区二区三区中文字幕| 日本道精品一区二区三区| 欧美日韩一区二区三区在线看| www国产成人免费观看视频 深夜成人网 | 久久精品免费观看| 91蜜桃网址入口| 日韩欧美国产麻豆| 中文字幕一区二区三区乱码在线| 午夜欧美在线一二页| 成人综合婷婷国产精品久久| 欧美高清www午色夜在线视频| 中文子幕无线码一区tr| 日本强好片久久久久久aaa| 成人做爰69片免费看网站| 91精品国产综合久久福利| 综合欧美一区二区三区| 国产综合成人久久大片91| 欧美色国产精品| 亚洲视频在线一区| 国产精品99久久久| 宅男在线国产精品| 亚洲精品国产一区二区精华液 | 风间由美一区二区av101| 制服丝袜亚洲精品中文字幕| 中文字幕一区不卡| 国内精品自线一区二区三区视频| 欧美欧美欧美欧美首页| 综合亚洲深深色噜噜狠狠网站| 国产一区在线不卡| 欧美一级高清大全免费观看| 亚洲一区中文日韩| 91玉足脚交白嫩脚丫在线播放| 久久精品夜色噜噜亚洲a∨ | 国产精品一区一区| 日韩色在线观看| 天天综合色天天| 2020国产精品| 日本特黄久久久高潮| 欧美日韩国产首页在线观看| 亚洲美女精品一区| 97精品电影院| 一区免费观看视频| 成人av午夜影院| 中文字幕一区二| 91啪亚洲精品| 亚洲精品亚洲人成人网在线播放| av高清久久久| 亚洲女同一区二区| 91麻豆国产福利在线观看| 亚洲欧美偷拍卡通变态| av欧美精品.com| 亚洲精品高清视频在线观看| 色综合一个色综合亚洲| 综合欧美一区二区三区| 91在线你懂得| 一区二区三区中文字幕在线观看| 色播五月激情综合网| 亚洲一区在线视频| 欧美日韩一区小说| 日韩福利电影在线| 欧美电影免费观看高清完整版在| 狠狠色丁香婷综合久久| 国产色综合久久| 91麻豆免费在线观看| 亚洲电影在线免费观看| 91麻豆精品国产自产在线观看一区 | 天天操天天干天天综合网| 欧美日韩精品一区二区三区四区| 日韩av一级电影| 精品久久久久久久久久久院品网| 国产一区 二区| 中文字幕在线不卡一区| 在线观看中文字幕不卡| 无码av免费一区二区三区试看| 欧美xxxx在线观看| 成人性生交大片免费看视频在线 | 久久这里只有精品6| av亚洲精华国产精华精| 亚洲国产日产av| 久久伊人中文字幕| 色综合天天综合网国产成人综合天| 亚洲国产精品精华液网站 | 国产婷婷精品av在线| 色噜噜狠狠一区二区三区果冻|