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

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

?? cstartup.s

?? atmel公司arm芯片at91r40008的開發實例 此程序為控制幾個led燈閃爍
?? S
字號:
;------------------------------------------------------------------------------
;-         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 source          : Cstartup.arm
;- Object               : Generic CStartup for ARM ADS 1.2 and EB40A
;- Compilation flag     : None
;-
;- 1.0 17/Feb/03 JPP     : Creation
;------------------------------------------------------------------------------


		INCLUDE		include/AT91R40008.inc

;--------------------------------
;- ARM Core Mode and Status Bits
;--------------------------------

ARM_MODE_USER           EQU     0x10
ARM_MODE_FIQ            EQU     0x11
ARM_MODE_IRQ            EQU     0x12
ARM_MODE_SVC            EQU     0x13
ARM_MODE_ABORT          EQU     0x17
ARM_MODE_UNDEF          EQU     0x1B
ARM_MODE_SYS            EQU     0x1F

I_BIT                   EQU     0x80
F_BIT                   EQU     0x40
T_BIT                   EQU     0x20


;- Get the start Ram address
;- For Flash definition
      IF  :DEF:FLASH
TOP_INTERNAL_MEMORY  EQU   AT91C_SRAM_BEFORE_REMAP
      ELSE                                ; not use FLASH USE ICE
;- For Ice definition
TOP_INTERNAL_MEMORY	 EQU	AT91C_SRAM_AFTER_REMAP
      ENDIF                               ; endif SEMIHOSTING

;------------------------------------------------------------------------------
;- Area Definition
;------------------------------------------------------------------------------

                AREA        reset, CODE, READONLY
                ENTRY
				EXPORT		entry
entry
;------------------------------------------------------------------------------
;- Exception vectors ( before Remap )
;------------------------------------
;- These vectors can be read at address 0 or at RAM address
;- They ABSOLUTELY requires to be in relative addressing mode in order to
;- guarantee a valid jump. For the moment, all are just looping.
;- If an exception occurs before remap, this would result in an infinite loop.
;- To ensure if a exception occurs before start application to infinite loop.
;------------------------------------------------------------------------------
                B           InitReset           ; Reset handler
undefvec
                B           undefvec            ; Undefined Instruction
swivec
                B           swivec              ; Software Interrupt
pabtvec
                B           pabtvec             ; Prefetch Abort
dabtvec
                B           dabtvec             ; Data Abort
rsvdvec
                B           rsvdvec             ; reserved
irqvec
                B           irqvec              ; IRQ
fiqvec
                B           fiqvec              ; FIQ

