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

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

?? os_cpu_a.s

?? 周立功的工程模板
?? S
字號:
;/*******************************************************************************************************
;* 文件名:os_cpu_a.s
;* 功  能: μCOS-II在LPC214X上的移植代碼匯編代碼部分,用ADS1.2編譯
;* 作  者:POWER
;* 日  期:2006年7月25號
;* 斯凱科技主頁:www.armsky.net
;* 斯凱科技論壇:www.armsky.net/bbs
;********************************************************************************************************/
;/* 定義系統(tǒng)模式堆棧的大小 */
SVC_STACK_LEGTH     EQU         32

NoInt       EQU 0x80

USR32Mode   EQU 0x10
SVC32Mode   EQU 0x13
SYS32Mode   EQU 0x1f
IRQ32Mode   EQU 0x12
FIQ32Mode   EQU 0x11

;/* T_bit用于檢測進入異常前cpu是否處于THUMB狀態(tài) */
T_bit               EQU         0x20

    CODE32

    AREA    |subr|, CODE, READONLY

            IMPORT  OSTCBCur                    ;// 指向當前任務TCB的指針
            IMPORT  OSTCBHighRdy                ;// 指向?qū)⒁\行的任務TCB的指針
            IMPORT  OSPrioCur                   ;// 當前任務的優(yōu)先級
            IMPORT  OSPrioHighRdy               ;// 將要運行的任務的優(yōu)先級
            IMPORT  OSTaskSwHook                ;// 任務切換的鉤子函數(shù)
            IMPORT  OSRunning                   ;// uC/OS-II運行標志

            IMPORT  OsEnterSum                  ;// 關中斷計數(shù)器(關中斷信號量)
            IMPORT  SWI_Exception               ;// 軟中斷異常處理程序
            
            EXPORT  __OSStartHighRdy            
            EXPORT  OSIntCtxSw                  ;// 中斷退出時的入口,參見startup.s中的IRQ_Handler
            EXPORT  SoftwareInterrupt           ;// 軟中斷入口


