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

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

?? cstartup_eb55.c

?? AT91M55800A材料-BasicTimer
?? C
字號:
//*----------------------------------------------------------------------------
//*         ATMEL Microcontroller Software Support  -  ROUSSET  -
//*----------------------------------------------------------------------------
//* The software is delivered "AS IS" without warranty or condition of any
//* kind, either express, implied or statutory. This includes without
//* limitation any warranty or condition with respect to merchantability or
//* fitness for any particular purpose, or against the infringements of
//* intellectual property rights of others.
//*----------------------------------------------------------------------------
//* File Name           : Cstartup_EB55.c
//* Object              : Low level initializations written in C for Green Hills
//*                       tools
//* Creation            : JPP 11/Nov/02
//*----------------------------------------------------------------------------

// Include Standard chips definition
#include "include/AT91M55800A.h"
#include "include/lib_AT91M55800A.h"

// Include the board file description containing the EBI value
#include "eb55.h"

// The following functions must be write in ARM mode this function called directly
// by exception vector
extern void AT91F_Spurious_handler(void);
extern void AT91F_Default_IRQ_handler(void);
extern void AT91F_Default_FIQ_handler(void);

// Vector table definition check this table in ARM file init_reset_eb55.arm
extern unsigned int VectorTable[];
extern unsigned int __ghs_eofn_VectorTable[];
 
// Green Hills link file, define the address for mode Flash or RAM
extern unsigned int __iramstart[];

