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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? os_task.txt

?? ucos2.86版本結(jié)合STM板極支持包
?? TXT
?? 第 1 頁 / 共 5 頁
字號:
00045a  e92de92d          PUSH     {r4-r8,lr}
00045e  4605              MOV      r5,r0
000460  460e              MOV      r6,r1
000462  4614              MOV      r4,r2
;;;612        OS_TCB    *ptcb;
;;;613        INT8U      len;
;;;614    #if OS_CRITICAL_METHOD == 3                              /* Allocate storage for CPU status register   */
;;;615        OS_CPU_SR  cpu_sr = 0;
;;;616    #endif
;;;617    
;;;618    
;;;619    
;;;620    #if OS_ARG_CHK_EN > 0
;;;621        if (perr == (INT8U *)0) {                            /* Validate 'perr'                            */
000464  b914              CBNZ     r4,|L1.1132|
;;;622            return (0);
000466  2000              MOVS     r0,#0
000468  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1132|
;;;623        }
;;;624        if (prio > OS_LOWEST_PRIO) {                         /* Task priority valid ?                      */
00046c  2d1f              CMP      r5,#0x1f
00046e  d906              BLS      |L1.1150|
;;;625            if (prio != OS_PRIO_SELF) {
000470  2dff              CMP      r5,#0xff
000472  d004              BEQ      |L1.1150|
;;;626                *perr = OS_ERR_PRIO_INVALID;                 /* No                                         */
000474  202a              MOVS     r0,#0x2a
000476  7020              STRB     r0,[r4,#0]
;;;627                return (0);
000478  2000              MOVS     r0,#0
00047a  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1150|
;;;628            }
;;;629        }
;;;630        if (pname == (INT8U *)0) {                           /* Is 'pname' a NULL pointer?                 */
00047e  b926              CBNZ     r6,|L1.1162|
;;;631            *perr = OS_ERR_PNAME_NULL;                       /* Yes                                        */
000480  200c              MOVS     r0,#0xc
000482  7020              STRB     r0,[r4,#0]
;;;632            return (0);
000484  2000              MOVS     r0,#0
000486  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1162|
;;;633        }
;;;634    #endif
;;;635        if (OSIntNesting > 0) {                              /* See if trying to call from an ISR          */
00048a  48ca              LDR      r0,|L1.1972|
00048c  7800              LDRB     r0,[r0,#0]  ; OSIntNesting
00048e  b120              CBZ      r0,|L1.1178|
;;;636            *perr = OS_ERR_NAME_GET_ISR;
000490  2011              MOVS     r0,#0x11
000492  7020              STRB     r0,[r4,#0]
;;;637            return (0);
000494  2000              MOVS     r0,#0
000496  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1178|
;;;638        }
;;;639        OS_ENTER_CRITICAL();
00049a  f7fff7ff          BL       OS_CPU_SR_Save
00049e  4607              MOV      r7,r0
;;;640        if (prio == OS_PRIO_SELF) {                          /* See if caller desires it's own name        */
0004a0  2dff              CMP      r5,#0xff
0004a2  d103              BNE      |L1.1196|
;;;641            prio = OSTCBCur->OSTCBPrio;
0004a4  48c4              LDR      r0,|L1.1976|
0004a6  6800              LDR      r0,[r0,#0]  ; OSTCBCur
0004a8  f890f890          LDRB     r5,[r0,#0x2e]
                  |L1.1196|
;;;642        }
;;;643        ptcb = OSTCBPrioTbl[prio];
0004ac  48c3              LDR      r0,|L1.1980|
0004ae  f850f850          LDR      r0,[r0,r5,LSL #2]
;;;644        if (ptcb == (OS_TCB *)0) {                           /* Does task exist?                           */
0004b2  2543              MOVS     r5,#0x43
0004b4  b930              CBNZ     r0,|L1.1220|
;;;645            OS_EXIT_CRITICAL();                              /* No                                         */
0004b6  4638              MOV      r0,r7
0004b8  f7fff7ff          BL       OS_CPU_SR_Restore
;;;646            *perr = OS_ERR_TASK_NOT_EXIST;
0004bc  7025              STRB     r5,[r4,#0]
;;;647            return (0);
0004be  2000              MOVS     r0,#0
0004c0  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1220|
;;;648        }
;;;649        if (ptcb == OS_TCB_RESERVED) {                       /* Task assigned to a Mutex?                  */
0004c4  2801              CMP      r0,#1
0004c6  d106              BNE      |L1.1238|
;;;650            OS_EXIT_CRITICAL();                              /* Yes                                        */
0004c8  4638              MOV      r0,r7
0004ca  f7fff7ff          BL       OS_CPU_SR_Restore
;;;651            *perr = OS_ERR_TASK_NOT_EXIST;
0004ce  7025              STRB     r5,[r4,#0]
;;;652            return (0);
0004d0  2000              MOVS     r0,#0
0004d2  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1238|
;;;653        }
;;;654        len   = OS_StrCopy(pname, ptcb->OSTCBTaskName);      /* Yes, copy name from TCB                    */
0004d6  f100f100          ADD      r1,r0,#0x48
0004da  4630              MOV      r0,r6
0004dc  f7fff7ff          BL       OS_StrCopy
0004e0  4605              MOV      r5,r0
;;;655        OS_EXIT_CRITICAL();
0004e2  4638              MOV      r0,r7
0004e4  f7fff7ff          BL       OS_CPU_SR_Restore
;;;656        *perr = OS_ERR_NONE;
0004e8  2000              MOVS     r0,#0
0004ea  7020              STRB     r0,[r4,#0]
;;;657        return (len);
0004ec  4628              MOV      r0,r5
;;;658    }
0004ee  e8bde8bd          POP      {r4-r8,pc}
;;;659    #endif
                          ENDP

                  OSTaskNameSet PROC
;;;689    void  OSTaskNameSet (INT8U prio, INT8U *pname, INT8U *perr)
;;;690    {
0004f2  e92de92d          PUSH     {r4-r8,lr}
0004f6  4605              MOV      r5,r0
0004f8  460e              MOV      r6,r1
0004fa  4614              MOV      r4,r2
;;;691        INT8U      len;
;;;692        OS_TCB    *ptcb;
;;;693    #if OS_CRITICAL_METHOD == 3                          /* Allocate storage for CPU status register       */
;;;694        OS_CPU_SR  cpu_sr = 0;
;;;695    #endif
;;;696    
;;;697    
;;;698    
;;;699    #if OS_ARG_CHK_EN > 0
;;;700        if (perr == (INT8U *)0) {                        /* Validate 'perr'                                */
0004fc  2c00              CMP      r4,#0
0004fe  d005              BEQ      |L1.1292|
;;;701            return;
;;;702        }
;;;703        if (prio > OS_LOWEST_PRIO) {                     /* Task priority valid ?                          */
000500  2d1f              CMP      r5,#0x1f
000502  d905              BLS      |L1.1296|
;;;704            if (prio != OS_PRIO_SELF) {
000504  2dff              CMP      r5,#0xff
000506  d003              BEQ      |L1.1296|
;;;705                *perr = OS_ERR_PRIO_INVALID;             /* No                                             */
000508  202a              MOVS     r0,#0x2a
00050a  7020              STRB     r0,[r4,#0]
                  |L1.1292|
00050c  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1296|
;;;706                return;
;;;707            }
;;;708        }
;;;709        if (pname == (INT8U *)0) {                       /* Is 'pname' a NULL pointer?                     */
000510  b91e              CBNZ     r6,|L1.1306|
;;;710            *perr = OS_ERR_PNAME_NULL;                   /* Yes                                            */
000512  200c              MOVS     r0,#0xc
000514  7020              STRB     r0,[r4,#0]
000516  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1306|
;;;711            return;
;;;712        }
;;;713    #endif
;;;714        if (OSIntNesting > 0) {                          /* See if trying to call from an ISR              */
00051a  48a6              LDR      r0,|L1.1972|
00051c  7800              LDRB     r0,[r0,#0]  ; OSIntNesting
00051e  b118              CBZ      r0,|L1.1320|
;;;715            *perr = OS_ERR_NAME_SET_ISR;
000520  2012              MOVS     r0,#0x12
000522  7020              STRB     r0,[r4,#0]
000524  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1320|
;;;716            return;
;;;717        }
;;;718        OS_ENTER_CRITICAL();
000528  f7fff7ff          BL       OS_CPU_SR_Save
00052c  4607              MOV      r7,r0
;;;719        if (prio == OS_PRIO_SELF) {                      /* See if caller desires to set it's own name     */
00052e  2dff              CMP      r5,#0xff
000530  d103              BNE      |L1.1338|
;;;720            prio = OSTCBCur->OSTCBPrio;
000532  48a1              LDR      r0,|L1.1976|
000534  6800              LDR      r0,[r0,#0]  ; OSTCBCur
000536  f890f890          LDRB     r5,[r0,#0x2e]
                  |L1.1338|
;;;721        }
;;;722        ptcb = OSTCBPrioTbl[prio];
00053a  48a0              LDR      r0,|L1.1980|
00053c  f850f850          LDR      r5,[r0,r5,LSL #2]
;;;723        if (ptcb == (OS_TCB *)0) {                       /* Does task exist?                               */
000540  f04ff04f          MOV      r8,#0x43
000544  b935              CBNZ     r5,|L1.1364|
;;;724            OS_EXIT_CRITICAL();                          /* No                                             */
000546  4638              MOV      r0,r7
000548  f7fff7ff          BL       OS_CPU_SR_Restore
;;;725            *perr = OS_ERR_TASK_NOT_EXIST;
00054c  f884f884          STRB     r8,[r4,#0]
000550  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1364|
;;;726            return;
;;;727        }
;;;728        if (ptcb == OS_TCB_RESERVED) {                   /* Task assigned to a Mutex?                      */
000554  2d01              CMP      r5,#1
000556  d106              BNE      |L1.1382|
;;;729            OS_EXIT_CRITICAL();                          /* Yes                                            */
000558  4638              MOV      r0,r7
00055a  f7fff7ff          BL       OS_CPU_SR_Restore
;;;730            *perr = OS_ERR_TASK_NOT_EXIST;
00055e  f884f884          STRB     r8,[r4,#0]
000562  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1382|
;;;731            return;
;;;732        }
;;;733        len = OS_StrLen(pname);                          /* Yes, Can we fit the string in the TCB?         */
000566  4630              MOV      r0,r6
000568  f7fff7ff          BL       OS_StrLen
;;;734        if (len > (OS_TASK_NAME_SIZE - 1)) {             /*      No                                        */
00056c  280f              CMP      r0,#0xf
00056e  d906              BLS      |L1.1406|
;;;735            OS_EXIT_CRITICAL();
000570  4638              MOV      r0,r7
000572  f7fff7ff          BL       OS_CPU_SR_Restore
;;;736            *perr = OS_ERR_TASK_NAME_TOO_LONG;
000576  2041              MOVS     r0,#0x41
000578  7020              STRB     r0,[r4,#0]
00057a  e8bde8bd          POP      {r4-r8,pc}
                  |L1.1406|
;;;737            return;
;;;738        }
;;;739        (void)OS_StrCopy(ptcb->OSTCBTaskName, pname);    /*      Yes, copy to TCB                          */
00057e  4631              MOV      r1,r6
000580  f105f105          ADD      r0,r5,#0x48
000584  f7fff7ff          BL       OS_StrCopy
;;;740        OS_EXIT_CRITICAL();
000588  4638              MOV      r0,r7
00058a  f7fff7ff          BL       OS_CPU_SR_Restore
;;;741        *perr = OS_ERR_NONE;
00058e  2000              MOVS     r0,#0
000590  7020              STRB     r0,[r4,#0]
;;;742    }
000592  e8bde8bd          POP      {r4-r8,pc}
;;;743    #endif
                          ENDP

                  OSTaskResume PROC
;;;765    INT8U  OSTaskResume (INT8U prio)
;;;766    {
000596  b510              PUSH     {r4,lr}
000598  4604              MOV      r4,r0
;;;767        OS_TCB    *ptcb;
;;;768    #if OS_CRITICAL_METHOD == 3                                   /* Storage for CPU status register       */
;;;769        OS_CPU_SR  cpu_sr = 0;
;;;770    #endif
;;;771    
;;;772    
;;;773    
;;;774    #if OS_ARG_CHK_EN > 0
;;;775        if (prio >= OS_LOWEST_PRIO) {                             /* Make sure task priority is valid      */
00059a  2c1f              CMP      r4,#0x1f
00059c  d301              BCC      |L1.1442|
;;;776            return (OS_ERR_PRIO_INVALID);
00059e  202a              MOVS     r0,#0x2a
;;;777        }
;;;778    #endif
;;;779        OS_ENTER_CRITICAL();
;;;780        ptcb = OSTCBPrioTbl[prio];
;;;781        if (ptcb == (OS_TCB *)0) {                                /* Task to suspend must exist            */
;;;782            OS_EXIT_CRITICAL();
;;;783            return (OS_ERR_TASK_RESUME_PRIO);
;;;784        }
;;;785        if (ptcb == OS_TCB_RESERVED) {                            /* See if assigned to Mutex              */
;;;786            OS_EXIT_CRITICAL();
;;;787            return (OS_ERR_TASK_NOT_EXIST);
;;;788        }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
东方aⅴ免费观看久久av| 欧美aⅴ一区二区三区视频| 成人理论电影网| 成人欧美一区二区三区白人| av电影天堂一区二区在线| 亚洲人成人一区二区在线观看| 91在线看国产| 偷拍一区二区三区四区| 日韩三级视频中文字幕| 国产成人精品www牛牛影视| 国产精品久久毛片a| 91黄色免费版| 日本成人在线不卡视频| 久久久久久免费网| aaa欧美大片| 日本aⅴ免费视频一区二区三区| 久久久久久久综合日本| 色婷婷亚洲综合| 麻豆国产一区二区| 亚洲日本在线观看| 日韩一区二区免费视频| av在线播放一区二区三区| 天天爽夜夜爽夜夜爽精品视频| 国产亚洲综合色| 欧美亚一区二区| 成人午夜精品一区二区三区| 午夜久久久久久电影| 久久九九99视频| 欧美无人高清视频在线观看| 国产一区三区三区| 亚洲一区二区成人在线观看| 久久亚洲综合av| 欧美性猛片aaaaaaa做受| 国产一本一道久久香蕉| 亚洲第一成人在线| 国产嫩草影院久久久久| 欧美一区二区久久久| 91麻豆自制传媒国产之光| 黄色资源网久久资源365| 亚洲美女视频在线| 国产欧美精品一区| 日韩精品在线看片z| 99re66热这里只有精品3直播| 奇米色777欧美一区二区| 亚洲欧洲av一区二区三区久久| 欧美成人综合网站| 欧美图区在线视频| av成人动漫在线观看| 激情丁香综合五月| 日本vs亚洲vs韩国一区三区二区| 亚洲色图视频网| 国产清纯在线一区二区www| 这里只有精品99re| 91久久久免费一区二区| 成人免费毛片高清视频| 国产精品一区在线观看乱码| 七七婷婷婷婷精品国产| 亚洲成人免费在线| 亚洲激情欧美激情| 亚洲欧洲日产国产综合网| 国产欧美日产一区| 国产欧美精品一区| 亚洲国产激情av| 久久这里只有精品视频网| 欧美一级二级三级乱码| 欧美高清视频在线高清观看mv色露露十八 | 自拍偷在线精品自拍偷无码专区| 精品国产成人系列| 欧美一区二区在线视频| 在线播放亚洲一区| 欧美乱熟臀69xxxxxx| 欧美在线影院一区二区| 欧美日韩在线观看一区二区| 欧美综合亚洲图片综合区| 欧美中文字幕一二三区视频| 91激情五月电影| 欧美日韩一二三区| 91精品国产一区二区三区| 日韩亚洲欧美成人一区| 日韩免费高清视频| 国产色91在线| 国产精品免费视频一区| 综合亚洲深深色噜噜狠狠网站| 中文字幕欧美一| 一区二区欧美在线观看| 五月婷婷欧美视频| 蜜桃av一区二区三区| 久久91精品国产91久久小草| 国产成a人亚洲精品| 99re这里都是精品| 精品视频在线免费观看| 91精品一区二区三区久久久久久| 日韩欧美亚洲另类制服综合在线| 精品国产乱码久久久久久1区2区| 国产女主播在线一区二区| 亚洲视频在线一区观看| 性久久久久久久久久久久| 日韩精品成人一区二区三区| 激情综合色播五月| 99久久综合狠狠综合久久| 日本精品一级二级| 日韩一区二区三区视频在线| 国产欧美日韩在线| 亚洲成a天堂v人片| 国产在线精品不卡| 91丨porny丨国产入口| 欧美一区二区三区视频| 国产亚洲精品中文字幕| 一区二区三区中文字幕在线观看| 日韩高清不卡一区二区三区| 国产精品1区二区.| 99re这里只有精品6| 日韩欧美黄色影院| 中文字幕一区二区三区视频| 偷窥国产亚洲免费视频| 国产精品一卡二卡在线观看| 日本精品视频一区二区三区| 精品久久久久久无| 亚洲美女屁股眼交| 国产老女人精品毛片久久| 日本道在线观看一区二区| 欧美精品一区二区久久婷婷| 亚洲欧美日韩一区二区三区在线观看| 麻豆免费看一区二区三区| 色88888久久久久久影院野外| 精品人在线二区三区| 亚洲制服丝袜一区| 成人国产一区二区三区精品| 91麻豆精品国产91久久久更新时间| 国产免费久久精品| 麻豆精品久久久| 欧美日韩一区二区欧美激情| 国产性做久久久久久| 日本aⅴ亚洲精品中文乱码| 色天天综合色天天久久| 国产香蕉久久精品综合网| 亚洲国产综合人成综合网站| av网站免费线看精品| 精品福利一二区| 免费观看成人鲁鲁鲁鲁鲁视频| 91看片淫黄大片一级在线观看| 久久免费偷拍视频| 蜜臀av在线播放一区二区三区| 色狠狠av一区二区三区| 一区视频在线播放| 福利91精品一区二区三区| 欧美电影免费观看高清完整版在| 亚洲 欧美综合在线网络| 色综合久久久久网| 亚洲视频 欧洲视频| k8久久久一区二区三区| 中文字幕免费不卡| 国产激情视频一区二区三区欧美 | 亚洲国产另类av| 色综合亚洲欧洲| 亚洲三级免费电影| 91在线国内视频| 综合久久久久久| 91亚洲大成网污www| 亚洲天堂免费在线观看视频| 国产成人av一区| 国产喷白浆一区二区三区| 国产大片一区二区| 国产精品五月天| 成人白浆超碰人人人人| 欧美极品美女视频| 不卡电影免费在线播放一区| 国产精品久久久久久久蜜臀| 成人午夜电影久久影院| 中文成人av在线| 91污片在线观看| 亚洲一区二区三区爽爽爽爽爽 | 日本不卡视频在线观看| 91麻豆精品国产91久久久久久久久| 亚洲1区2区3区4区| 日韩久久久久久| 国产成人在线观看免费网站| 中文字幕电影一区| 色综合婷婷久久| 五月天久久比比资源色| 欧美疯狂做受xxxx富婆| 激情综合色综合久久| 中文字幕免费一区| 在线观看精品一区| 日本v片在线高清不卡在线观看| 精品av综合导航| 处破女av一区二区| 一区二区高清视频在线观看| 欧美精品亚洲一区二区在线播放| 蜜桃精品视频在线| 国产精品毛片高清在线完整版| 欧美亚洲一区二区三区四区| 日本亚洲一区二区| 欧美国产日韩一二三区| 在线亚洲精品福利网址导航| 免费久久99精品国产| 国产精品美女久久久久久2018 | 9i在线看片成人免费| 亚洲国产精品久久久男人的天堂| 日韩精品影音先锋|