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

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

?? idle.c

?? 一個基于三星S3C2413的全部驅動程序
?? C
字號:
/*****************************************
  NAME: idle.c
  DESC: IDLE mode test
  HISTORY:
  03.23.2002:purnnamu: first release for 2410
  06.02.2003:DonGo: Modified for 2442
 *****************************************/

#include "def.h"
#include "option.h"
#include "2413addr.h"
#include "Console.h"
#include "System.h" 
#include "MMUCache.h"
#include "idle.h"


#define TESTYEAR 	(0x00)
#define TESTMONTH 	(0x12)
#define TESTDATE        (0x31)
#define TESTDAY         (0x06)  // SUN:1 MON:2 TUE:3 WED:4 THU:5 FRI:6 SAT:7   
#define TESTHOUR	(0x23)
#define TESTMIN		(0x59)
#define TESTSEC		(0x59)

#define TESTYEAR2	(0x01)
#define TESTMONTH2 	(0x01)
#define TESTDATE2	(0x01)
#define TESTDAY2	(0x07)  // SUN:1 MON:2 TUE:3 WED:4 THU:5 FRI:6 SAT:7   
#define TESTHOUR2	(0x00)
#define TESTMIN2	(0x00)
#define TESTSEC2	(0x00)

unsigned int eint;


void SetAlarmWakeUp(void)
{
	rRTCCON = 0x1;	// R/W enable, 1/32768, Normal(merge), No reset

	rBCDYEAR = TESTYEAR;
	rBCDMON  = TESTMONTH;
	rBCDDAY  = TESTDAY;	// SUN:1 MON:2 TUE:3 WED:4 THU:5 FRI:6 SAT:7
	rBCDDATE = TESTDATE;
	rBCDHOUR = TESTHOUR;
	rBCDMIN  = TESTMIN;
	rBCDSEC  = TESTSEC;
	
	rALMYEAR=TESTYEAR2 ;
	rALMMON =TESTMONTH2;
	rALMDATE=TESTDATE2  ;
	rALMHOUR=TESTHOUR2 ;
	rALMMIN =TESTMIN2  ;
	rALMSEC =TESTSEC2+0x5;

	rRTCALM=0x7f;

	rRTCCON=0x0;   // R/W disable, 1/32768, Normal(merge), No reset
}



static void __irq Eint0Int(void)
 {
    rEINTPEND |= (1<<0);
    ClearPending(BIT_EINT0);
    printf("EINT0 interrupt is occurred for IDLE wake-up.\n");
}

static void __irq Eint11Int(void)
 {
	rPWRMODECON &=~(1<<17); 
    rEINTPEND |= (1<<11);
    rEINTMASK |= ((1<<11)|(1<<0));
    ClearPending(BIT_EINT8_23);
    printf("EINT11 interrupt is occurred for IDLE wake-up.\n");
    eint =1 ;
}

static void __irq AlarmInt(void)
{
    ClearPending(BIT_RTC);
    printf("ALARM interrupt is occurred for IDLE wake-up.\n");
        SetAlarmWakeUp();
    rRTCCON = 0x0;	// R/W disable, but interrupt will be generated.

}


static volatile int t0cnt,t1cnt;

static void __irq Timer0Int(void)
//Timer0 interrupt will be used to test the IDLE mode hard	
{
    ClearPending(BIT_TIMER0);
    t0cnt++;
}

static void __irq Timer1Int(void)
//Timer1 interrupt will be used to test the IDLE mode hard	
{
    ClearPending(BIT_TIMER1);
    t1cnt++;
}




void Eint_test(void)
{

		eint = 0;
	  printf("S3C2413  EINT0 or EINT11. test\n");

    rGPFDN |= (1<<0);
    rGPFCON=rGPFCON & ~(3<<0)|(2<<0); //PF0=EINT0
    rEXTINT0=rEXTINT0&(7<<0)|(0x2<<0); //EINT0=falling edge triggered

    rGPGDN |= (1<<3);
    rGPGCON=rGPGCON & ~(3<<6)|(2<<6); //PG3=EINT11
    rEXTINT1=rEXTINT1&(7<<12)|(0x6<<12); //EINT11=falling edge triggered

    
    pISR_EINT0=(U32)Eint0Int;
    pISR_EINT8_23=(U32)Eint11Int;
    
		// clear pending interrupt1
		
	rEINTPEND |= ((1<<3)|(1<<0));
    rSRCPND = BIT_EINT0|BIT_RTC|BIT_EINT8_23; //to clear the previous pending states
    rINTPND = BIT_EINT0|BIT_RTC|BIT_EINT8_23;
        
    rEINTMASK &= ~((1<<11)|(1<<0));
    rINTMSK &=~(BIT_EINT0|BIT_RTC|BIT_EINT8_23);
    
    while(eint !=1);
	
}