#pragma ghs section text=".reset" 
//*----------------------------------------------------------------------------
//* \fn    AT91F_LowLevelInit
//* \brief This function performs very low level HW initialization
//*        this function can be use a Stack, depending the compilation 
//*        optimization mode
//* Input Parameters
//* <Vector>  vector table Address determinate in Relative addressing
//* <InternalRam> Internal Address determinate in Relative addressing
//* Output Parameters 
//* <EBI address>
//*----------------------------------------------------------------------------
AT91_REG * AT91F_LowLevelInit( unsigned int * Vector, unsigned int * InternalRam)
{
 int            i;

 AT91PS_EBI     pEbi;
 AT91PS_AIC     pAic;
 AT91PS_APMC    pAPMC;

        //-----------------------------------------------------------------------------
        // Speed up the Boot sequence
        //---------------------------
        // After reset, the number of wait states on chip select 0 is 8. All AT91 
        // Evaluation Boards fits fast flash memories, so that the number of wait 
        // states can be optimized to fast up the boot sequence.
        //-----------------------------------------------------------------------------
        // set sandart Wait State
        pEbi = AT91C_BASE_EBI ;
        pEbi->EBI_CSR[0] = EBI_CSR_0 ;  

        //-----------------------------------------------------------------------------
        //  Speed up the System Frequency
        //---------------------------
        // After reset, the PLL must be setting the external Clock it fixed at 32 KHz  
        //-----------------------------------------------------------------------------
        pAPMC = AT91C_BASE_APMC;
        pAPMC->APMC_CGMR = AT91C_APMC_MOSCEN | (AT91C_APMC_OSCOUNT & (0x2F<< 16));

        // Reading the APMC Status register to detect when the oscillator is stabilized
        while ( (pAPMC->APMC_SR & AT91C_APMC_MOSCS) != AT91C_APMC_MOSCS ) {} ;

        // Commuting from Slow Clock to Main Oscillator (16Mhz)
        pAPMC->APMC_CGMR |= (AT91C_APMC_CSS & (0x1<< 14));

        // Setup the PLL
        pAPMC->APMC_CGMR |= ( AT91C_APMC_MUL & (0x1 << 8)) | (3 << 24);

        // Reading the APMC Status register to detect when the PLL is stabilized
         while ( AT91F_APMC_IsPllLocked (pAPMC) == 0 ) {} ;

        // Commuting from 16Mhz to PLL @ 32MHz
         pAPMC->APMC_CGMR  = (AT91C_APMC_CSS & (0x02 << 14)) | (pAPMC->APMC_CGMR & ~AT91C_APMC_CSS);

        // Now the Master clock is the output of PLL @ 32MHz
        //-----------------------------------------------------------------------------
        //  Set up EBI value
        //--------------------
        // After reset, All EBI register are setted at the default value 
        // The new value will be effective only after the remap command
        //-----------------------------------------------------------------------------
        // Load System pEbi Base address and CSR0 Init Value
        pEbi->EBI_CSR[1] = EBI_CSR_1 ;
        pEbi->EBI_CSR[2] = EBI_CSR_2 ;
        pEbi->EBI_CSR[3] = EBI_CSR_3 ;
        pEbi->EBI_CSR[4] = EBI_CSR_4 ;
        pEbi->EBI_CSR[5] = EBI_CSR_5 ;
        pEbi->EBI_CSR[6] = EBI_CSR_6 ;
        pEbi->EBI_CSR[7] = EBI_CSR_7 ;
        //-----------------------------------------------------------------------------
        // Reset the Interrupt Controller
        //-------------------------------
        // Normally, the code is executed only if a reset has been actually performed.
        // So, the AIC initialization resumes at setting up the default vectors.
        //-----------------------------------------------------------------------------
        // Load System pAic Base address 
        pAic = AT91C_BASE_AIC; 
        
        // Mask All interrupt
        pAic->AIC_IDCR = 0xFFFFFFFF;
        
        // Perform 8 End Of Interrupt Command to make sure AIC will not Lock out nIRQ 
        for (i=0;i < 8; i++)
        {
                AT91F_AIC_AcknowledgeIt(AT91C_BASE_AIC);
        }

        // Set up the default interrupts handler vectors
        pAic->AIC_SVR[0] = (int) AT91F_Default_FIQ_handler ;
        for (i=1;i < 31; i++)
        {
                pAic->AIC_SVR[i] = (int) AT91F_Default_IRQ_handler ;
        }
        pAic->AIC_SPU  = (int) AT91F_Spurious_handler ;
        
        // Setup Exception Vectors in Internal RAM before Remap
        //-----------------------------------------------------
        // That's important to perform this operation before Remap in order to guarantee
        // that the core has valid vectors at any time during the remap operation.
        // Note: There are only 5 offsets as the vectoring is used.
        // Before Remap the internal RAM it's 0x300000
        // After  Remap the internal RAM it's 0x000000
        // Remap it's already executed it's no possible to write to 0x300000.
        //-----------------------------------------------------------------------------
        //  Copy the ARM exception vectors and indirect table

        for  (i=0;i < __ghs_eofn_VectorTable-VectorTable; i++ )
        {
           *InternalRam++=*Vector++;
        }

        return ( &pEbi->EBI_RCR); 
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品电影一区二区| 色综合久久久久| 亚洲va韩国va欧美va| 亚洲视频免费观看| 一区二区三区四区国产精品| 成人欧美一区二区三区小说 | 亚洲国产一区二区a毛片| 91麻豆精品国产91久久久更新时间| 高清国产午夜精品久久久久久| 亚洲国产你懂的| 亚洲人成网站在线| 日韩激情一区二区| 欧美伊人精品成人久久综合97| 色香蕉久久蜜桃| 日韩二区在线观看| 免费在线欧美视频| 国产高清在线观看免费不卡| 国产成人av网站| 成人app软件下载大全免费| 91啦中文在线观看| 欧美日韩久久一区二区| 91精品国产综合久久国产大片| 日韩一区二区三区电影在线观看| 日韩一区二区在线播放| 国产亚洲欧美在线| 亚洲精品水蜜桃| 天天综合色天天综合色h| 久久99精品国产.久久久久久 | 日韩成人一级片| 国产真实乱对白精彩久久| 成人动漫精品一区二区| 欧美在线一区二区| 久久久噜噜噜久久中文字幕色伊伊| ㊣最新国产の精品bt伙计久久| 亚洲综合色在线| 国产乱人伦偷精品视频不卡| 色悠悠亚洲一区二区| 日韩视频一区二区| 亚洲精品视频免费看| 美脚の诱脚舐め脚责91| 99精品视频在线免费观看| 欧美一区二区三区四区高清| 国产精品国模大尺度视频| 蜜臀va亚洲va欧美va天堂| 99视频一区二区| 欧美va亚洲va在线观看蝴蝶网| 亚洲色图欧美在线| 激情另类小说区图片区视频区| aaa亚洲精品一二三区| 精品国产乱码久久久久久图片| 中文字幕一区二区三区蜜月| 久草在线在线精品观看| 欧美老年两性高潮| 亚洲人妖av一区二区| 国产精品中文字幕日韩精品| 欧美日韩不卡一区二区| 国产精品久久久久久久第一福利| 日日夜夜一区二区| 国产在线播放一区二区三区| 亚洲九九爱视频| 久久综合久久综合久久综合| 欧美喷潮久久久xxxxx| 国产老女人精品毛片久久| 国产精品麻豆久久久| 在线观看av一区二区| 亚洲欧美二区三区| 在线综合视频播放| 91小视频免费看| 久久99久久精品| 亚洲一区二区三区自拍| 欧美日韩精品一区二区在线播放| 欧美国产日产图区| 国产传媒日韩欧美成人| 欧美精品一区二区三区视频| 日韩精品国产精品| 91精品国产综合久久蜜臀 | 成人的网站免费观看| 欧美va亚洲va| 国产一区二区三区四区五区美女| 欧美一区二区在线免费播放| 天天色图综合网| 91精品国产一区二区三区香蕉| 亚洲bdsm女犯bdsm网站| 欧美日韩精品一区视频| 日本成人在线网站| 欧美成人三级在线| 国产高清久久久久| 国产精品国产三级国产三级人妇 | 亚洲欧美区自拍先锋| 色视频成人在线观看免| 亚洲一二三级电影| 日韩欧美国产电影| 国产成人在线看| 亚洲人成在线观看一区二区| 欧美视频在线观看一区| 青青草一区二区三区| 国产日韩欧美在线一区| 99久久久久久| 视频在线观看91| 久久久久久免费网| 91传媒视频在线播放| 蜜桃av一区二区| 欧美国产精品久久| 欧美日韩激情一区二区| 国产曰批免费观看久久久| 亚洲天堂网中文字| 日韩一区二区在线看| gogogo免费视频观看亚洲一| 亚洲综合网站在线观看| 日韩欧美视频在线| caoporm超碰国产精品| 香蕉影视欧美成人| 国产精品入口麻豆九色| 91麻豆国产福利在线观看| 亚洲色图视频网| 经典一区二区三区| 欧美日韩美女一区二区| 国产精品久久久爽爽爽麻豆色哟哟| 一区二区三区在线播| 久久超级碰视频| 欧美色图第一页| 亚洲柠檬福利资源导航| 国产一区二区三区在线看麻豆| 91成人免费在线视频| 青青青爽久久午夜综合久久午夜| 欧美高清在线一区二区| 激情欧美一区二区| 亚洲电影一级片| 国产精品素人视频| 精品久久久久久久久久久久包黑料| 色婷婷国产精品久久包臀 | 亚洲午夜久久久久久久久久久| 精品欧美一区二区在线观看| 一本到不卡精品视频在线观看| 国产一区二区在线观看免费| 午夜精品一区二区三区电影天堂| 17c精品麻豆一区二区免费| 久久综合色天天久久综合图片| 9191精品国产综合久久久久久| 99久久精品国产一区二区三区 | 亚洲欧美日韩电影| 国产精品看片你懂得| 国产三级久久久| 久久嫩草精品久久久精品| 日韩欧美在线影院| 日韩欧美123| 欧美成人bangbros| 日韩三级伦理片妻子的秘密按摩| 欧美性高清videossexo| 91免费视频观看| 99久久精品99国产精品| 成人v精品蜜桃久久一区| 国产精品亚洲成人| 国产二区国产一区在线观看| 国产激情一区二区三区四区| 国产精一品亚洲二区在线视频| 久久国产日韩欧美精品| 乱一区二区av| 国产综合色精品一区二区三区| 久久国产精品一区二区| 国产一区二区三区美女| 国产美女一区二区| 粉嫩13p一区二区三区| 成人高清在线视频| 色婷婷亚洲综合| 欧美电影一区二区三区| 日韩视频免费观看高清完整版 | 欧美日韩中文字幕一区二区| 欧美在线小视频| 欧美一级精品大片| 久久久美女艺术照精彩视频福利播放| xnxx国产精品| 中文字幕中文乱码欧美一区二区| 亚洲女人小视频在线观看| 色综合久久中文字幕综合网 | 国产精品一区二区久久精品爱涩| 亚洲成人精品在线观看| 亚洲天堂福利av| 一区二区三区免费在线观看| 亚洲手机成人高清视频| 日韩精品一区二区三区在线观看 | 日韩欧美黄色影院| 久久色.com| 亚洲欧美怡红院| 蜜臀av一区二区| 国产精品沙发午睡系列990531| 亚洲精品中文在线| 久久福利资源站| 色婷婷av一区二区三区大白胸| 欧美一区永久视频免费观看| 2020国产精品| 亚洲乱码国产乱码精品精小说| 麻豆91精品视频| 一本大道久久a久久综合婷婷 | 一区二区三区欧美日| 狠狠v欧美v日韩v亚洲ⅴ| 在线日韩国产精品| 久久精品一区二区三区av| 亚洲一区av在线| 高清国产一区二区|