导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[哈佛]lpc2148 startup.s



No.104338
作者:哈佛
邮件:jola2002@163.com
ID:29699
登陆:81次
QQ:5822022
--  MSN:jola2005912@hotmail.com
文章数:185篇
最后登陆IP:218.17.158.164
最后登陆:2014/12/16 13:54:00
注册:2005/1/6 19:18:03
财富:1280
发帖时间:2007/4/27 16:25:19
发贴者IP:210.21.215.18
标题:哈佛:lpc2148 startup.s
摘要:No.104338lpc2148 startup.s /*----------------------------------------------------------------------------
 *      U S B  -  K e r n e l
 *----------------------------------------------------------------------------
 *      Name:    INIT.S
 *      Purpose: Startup file for Philips LPC214x Family Microprocessor
 *      Version: V1.04
 *----------------------------------------------------------------------------
 *      This software is supplied "AS IS" without any warranties, express, 
 *      implied or statutory, including but not limited to the implied 
 *      warranties of fitness for purpose, satisfactory quality and 
 *      noninfringement. Keil extends you a royalty-free right to reproduce and
 *      distribute executable files created using this software for use on 
 *      Philips LPC2xxx microcontroller devices only. Nothing else gives you the 
 *      right to use this software. 
 *
 *      Copyright (c) 2005 Keil Software.
 *  Modified by Philips Semiconductor
 *---------------------------------------------------------------------------*/
/* 
//***   <  <  < Use Configuration Wizard in Context Menu >  >  >   *** 
*/


/*
 *  The STARTUP.S code is executed after CPU Reset. This file may be 
 *  translated with the following SET symbols. In uVision these SET 
 *  symbols are entered under Options - ASM - Set.
 *
 *  REMAP: when set the startup code initializes the register MEMMAP 
 *  which overwrites the settings of the CPU configuration pins. The 
 *  startup and interrupt vectors are remapped from:
 *     0x00000000  default setting (not remapped)
 *     0x80000000  when EXTMEM_MODE is used
 *     0x40000000  when RAM_MODE is used
 *
 *  EXTMEM_MODE: when set the device is configured for code execution
 *  from external memory starting at address 0x80000000. The startup
 *  vectors are located to 0x80000000.
 *
 *  RAM_MODE: when set the device is configured for code execution
 *  from on-chip RAM starting at address 0x40000000. The startup
 *  vectors are located to 0x40000000.
 */


// Standard definitions of Mode bits and Interrupt (I & F) flags in PSRs

        Mode_USR  EQU      0x10
        Mode_FIQ  EQU      0x11
        Mode_IRQ  EQU      0x12
        Mode_SVC  EQU      0x13
        Mode_ABT  EQU      0x17
        Mode_UND  EQU      0x1B
        Mode_SYS  EQU      0x1F

        I_Bit     EQU      0x80    /* when I bit is set, IRQ is disabled */
        F_Bit     EQU      0x40    /* when F bit is set, FIQ is disabled */


/*
//   <h>   Stack Configuration (Stack Sizes in Bytes)
//     <o0>   Undefined Mode        <0x0-0xFFFFFFFF:4>  
//     <o1>   Supervisor Mode       <0x0-0xFFFFFFFF:4>  
//     <o2>   Abort Mode            <0x0-0xFFFFFFFF:4>  
//     <o3>   Fast Interrupt Mode   <0x0-0xFFFFFFFF:4>  
//     <o4>   Interrupt Mode        <0x0-0xFFFFFFFF:4>  
//     <o5>   User/System Mode      <0x0-0xFFFFFFFF:4>  
//   </h>  
*/
        UND_Stack_Size  EQU     0x00000004
        SVC_Stack_Size  EQU     0x00000004
        ABT_Stack_Size  EQU     0x00000004
        FIQ_Stack_Size  EQU     0x00000004
        IRQ_Stack_Size  EQU     0x00000080
        USR_Stack_Size  EQU     0x00000400

AREA   STACK, DATA, READWRITE, ALIGN=2
        DS   (USR_Stack_Size+3)&~3  ; Stack for User/System Mode 
        DS   (SVC_Stack_Size+3)&~3  ; Stack for Supervisor Mode
        DS   (IRQ_Stack_Size+3)&~3  ; Stack for Interrupt Mode
        DS   (FIQ_Stack_Size+3)&~3  ; Stack for Fast Interrupt Mode 
        DS   (ABT_Stack_Size+3)&~3  ; Stack for Abort Mode
        DS   (UND_Stack_Size+3)&~3  ; Stack for Undefined Mode
Top_Stack:


// VPBDIV definitions
        VPBDIV          EQU     0xE01FC100  /* VPBDIV Address */

/*
//   <e>   VPBDIV Setup
//   <i>   Peripheral Bus Clock Rate
//     <o1.0..1>     VPBDIV: VPB Clock
//                 <0=>   VPB Clock = CPU Clock / 4
//                 <1=>   VPB Clock = CPU Clock
//                 <2=>   VPB Clock = CPU Clock / 2
//     <o1.4..5>     XCLKDIV: XCLK Pin
//                 <0=>   XCLK Pin = CPU Clock / 4
//                 <1=>   XCLK Pin = CPU Clock
//                 <2=>   XCLK Pin = CPU Clock / 2
//   </e>  
*/
        VPBDIV_SETUP    EQU     1
        VPBDIV_Val      EQU     0x00000001


// Phase Locked Loop (PLL) definitions
        PLL_BASE        EQU     0xE01FC080  /* PLL Base Address */
        PLLCON_OFS      EQU     0x00        /* PLL Control Offset*/
        PLLCFG_OFS      EQU     0x04        /* PLL Configuration Offset */
        PLLSTAT_OFS     EQU     0x08        /* PLL Status Offset */
        PLLFEED_OFS     EQU     0x0C        /* PLL Feed Offset */
        PLLCON_PLLE     EQU     (1  <  <0)      /* PLL Enable */
        PLLCON_PLLC     EQU     (1  <  <1)      /* PLL Connect */
        PLLCFG_MSEL     EQU     (0x1F  <  <0)   /* PLL Multiplier */
        PLLCFG_PSEL     EQU     (0x03  <  <5)   /* PLL Divider */
        PLLSTAT_PLOCK   EQU     (1  <  <10)     /* PLL Lock Status */

/*
//   <e>   PLL Setup
//   <i>   Phase Locked Loop
//   <i>   CCLK - Processor Clock
//   <i>   Fcco - PLL Oscillator
//     <o1.0..4>     MSEL: PLL Multiplier Selection
//                 <1-32>    <#-1>  
//                 <i>   PLL Multiplier "M" value
//                 <i>   CCLK = M * Fosc
//     <o1.5..6>     PSEL: PLL Divider Selection
//                 <0=>   1     <1=>   2     <2=>   4     <3=>   8
//                 <i>   PLL Divider "P" value
//                 <i>   Fcco = CCLK * 2 * P
//                 <i>   156MHz   <= Fcco   <= 320MHz
//   </e>  
*/
        PLL_SETUP       EQU     1
        PLLCFG_Val      EQU     0x00000024


// Memory Accelerator Module (MAM) definitions
        MAM_BASE        EQU     0xE ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:47毫秒 最大:5078毫秒 查询8次