/**********************
 *   IDLE mode test   *
 **********************/

void Test_IdleMode(void)
{
    int i;
    int extintMode;

    printf("[IDLE Mode Test]\n");
    printf("After 10 seconds, S3C2413 will wake up by RTC alarm interrupt.\n");
    printf("S3C2413 will also wake up by EINT0 or EINT11.\n");

    rGPFDN |= (1<<0);
    rGPFCON=rGPFCON & ~(3<<0)|(2<<0); //PF0=EINT0
    rEXTINT0=rEXTINT0&(7<<0)|(0x2<<0); //EINT0=falling edge triggered

    rGPGDN |= (1<<3);
    rGPGCON=rGPGCON & ~(3<<6)|(2<<6); //PG3=EINT11
    rEXTINT1=rEXTINT1&(7<<12)|(0x6<<12); //EINT11=falling edge triggered

    
    pISR_EINT0=(U32)Eint0Int;
    pISR_EINT8_23=(U32)Eint11Int;
    pISR_RTC=(U32)AlarmInt;

	// clear pending interrupt
	rEINTPEND |= ((1<<3)|(1<<0));
    rSRCPND = BIT_EINT0|BIT_RTC|BIT_EINT8_23; //to clear the previous pending states
    rINTPND = BIT_EINT0|BIT_RTC|BIT_EINT8_23;
        
    rEINTMASK &= ~((1<<11)|(1<<0));
    rINTMSK &=~(BIT_EINT0|BIT_RTC|BIT_EINT8_23);

    SetAlarmWakeUp();
    rRTCCON = 0x0;	// R/W disable, but interrupt will be generated.


	//***Enter Idle mode *** : select MMU_IDLE or PWRMODECON//
	//rPWRCFG 	|=(1<<6);	//STADNBYWFI : 00:ignore, 01:idle, 10:stop, 11:sleep mode 
	//MMU_WaitForInterrupt();
	rPWRMODECON |=(1<<17);  //enter IDLE mode.
    
    //***Exit Idle mode ***//

    //for(i=0;i<10;i++);   
        //wait until S3C2400X enters IDLE mode.	
        //wait EINT0 interrupt or RTC alarm interrupt

    rPWRMODECON &=~(1<<17);      
    //turn-off IDLE bit. IDLE bit should be turned off after wake-up.
   
    printf("Return to Normal Mode.\n");
    
    	printf("wake-up= %08x\n", rWKUPSTAT);

	//Check wake-up source
	if( rWKUPSTAT & (1<<0) )		// EINT?
	{
		printf("\n__ Wake-up by EINT\n");
		rWKUPSTAT |= (1<<0);
	}
	else if( rWKUPSTAT & (1<<1) )	// RTC?
	{
		printf("\n__ Wake-up by RTC\n");
		rWKUPSTAT |= (1<<1);
	}
	else if( rWKUPSTAT & (1<<5) )	// BATFLT?
	{
		printf("\n__ Wake-up by nBATFLT\n");
		rWKUPSTAT |= (1<<5);
	}


    rINTMSK=BIT_ALLMSK;
}



void Test_IdleModeHard(void)
{
    int i,j;

       
    printf("[IDLE Mode Hard Test with Timer0]\n");
    printf("S3C2413 will also wake up by EINT0 falling edge.\n");

    Uart_TxEmpty(1);    //Wait until UART0 Tx buffer empty.

    rGPFCON=rGPFCON & ~(3<<0)|(2<<0); //PF0=EINT0
    rEXTINT0=rEXTINT0&(7<<0)|(0x2<<0); //EINT0=falling edge triggered
    
    rSRCPND = BIT_EINT0;
    rINTPND = BIT_EINT0;

    t0cnt=0;t1cnt=0;

    pISR_TIMER0=(U32)Timer0Int; 
    pISR_TIMER1=(U32)Timer1Int;
    pISR_EINT0=(U32)Eint0Int;

    rTCFG0=0x24;		//PRESC01=1,PRESC234=1
    rTCFG1=0x0; 	//TIMER0,1,2,3,4,5= 1/2    
    rTCNTB0=1000;	
    rTCNTB1=2570;
    rTCON=0xa0a;	//T0,T1=manualUpdate,interval mode
    rTCON=0x909;	//Start T0,T1.
    //rTCON=0x00a;
    //rTCON=0x009;
  
    rINTMSK=~(BIT_EINT0|BIT_TIMER0|BIT_TIMER1);
        
    for(i=0;i<100000;i++)
    {
		//***Enter Idle mode ***//
		//rPWRCFG 	|=(1<<6);	//STADNBYWFI : 00:ignore, 01:idle, 10:stop, 11:sleep mode 
		//MMU_WaitForInterrupt();
		rPWRMODECON |=(1<<17);  //enter IDLE mode.
    
    	//***Exit Idle mode ***//

    	//for(i=0;i<10;i++);   
        	//wait until S3C2400X enters IDLE mode.	
        	//wait EINT0 interrupt or RTC alarm interrupt

    	rPWRMODECON &=~(1<<17);      
    	//turn-off IDLE bit. IDLE bit should be turned off after wake-up.

    	if(i%100==0)printf("#");
    }

    rTCON=0x0; //turn the timer off

    rINTMSK=BIT_ALLMSK;
    
    printf("\nt0cnt=%d,t1cnt=%d(t0cnt+t1cnt>=10000)\n",t0cnt,t1cnt);
    printf("Return to Normal Mode.\n");
}