;/*********************************************************************************************************
;* 函數(shù)名稱: SoftwareInterrupt
;* 功能描述: 軟件中斷,用于提供一些系統(tǒng)服務,功能參考os_cpu_c.c文件
;* 輸 入:   依功能而定
;* 輸 出 :  依功能而定
;**********************************************************************************************************/
;/* 軟件中斷 */
SoftwareInterrupt
        LDR     SP, StackSvc            ;// 重新設置堆棧指針
        STMFD   SP!, {R0-R3, R12, LR}
        MOV     R1, SP                  ;// R1指向參數(shù)存儲位置

        MRS     R3, SPSR
        TST     R3, #T_bit              ;// 中斷前是否是Thumb狀態(tài)
        LDRNEH  R0, [LR,#-2]            ;// 是: 取得Thumb狀態(tài)SWI號
        BICNE   R0, R0, #0xff00
        LDREQ   R0, [LR,#-4]            ;// 否: 取得arm狀態(tài)SWI號
        BICEQ   R0, R0, #0xFF000000
                                        ;// r0 = SWI號,R1指向參數(shù)存儲位置
        CMP     R0, #1
        LDRLO   PC, =OSIntCtxSw
        LDREQ   PC, =__OSStartHighRdy   ;// SWI 0x01為第一次任務切換

        BL      SWI_Exception
        
        LDMFD   SP!, {R0-R3, R12, PC}^
        
StackSvc           DCD     (SvcStackSpace + SVC_STACK_LEGTH * 4 - 4)

;/*********************************************************************************************************
;* 函數(shù)名稱: OSIntCtxSw
;* 功能描述: 中斷退出時的入口
;* 輸   入: R3    :當前任務的狀態(tài)寄存器CPSR(即SPSR的值)
;*           R4-R12:當前任務的R4-R11
;*           當前處理器模式的堆棧結構(出棧次序):R0-R3、R12、PC(當前任務的)
;* 輸  出 : 無
;* 全局變量: OSPrioCur,OSPrioHighRdy,OSPrioCur,OSPrioHighRdy
;* 調(diào)用模塊: 無
;********************************************************************************************************/
OSIntCtxSw
                                                    ;// 下面為保存任務環(huán)境
        LDR     R2, [SP, #20]                       ;// 獲取PC
        LDR     R12, [SP, #16]                      ;// 獲取R12
        MRS     R0, CPSR

        MSR     CPSR_c, #(NoInt | SYS32Mode)
        MOV     R1, LR
        STMFD   SP!, {R1-R2}                        ;// 保存LR,PC
        STMFD   SP!, {R4-R12}                       ;// 保存R4-R12

        MSR     CPSR_c, R0
        LDMFD   SP!, {R4-R7}                        ;// 獲取R0-R3
        ADD     SP, SP, #8                          ;// 出棧R12,PC
        
        MSR     CPSR_c, #(NoInt | SYS32Mode)
        STMFD   SP!, {R4-R7}                        ;// 保存R0-R3
        
        LDR     R1, =OsEnterSum                     ;// 獲取OsEnterSum
        LDR     R2, [R1]
        STMFD   SP!, {R2, R3}                       ;// 保存CPSR,OsEnterSum

                                                    ;// 保存當前任務堆棧指針到當前任務的TCB
        LDR     R1, =OSTCBCur
        LDR     R1, [R1]
        STR     SP, [R1]

        BL      OSTaskSwHook                        ;// 調(diào)用鉤子函數(shù)
                                                    ;// OSPrioCur <= OSPrioHighRdy
        LDR     R4, =OSPrioCur
        LDR     R5, =OSPrioHighRdy
        LDRB    R6, [R5]
        STRB    R6, [R4]
                                                    ;// OSTCBCur <= OSTCBHighRdy
        LDR     R6, =OSTCBHighRdy
        LDR     R6, [R6]
        LDR     R4, =OSTCBCur
        STR     R6, [R4]
OSIntCtxSw_1
                                                    ;// 獲取新任務堆棧指針
        LDR     R4, [R6]
        ADD     SP, R4, #68                         ;// 17寄存器CPSR,OsEnterSum,R0-R12,LR,SP
        LDR     LR, [SP, #-8]
        MSR     CPSR_c, #(NoInt | SVC32Mode)        ;// 進入管理模式
        MOV     SP, R4                              ;// 設置堆棧指針

        LDMFD   SP!, {R4, R5}                       ;// CPSR,OsEnterSum
                                                    ;// 恢復新任務的OsEnterSum
        LDR     R3, =OsEnterSum
        STR     R4, [R3]
    
        MSR     SPSR_cxsf, R5                       ;// 恢復CPSR
        LDMFD   SP!, {R0-R12, LR, PC }^             ;// 運行新任務

;/*********************************************************************************************************
;* 函數(shù)名稱: __OSStartHighRdy
;* 功能描述: uC/OS-II啟動時使用OSStartHighRdy運行第一個任務,
;*           OSStartHighRdy會調(diào)用__OSStartHighRdy
;* 輸   入: 無
;* 輸   出:無
;* 全局變量: OSRunning,OSTCBCur,OSTCBHighRdy,OsEnterSum
;* 調(diào)用模塊: OSTaskSwHook
;********************************************************************************************************/

__OSStartHighRdy
        MSR     CPSR_c, #(NoInt | SYS32Mode)
                                                ;// 告訴uC/OS-II自身已經(jīng)運行
        LDR     R4, =OSRunning
        MOV     R5, #1
        STRB    R5, [R4]

        BL      OSTaskSwHook                    ;// 調(diào)用鉤子函數(shù)

        LDR     R6, =OSTCBHighRdy
        LDR     R6, [R6]
        B       OSIntCtxSw_1

        AREA    SWIStacks, DATA, NOINIT,ALIGN=2
SvcStackSpace      SPACE   SVC_STACK_LEGTH * 4  ;// 管理模式堆??臻g

    END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩亚洲综合在线| 麻豆91免费观看| 国产区在线观看成人精品| 91精选在线观看| 欧美一区二区视频观看视频| 88在线观看91蜜桃国自产| 在线不卡的av| 欧美日韩1区2区| 日韩一区二区三区视频在线| 欧美videossexotv100| 精品少妇一区二区三区| 久久久久久久久久美女| 国产欧美视频在线观看| 欧美国产成人精品| 亚洲欧美在线aaa| 五月激情六月综合| 日日嗨av一区二区三区四区| 国内精品视频666| 国产精品一区三区| 国产宾馆实践打屁股91| 91啪亚洲精品| 在线观看欧美日本| 欧美乱妇23p| 国产午夜亚洲精品不卡| 亚洲乱码国产乱码精品精的特点| 日欧美一区二区| 国产精品99久久久久久久女警| 成人av中文字幕| 欧美一级片在线观看| 中文字幕va一区二区三区| 亚洲成a人v欧美综合天堂下载| 五月婷婷久久综合| 懂色av一区二区三区免费观看 | 亚洲精品国产无天堂网2021| 日本一不卡视频| 成人永久看片免费视频天堂| 欧美日本免费一区二区三区| 欧美刺激午夜性久久久久久久| 精品久久一区二区| 亚洲午夜久久久久久久久电影网| 久久av老司机精品网站导航| 色综合视频在线观看| 26uuu久久综合| 五月婷婷另类国产| 色综合天天在线| 久久久久久黄色| 日本中文字幕一区二区有限公司| 91免费视频大全| 国产欧美一区二区三区鸳鸯浴| 五月天精品一区二区三区| 91在线观看美女| 国产亚洲综合av| 免费成人小视频| 欧美日韩美少妇| 最新国产成人在线观看| 国产高清在线精品| 欧美一区二区在线观看| 亚洲永久免费视频| 一本高清dvd不卡在线观看| 中文在线一区二区| 国模一区二区三区白浆| 欧美一级欧美一级在线播放| 一区二区不卡在线播放| 91麻豆国产自产在线观看| 国产清纯在线一区二区www| 国产一区二区三区黄视频| 欧美成人猛片aaaaaaa| 午夜视频久久久久久| 在线观看91视频| 一区二区三区毛片| 欧美丝袜丝交足nylons| 亚洲午夜精品久久久久久久久| 91浏览器打开| 一区二区三区精密机械公司| 色综合久久久网| 一区二区三区成人在线视频 | 日本成人在线视频网站| 91精品国产综合久久香蕉麻豆| 亚洲午夜久久久久久久久电影网 | 91精品国产福利| 蜜桃视频在线一区| 欧美精品一区二区三区久久久| 国内成人免费视频| 国产亚洲一区二区三区| 成人av电影在线网| 亚洲精品视频在线| 欧美高清视频不卡网| 久久99精品国产麻豆婷婷| 国产三级久久久| 91欧美一区二区| 日韩av在线播放中文字幕| 亚洲精品在线观看网站| 国产成人免费视频| 亚洲激情图片qvod| 日韩欧美电影一区| caoporm超碰国产精品| 一区二区三区在线高清| 欧美美女一区二区| 国产精品综合视频| 洋洋av久久久久久久一区| 欧美一级高清大全免费观看| 国产老妇另类xxxxx| 亚洲天堂久久久久久久| 欧美三级午夜理伦三级中视频| 天天av天天翘天天综合网 | 国产综合色在线视频区| ㊣最新国产の精品bt伙计久久| 在线亚洲高清视频| 久久狠狠亚洲综合| 一区在线观看视频| 欧美电视剧免费观看| av亚洲精华国产精华| 日日摸夜夜添夜夜添国产精品 | 亚洲精品国产一区二区三区四区在线| 在线精品视频小说1| 久久精品国产99国产精品| 亚洲图片另类小说| 久久一区二区视频| 在线免费观看一区| 韩国女主播一区二区三区| 伊人夜夜躁av伊人久久| 日韩欧美国产高清| 色视频成人在线观看免| 国产麻豆日韩欧美久久| 日本不卡一二三| 一区二区三区四区在线免费观看 | 国产激情一区二区三区| 一区二区三区在线播| 中文字幕av在线一区二区三区| 欧美精品在线一区二区三区| 一本色道久久加勒比精品| 高清不卡一区二区在线| 美女视频黄久久| 舔着乳尖日韩一区| 午夜伊人狠狠久久| 亚洲综合免费观看高清完整版在线| 日本一区二区综合亚洲| www激情久久| 2023国产一二三区日本精品2022| 日韩午夜三级在线| 欧美午夜一区二区三区| 在线一区二区视频| 97se亚洲国产综合自在线| 成人美女视频在线看| 处破女av一区二区| av在线不卡电影| av毛片久久久久**hd| www.亚洲国产| 欧美在线视频日韩| 色婷婷激情一区二区三区| 一本色道a无线码一区v| 在线亚洲一区二区| 欧美肥妇毛茸茸| 欧美大片在线观看一区二区| 日韩免费电影一区| 久久综合给合久久狠狠狠97色69| 久久女同互慰一区二区三区| 久久精品视频免费| 国产精品初高中害羞小美女文| 中文字幕亚洲欧美在线不卡| 成人欧美一区二区三区小说| 一二三四社区欧美黄| 三级不卡在线观看| 黄色小说综合网站| www.欧美亚洲| 欧美日本一区二区在线观看| 日韩一区二区三区精品视频| 久久久精品黄色| 中文字幕中文字幕一区| 亚洲综合久久av| 久久99精品久久久久久国产越南 | 5566中文字幕一区二区电影 | 91视频在线看| 欧美三级资源在线| 精品少妇一区二区三区在线播放 | 自拍偷拍欧美精品| 亚洲6080在线| 九色综合狠狠综合久久| av电影天堂一区二区在线观看| 91成人看片片| 久久麻豆一区二区| 亚洲国产成人tv| 国产成人精品亚洲777人妖 | 久久久午夜电影| 蜜臀av性久久久久av蜜臀妖精| 国产精品综合二区| 欧美三电影在线| 欧美激情中文不卡| 日产精品久久久久久久性色| 成人午夜电影小说| 欧美一区二区成人6969| 国产精品第一页第二页第三页| 青青青爽久久午夜综合久久午夜| 成人h动漫精品| 精品久久久久久久久久久久久久久久久| 欧美激情一区三区| 久久精品噜噜噜成人88aⅴ | 欧美大片在线观看一区二区| 亚洲欧洲无码一区二区三区| 奇米色一区二区三区四区|