;------------------------------------------------------------------------------
;- Exception vectors ( after cstartup execution )
;------------------------------------
;- These vectors are read at RAM address after the remap command is performed in
;- the EBI. As they will be relocated at address 0x0 to be effective, a
;- RELATIVE addressing is FORBIDDEN. The only possibility to get an absolute
;- addressing for an ARM vector is to read a PC relative value at a defined
;- offset. It is easy to reserve the locations 0x20 to 0x3C (the 8 next
;- vectors) for storing the absolute exception handler address.
;- The AIC vectoring access vectors are saved in the interrupt and fast
;- interrupt ARM vectors. So, only 5 offsets are required (reserved vector
;- offset is never used).
;- The provisory handler addresses are defined on infinite loop and can be
;- modified at any time.
;- Note also that the reset is only accessible by a jump from the application
;- to 0. It is an actual software reset.
;- As the 13 (8+5) first location are used by the vectors, the read/write link
;- address must be defined from 0x34 if internal data mapping is required.
;- (use for that the option -rw- base=0x34
;------------------------------------------------------------------------------
    EXPORT VectorTable

VectorTable
                ldr         pc, [pc, #&18]          ; SoftReset
                ldr         pc, [pc, #&18]          ; UndefHandler
                ldr         pc, [pc, #&18]          ; SWIHandler
                ldr         pc, [pc, #&18]          ; PrefetchAbortHandler
                ldr         pc, [pc, #&18]          ; DataAbortHandler
                nop                                 ; Reserved
                ldr         pc, [pc,#-0xF20]        ; IRQ : read the AIC
                ldr         pc, [pc,#-0xF20]        ; FIQ : read the AIC

;- There are only 5 offsets as the vectoring is used.
                DCD         SoftReset
                DCD         UndefHandler
                DCD         SWIHandler
                DCD         PrefetchAbortHandler
                DCD         DataAbortHandler

;- Vectoring Execution function run at absolute address
SoftReset
                b           SoftReset
UndefHandler
                b           UndefHandler
SWIHandler
                b           SWIHandler
PrefetchAbortHandler
                b           PrefetchAbortHandler
DataAbortHandler
                b           DataAbortHandler
;--------------------
;- The reset handler
;--------------------
InitReset
;------------------------------------------------------------------------------
;- Low level Init (APMC, AIC, EBI, ....) by C function AT91F_LowLevelInit
;------------------------------------------------------------------------------
            IMPORT   AT91F_LowLevelInit

TOP_EXCEPTION_STACK  EQU (TOP_INTERNAL_MEMORY+AT91C_SRAM_AFTER_REMAP_SIZE)
;- minimum  C initialization

            ldr     r13,=TOP_EXCEPTION_STACK    ; temporary stack in internal Ram
			ldr		r1,=TOP_INTERNAL_MEMORY
            add     r0, pc,#-(8+.-VectorTable)  ; @ where to read values (relative)
            bl      AT91F_LowLevelInit

;--------------------------------------------
;- Remap Command and jump on ABSOLUTE address
;--------------------------------------------

            ldr     r12, PtInitRemap        ; Get the real jump address ( after remap )
            mov     r1,#AT91C_EBI_RCB       ; Get the REMAP value
            str     r1, [r0]                ; Store the complete image with the remap command

;- Jump to LINK address at its absolute address
            mov     pc, r12                 ; Jump and break the pipeline

PtInitRemap
            DCD     InitRemap               ; Address where to jump after REMAP
;------------------------------------------------------------------------------
;- The Reset Handler after Remap
;-------------------------------
;- From here, the code is executed from its link address, ie. 0x100 0000.
;------------------------------------------------------------------------------
InitRemap

;------------------------------------------------------------------------------
;- Stack Sizes Definition
;------------------------
;- Interrupt Stack requires 2 words x 8 priority level x 4 bytes when using
;- the vectoring. This assume that the IRQ_ENTRY/IRQ_EXIT macro are used.
;- The Interrupt Stack must be adjusted depending on the interrupt handlers.
;- Fast Interrupt not requires stack If in your application it required you must
;- be define here.
;- Other stacks are defined by default to save one word each.
;- The System stack size is not defined and is limited by the free internal
;- SRAM.
;- User stack size is not defined and is limited by the free external SRAM.
;------------------------------------------------------------------------------

IRQ_STACK_SIZE      EQU     (2*8*4)     ; 2 words per interrupt priority level
FIQ_STACK_SIZE      EQU     (0*4)       ; 0 words
ABT_STACK_SIZE      EQU     (1*4)       ; 1 word
UND_STACK_SIZE      EQU     (1*4)       ; 1 word


;------------------------------------------------------------------------------
;- Setup the stack for each mode
;-------------------------------
                ldr     r0, =AT91C_SRAM_AFTER_REMAP_SIZE

;- Set up Fast Interrupt Mode and set FIQ Mode Stack
                msr     CPSR_c, #ARM_MODE_FIQ:OR:I_BIT:OR:F_BIT
                mov     r13, r0                     ; Init stack FIQ
                sub     r0, r0, #FIQ_STACK_SIZE

;- Set up Interrupt Mode and set IRQ Mode Stack
                msr     CPSR_c, #ARM_MODE_IRQ:OR:I_BIT:OR:F_BIT
                mov     r13, r0                     ; Init stack IRQ
                sub     r0, r0, #IRQ_STACK_SIZE

;- Set up Abort Mode and set Abort Mode Stack
                msr     CPSR_c, #ARM_MODE_ABORT:OR:I_BIT:OR:F_BIT
                mov     r13, r0                     ; Init stack Abort
                sub     r0, r0, #ABT_STACK_SIZE

;- Set up Undefined Instruction Mode and set Undef Mode Stack
                msr     CPSR_c, #ARM_MODE_UNDEF:OR:I_BIT:OR:F_BIT
                mov     r13, r0                     ; Init stack Undef
                sub     r0, r0, #UND_STACK_SIZE

;- Set up Supervisor Mode and set Supervisor Mode Stack
                msr     CPSR_c, #ARM_MODE_SVC:OR:I_BIT:OR:F_BIT
                mov     r13, r0                     ; Init stack Sup

;------------------------------------------------------------------------------
;- Before Init C Initialize C variables you can copy the from FLASH to RAM
;------------------------------------------------------------------------------

;Enable interrupt
            msr     CPSR_c, #ARM_MODE_SVC :OR: F_BIT

;------------------------------------------------------------------------------
;- Branch on C code Main function (with interworking)
;----------------------------------------------------
;- Branch must be performed by an interworking call as either an ARM or Thumb
;- main C function must be supported. This makes the code not position-
;- independent. A Branch with link would generate errors
;------------------------------------------------------------------------------
                IMPORT      __main

                ldr         r0, =__main
                mov         lr, pc
                bx          r0

;------------------------------------------------------------------------------
;- Loop for ever
;---------------
;- End of application. Normally, never occur.
;- Could jump on Software Reset ( B 0x0 ).
;------------------------------------------------------------------------------
End
            b           End




;------------------------------------------------------------------------------
;- Manage exception
;---------------
;- The exception must be ensure in ARM mode
;------------------------------------------------------------------------------

            EXPORT AT91F_Default_FIQ_handler
AT91F_Default_FIQ_handler
            b     AT91F_Default_FIQ_handler


    		EXPORT AT91F_Default_IRQ_handler
AT91F_Default_IRQ_handler
            b     AT91F_Default_IRQ_handler

	         EXPORT AT91F_Spurious_handler
AT91F_Spurious_handler
            b     AT91F_Spurious_handler

    END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品国产麻豆婷婷| 伊人一区二区三区| 91麻豆精品国产91| 欧美日韩亚洲综合一区| av中文字幕一区| 91视视频在线观看入口直接观看www | 色综合天天综合网天天看片| 粉嫩绯色av一区二区在线观看| 国产伦精品一区二区三区免费迷| 国产乱色国产精品免费视频| 国产一区视频网站| 成人a区在线观看| 色哟哟一区二区| 欧美日韩一区精品| 欧美电影免费观看完整版| 精品国产三级电影在线观看| 久久精品人人做人人爽97| 国产欧美综合色| 亚洲精品国产无天堂网2021 | 欧美三级日韩三级| 欧美精品tushy高清| 日韩美女视频一区二区在线观看| 日韩欧美综合在线| 中日韩免费视频中文字幕| 中文字幕一区免费在线观看| 一区二区三区不卡在线观看| 亚洲国产精品麻豆| 久久国产精品色| 成人免费高清在线观看| 在线观看亚洲精品视频| 精品久久久久久亚洲综合网 | 91国偷自产一区二区开放时间 | 欧美一区二区久久| 日本一区二区三区高清不卡| 亚洲欧美日韩国产成人精品影院 | 中文字幕乱码日本亚洲一区二区| 日韩理论片在线| 日韩福利视频网| 国产高清不卡一区二区| 91国偷自产一区二区三区观看| 欧美成人精品福利| 亚洲三级在线免费| 奇米一区二区三区| 99久久er热在这里只有精品15| 91超碰这里只有精品国产| 国产精品美女久久久久av爽李琼 | 国产成人高清在线| 欧美日本乱大交xxxxx| 国产欧美日韩综合| 亚洲第一激情av| a亚洲天堂av| 欧美成人精精品一区二区频| 亚洲国产成人porn| 色一情一乱一乱一91av| 国产亚洲一区二区三区四区| 日韩精品电影一区亚洲| 在线精品视频小说1| 欧美国产激情二区三区| 久久精品99久久久| 欧美精品少妇一区二区三区| 亚洲视频一区二区在线| 成人激情开心网| 久久精品这里都是精品| 精品一区二区国语对白| 在线成人午夜影院| 亚洲chinese男男1069| 91成人国产精品| 日韩一区有码在线| 成人一区二区三区中文字幕| 久久免费精品国产久精品久久久久| 性久久久久久久久久久久| 91免费版pro下载短视频| 国产精品毛片高清在线完整版| 国产成人亚洲精品狼色在线| 精品国产乱码久久久久久久| 裸体一区二区三区| 日韩一区二区麻豆国产| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美精品在欧美一区二区少妇| 亚洲成av人片在线| 欧美卡1卡2卡| 日本不卡不码高清免费观看| 日韩一区二区免费在线电影| 日本成人超碰在线观看| 日韩精品一区二区三区三区免费| 久久成人18免费观看| 久久精品综合网| jizz一区二区| 一区二区三区久久久| 欧美日韩www| 日韩精品亚洲一区| 精品嫩草影院久久| 国产大陆亚洲精品国产| 亚洲欧美日本韩国| 欧美人体做爰大胆视频| 久久99精品久久只有精品| 国产欧美日韩一区二区三区在线观看| 成人精品免费看| 亚洲乱码国产乱码精品精98午夜| 日本韩国欧美国产| 奇米四色…亚洲| 中文字幕精品三区| 欧美日韩一卡二卡三卡| 韩国女主播一区| 亚洲精品视频在线观看免费 | 精品福利视频一区二区三区| 成人妖精视频yjsp地址| 亚洲一区二区视频| 欧美岛国在线观看| 91一区二区在线| 蜜桃av一区二区在线观看| 国产日韩成人精品| 欧美日韩黄色一区二区| 国产福利一区在线| 同产精品九九九| 中文字幕一区在线观看视频| 91麻豆精品国产91久久久使用方法| 国产精品一区二区你懂的| 亚洲无人区一区| 国产三级精品视频| 欧美一区二区三区精品| 91碰在线视频| 国产自产视频一区二区三区| 亚洲一区av在线| 欧美国产日韩亚洲一区| 日韩免费电影网站| 欧美私人免费视频| 顶级嫩模精品视频在线看| 视频一区二区三区中文字幕| 亚洲四区在线观看| 国产精品女上位| 337p粉嫩大胆噜噜噜噜噜91av| 欧美性做爰猛烈叫床潮| 成人av小说网| 国产成a人无v码亚洲福利| 久久97超碰色| 免费在线观看一区| 亚洲自拍偷拍综合| 亚洲美女在线国产| 国产精品美女久久久久久2018 | 国产精品国产三级国产普通话三级| 5858s免费视频成人| 91福利精品第一导航| 99re这里只有精品6| 成人精品高清在线| 成人涩涩免费视频| 成人激情午夜影院| 粉嫩av一区二区三区| 国产91丝袜在线18| 国产成人免费xxxxxxxx| 国产盗摄精品一区二区三区在线| 精品一区二区在线视频| 麻豆国产一区二区| 久久激情五月激情| 久久97超碰国产精品超碰| 麻豆高清免费国产一区| 久久99精品久久久| 国产成人免费在线| 成人国产精品免费观看动漫| 成人天堂资源www在线| www.亚洲色图.com| 91麻豆国产精品久久| 一本大道av一区二区在线播放| 91香蕉视频污在线| 欧美色综合天天久久综合精品| 在线精品视频小说1| 91麻豆精品国产无毒不卡在线观看| 91精品国产欧美一区二区成人 | 91视频在线观看免费| 日本韩国欧美在线| 欧美日韩1区2区| 欧美大白屁股肥臀xxxxxx| 久久精品亚洲精品国产欧美kt∨| 欧美国产精品一区二区三区| 日韩伦理av电影| 热久久一区二区| 国产成a人亚洲| 欧美日韩精品三区| 久久亚洲精华国产精华液 | 亚洲午夜久久久久中文字幕久| 午夜激情综合网| 国产一区二区三区免费播放| 成人动漫视频在线| 欧美精品在线一区二区| 久久精品视频一区二区| 亚洲精品国产成人久久av盗摄 | 成人黄色av电影| 欧美色老头old∨ideo| ww亚洲ww在线观看国产| 亚洲免费观看高清完整版在线| 免费成人你懂的| 一本色道久久综合亚洲精品按摩| 欧美一区二区三区电影| 国产精品的网站| 美美哒免费高清在线观看视频一区二区 | 亚洲视频免费在线| 久88久久88久久久| 91国偷自产一区二区三区观看| 精品国产一区二区亚洲人成毛片 | 色成人在线视频|