/*********************
 * MMU IDLE mode test *
 *********************/

void Test_MMUIdleMode(void)
{
    int i;
    int extintMode;

    //MMU_SetAsyncBusMode(); //ARM920T should be in the async. Bus mode.

    printf("[MMU IDLE Mode Test]\n");
    printf("This routine tests MMU registser7:Wait for interrupt function.\n");
    printf("After 10 seconds, S3C2413 will wake up by RTC alarm interrupt.\n");
    printf("S3C2413 will also wake up by EINT0.\n");
    //Uart_TxEmpty(1);    //Wait until UART0 Tx buffer empty.

    rGPFCON=rGPFCON & ~(3<<0)|(2<<0); //PF0=EINT0
    rEXTINT0=rEXTINT0&(7<<0)|(0x1<<0); //EINT0=falling edge triggered
    
    pISR_EINT0=(U32)Eint0Int;
    pISR_RTC=(U32)AlarmInt;

    rSRCPND = BIT_EINT0|BIT_RTC; //to clear the previous pending states
    rINTPND = BIT_EINT0|BIT_RTC;
    
    rINTMSK=~(BIT_EINT0|BIT_RTC);
    rINTMSK=~(BIT_RTC);
    rINTMSK=BIT_ALLMSK;

    SetAlarmWakeUp();
    rRTCCON = 0x0;	// R/W disable, but interrupt will be generated.


	rPWRCFG 	|=(1<<6);	//STADNBYWFI : 00:ignore, 01:idle, 10:stop, 11:sleep mode 
    MMU_WaitForInterrupt();
     
    //wait until S3C2400X enters IDLE mode.	
    //wait EINT0 interrupt or RTC alarm interrupt
    for(i=0;i<10;i++);   

    printf("Return to Normal Mode.\n");

    rINTMSK=BIT_ALLMSK;
}



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久久蜜臀粉嫩 | 国产xxx精品视频大全| 欧美精品aⅴ在线视频| 午夜精品福利在线| 欧美精品 日韩| 久久99精品久久久久久久久久久久| 日韩午夜电影在线观看| 经典三级一区二区| 中文字幕精品在线不卡| 91蝌蚪国产九色| 性做久久久久久| 久久综合久久鬼色中文字| 丁香啪啪综合成人亚洲小说 | 国产精品久久久久一区| 91蝌蚪porny成人天涯| 亚洲香蕉伊在人在线观| 日韩一区二区麻豆国产| 国产精品亚洲午夜一区二区三区| 国产精品视频一二三| 91精品1区2区| 91免费版在线| 日本不卡视频一二三区| 国产欧美日本一区视频| 色婷婷综合视频在线观看| 琪琪一区二区三区| 国产精品久久久久影院| 欧美日韩不卡视频| 国产精品影视在线观看| 一区二区三区美女| 精品国内片67194| 色www精品视频在线观看| 久久激情五月激情| 亚洲特黄一级片| 日韩欧美专区在线| 99久久精品国产网站| 美女视频网站久久| 亚洲欧美另类综合偷拍| 2024国产精品| 欧美日本一区二区三区四区| 成人app下载| 紧缚捆绑精品一区二区| 亚洲制服丝袜av| 中文字幕av不卡| 精品国产一区二区三区久久久蜜月 | 日韩欧美一级二级三级久久久| 不卡的av在线播放| 极品少妇一区二区三区精品视频| 亚洲精品国产一区二区精华液| 精品999久久久| 欧美日韩黄色一区二区| kk眼镜猥琐国模调教系列一区二区| 蜜臀久久99精品久久久画质超高清| 亚洲免费视频中文字幕| 中文字幕 久热精品 视频在线| 日韩欧美国产小视频| 欧美日韩一区久久| 日本乱人伦一区| av在线播放一区二区三区| 国产另类ts人妖一区二区| 美女mm1313爽爽久久久蜜臀| 亚洲主播在线观看| 亚洲欧美偷拍卡通变态| 亚洲欧洲av在线| 中文字幕一区二| 久久精品视频一区二区| 精品免费国产一区二区三区四区| 69精品人人人人| 精品视频1区2区| 欧美色大人视频| 欧美日韩在线三级| 在线免费亚洲电影| 在线观看成人免费视频| 在线亚洲欧美专区二区| 日本韩国一区二区三区| 日本高清视频一区二区| 91福利区一区二区三区| 91久久免费观看| 欧美伊人精品成人久久综合97 | 国产视频视频一区| 精品国产百合女同互慰| 精品三级av在线| 精品国产污污免费网站入口 | 欧美亚洲高清一区二区三区不卡| 色婷婷av一区二区三区之一色屋| 色综合久久中文字幕综合网| 亚洲精品一区二区三区四区高清| 精品国产污网站| 精品国产网站在线观看| 国产日韩精品一区二区三区| 中文字幕巨乱亚洲| 日韩美女啊v在线免费观看| 亚洲视频免费在线| 亚洲国产aⅴ成人精品无吗| 天天操天天综合网| 狠狠色丁香久久婷婷综合_中 | 奇米色777欧美一区二区| 免费成人小视频| 国产成人自拍在线| 成人午夜视频福利| 91美女在线视频| 91精品国产色综合久久不卡电影| 欧美精品一区二区三区久久久| 国产精品拍天天在线| 亚洲精品一二三区| 婷婷久久综合九色综合伊人色| 另类小说一区二区三区| 高清beeg欧美| 精品视频在线免费看| www激情久久| 亚洲日本在线a| 奇米色一区二区| 成人亚洲精品久久久久软件| 在线免费观看日本一区| 欧美成人r级一区二区三区| 国产欧美日韩三区| 亚洲综合免费观看高清完整版在线| 麻豆成人久久精品二区三区小说| 高清在线观看日韩| 欧美视频一区二区三区| 亚洲精品一线二线三线| 亚洲免费伊人电影| 捆绑调教美女网站视频一区| 成年人网站91| 精品精品欲导航| 亚洲一区二区三区在线| 高清免费成人av| 91精品国产aⅴ一区二区| 国产精品福利电影一区二区三区四区| 日韩黄色片在线观看| 成人免费va视频| 欧美成人精品高清在线播放| 亚洲男女毛片无遮挡| 国产一区91精品张津瑜| 欧美色视频在线观看| 国产精品美女久久久久久| 欧美aⅴ一区二区三区视频| 91免费国产在线| 欧美激情在线观看视频免费| 另类人妖一区二区av| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 日本一二三四高清不卡| 日本v片在线高清不卡在线观看| 一本大道久久a久久综合| 337p日本欧洲亚洲大胆精品| 午夜精品久久久久久| 一本久久综合亚洲鲁鲁五月天 | 捆绑调教一区二区三区| 欧美写真视频网站| 亚洲免费色视频| 99精品视频在线观看| 中文字幕精品综合| 国产精品白丝jk黑袜喷水| 日韩欧美国产wwwww| 午夜精品免费在线观看| 欧洲亚洲精品在线| 亚洲精品中文在线| 91亚洲国产成人精品一区二区三| 国产日产欧美一区二区三区| 国模大尺度一区二区三区| 日韩欧美一区二区在线视频| 日本不卡一区二区| 欧美日韩色综合| 从欧美一区二区三区| 久久毛片高清国产| 国产伦精品一区二区三区免费迷 | 在线看不卡av| 一区二区三区在线观看网站| 色悠悠久久综合| 一区二区三区免费在线观看| 色综合久久综合中文综合网| 亚洲精品成人悠悠色影视| 色偷偷久久一区二区三区| 一区二区三区四区视频精品免费| 91视频.com| 一区二区三区四区精品在线视频| 91成人在线免费观看| 亚洲第一激情av| 日韩一级视频免费观看在线| 久久国产精品免费| 久久精品亚洲精品国产欧美kt∨ | 日韩毛片在线免费观看| 91丨九色丨尤物| 亚洲国产三级在线| 欧美精品在线一区二区| 日韩成人午夜电影| 亚洲精品在线免费观看视频| 粗大黑人巨茎大战欧美成人| 综合色天天鬼久久鬼色| 欧美性一二三区| 久久精品久久综合| 国产精品美女一区二区三区 | 蜜臀av在线播放一区二区三区| 欧美tickling挠脚心丨vk| 国产精品亚洲人在线观看| 国产精品电影一区二区| 欧美日韩一区精品| 裸体健美xxxx欧美裸体表演| 国产精品麻豆一区二区| 欧美三级三级三级爽爽爽| 激情欧美一区二区三区在线观看|