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

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

?? os_sem.txt

?? ucos2.86版本結(jié)合STM板極支持包
?? TXT
?? 第 1 頁 / 共 3 頁
字號:
;;;418                     nbr_tasks++;
00027e  2401              MOVS     r4,#1
                  |L1.640|
;;;419                     break;
;;;420            }
;;;421            OS_EXIT_CRITICAL();
000280  4638              MOV      r0,r7
000282  f7fff7ff          BL       OS_CPU_SR_Restore
;;;422            OS_Sched();                                   /* Find HPT ready to run                         */
000286  f7fff7ff          BL       OS_Sched
;;;423            *perr = OS_ERR_PEND_ABORT;
00028a  200e              MOVS     r0,#0xe
00028c  7030              STRB     r0,[r6,#0]
;;;424            return (nbr_tasks);
00028e  4620              MOV      r0,r4
000290  e8bde8bd          POP      {r4-r8,pc}
                  |L1.660|
;;;425        }
;;;426        OS_EXIT_CRITICAL();
000294  4638              MOV      r0,r7
000296  f7fff7ff          BL       OS_CPU_SR_Restore
;;;427        *perr = OS_ERR_NONE;
00029a  2000              MOVS     r0,#0
00029c  7030              STRB     r0,[r6,#0]
;;;428        return (0);                                       /* No tasks waiting on semaphore                 */
;;;429    }
00029e  e8bde8bd          POP      {r4-r8,pc}
;;;430    #endif
                          ENDP

                  OSSemPost PROC
;;;451    INT8U  OSSemPost (OS_EVENT *pevent)
;;;452    {
0002a2  b570              PUSH     {r4-r6,lr}
0002a4  4604              MOV      r4,r0
;;;453    #if OS_CRITICAL_METHOD == 3                           /* Allocate storage for CPU status register      */
;;;454        OS_CPU_SR  cpu_sr = 0;
;;;455    #endif
;;;456    
;;;457    
;;;458    
;;;459    #if OS_ARG_CHK_EN > 0
;;;460        if (pevent == (OS_EVENT *)0) {                    /* Validate 'pevent'                             */
0002a6  b90c              CBNZ     r4,|L1.684|
;;;461            return (OS_ERR_PEVENT_NULL);
0002a8  2004              MOVS     r0,#4
;;;462        }
;;;463    #endif
;;;464        if (pevent->OSEventType != OS_EVENT_TYPE_SEM) {   /* Validate event block type                     */
;;;465            return (OS_ERR_EVENT_TYPE);
;;;466        }
;;;467        OS_ENTER_CRITICAL();
;;;468        if (pevent->OSEventGrp != 0) {                    /* See if any task waiting for semaphore         */
;;;469                                                          /* Ready HPT waiting on event                    */
;;;470            (void)OS_EventTaskRdy(pevent, (void *)0, OS_STAT_SEM, OS_STAT_PEND_OK);
;;;471            OS_EXIT_CRITICAL();
;;;472            OS_Sched();                                   /* Find HPT ready to run                         */
;;;473            return (OS_ERR_NONE);
;;;474        }
;;;475        if (pevent->OSEventCnt < 65535u) {                /* Make sure semaphore will not overflow         */
;;;476            pevent->OSEventCnt++;                         /* Increment semaphore count to register event   */
;;;477            OS_EXIT_CRITICAL();
;;;478            return (OS_ERR_NONE);
;;;479        }
;;;480        OS_EXIT_CRITICAL();                               /* Semaphore value has reached its maximum       */
;;;481        return (OS_ERR_SEM_OVF);
;;;482    }
0002aa  bd70              POP      {r4-r6,pc}
                  |L1.684|
0002ac  7820              LDRB     r0,[r4,#0]
0002ae  2803              CMP      r0,#3
0002b0  d001              BEQ      |L1.694|
0002b2  2001              MOVS     r0,#1
0002b4  bd70              POP      {r4-r6,pc}
                  |L1.694|
0002b6  f7fff7ff          BL       OS_CPU_SR_Save
0002ba  4605              MOV      r5,r0
0002bc  7aa0              LDRB     r0,[r4,#0xa]
0002be  b160              CBZ      r0,|L1.730|
0002c0  2300              MOVS     r3,#0
0002c2  2201              MOVS     r2,#1
0002c4  4619              MOV      r1,r3
0002c6  4620              MOV      r0,r4
0002c8  f7fff7ff          BL       OS_EventTaskRdy
0002cc  4628              MOV      r0,r5
0002ce  f7fff7ff          BL       OS_CPU_SR_Restore
0002d2  f7fff7ff          BL       OS_Sched
0002d6  2000              MOVS     r0,#0
0002d8  bd70              POP      {r4-r6,pc}
                  |L1.730|
0002da  8920              LDRH     r0,[r4,#8]
0002dc  f64ff64f          MOV      r1,#0xffff
0002e0  4288              CMP      r0,r1
0002e2  d206              BCS      |L1.754|
0002e4  1c40              ADDS     r0,r0,#1
0002e6  8120              STRH     r0,[r4,#8]
0002e8  4628              MOV      r0,r5
0002ea  f7fff7ff          BL       OS_CPU_SR_Restore
0002ee  2000              MOVS     r0,#0
0002f0  bd70              POP      {r4-r6,pc}
                  |L1.754|
0002f2  4628              MOV      r0,r5
0002f4  f7fff7ff          BL       OS_CPU_SR_Restore
0002f8  2032              MOVS     r0,#0x32
0002fa  bd70              POP      {r4-r6,pc}
;;;483    
                          ENDP

                  OSSemQuery PROC
;;;505    INT8U  OSSemQuery (OS_EVENT *pevent, OS_SEM_DATA *p_sem_data)
;;;506    {
0002fc  b570              PUSH     {r4-r6,lr}
0002fe  4604              MOV      r4,r0
000300  460d              MOV      r5,r1
;;;507    #if OS_LOWEST_PRIO <= 63
;;;508        INT8U     *psrc;
;;;509        INT8U     *pdest;
;;;510    #else
;;;511        INT16U    *psrc;
;;;512        INT16U    *pdest;
;;;513    #endif
;;;514        INT8U      i;
;;;515    #if OS_CRITICAL_METHOD == 3                                /* Allocate storage for CPU status register */
;;;516        OS_CPU_SR  cpu_sr = 0;
;;;517    #endif
;;;518    
;;;519    
;;;520    
;;;521    #if OS_ARG_CHK_EN > 0
;;;522        if (pevent == (OS_EVENT *)0) {                         /* Validate 'pevent'                        */
000302  b90c              CBNZ     r4,|L1.776|
;;;523            return (OS_ERR_PEVENT_NULL);
000304  2004              MOVS     r0,#4
;;;524        }
;;;525        if (p_sem_data == (OS_SEM_DATA *)0) {                  /* Validate 'p_sem_data'                    */
;;;526            return (OS_ERR_PDATA_NULL);
;;;527        }
;;;528    #endif
;;;529        if (pevent->OSEventType != OS_EVENT_TYPE_SEM) {        /* Validate event block type                */
;;;530            return (OS_ERR_EVENT_TYPE);
;;;531        }
;;;532        OS_ENTER_CRITICAL();
;;;533        p_sem_data->OSEventGrp = pevent->OSEventGrp;           /* Copy message mailbox wait list           */
;;;534        psrc                   = &pevent->OSEventTbl[0];
;;;535        pdest                  = &p_sem_data->OSEventTbl[0];
;;;536        for (i = 0; i < OS_EVENT_TBL_SIZE; i++) {
;;;537            *pdest++ = *psrc++;
;;;538        }
;;;539        p_sem_data->OSCnt = pevent->OSEventCnt;                /* Get semaphore count                      */
;;;540        OS_EXIT_CRITICAL();
;;;541        return (OS_ERR_NONE);
;;;542    }
000306  bd70              POP      {r4-r6,pc}
                  |L1.776|
000308  b90d              CBNZ     r5,|L1.782|
00030a  2009              MOVS     r0,#9
00030c  bd70              POP      {r4-r6,pc}
                  |L1.782|
00030e  7820              LDRB     r0,[r4,#0]
000310  2803              CMP      r0,#3
000312  d001              BEQ      |L1.792|
000314  2001              MOVS     r0,#1
000316  bd70              POP      {r4-r6,pc}
                  |L1.792|
000318  f7fff7ff          BL       OS_CPU_SR_Save
00031c  7aa1              LDRB     r1,[r4,#0xa]
00031e  71a9              STRB     r1,[r5,#6]
000320  f104f104          ADD      r1,r4,#0xb
000324  1caa              ADDS     r2,r5,#2
000326  2300              MOVS     r3,#0
                  |L1.808|
000328  f811f811          LDRB     r12,[r1],#1
00032c  f802f802          STRB     r12,[r2],#1
000330  1c5b              ADDS     r3,r3,#1
000332  b2db              UXTB     r3,r3
000334  2b04              CMP      r3,#4
000336  d3f7              BCC      |L1.808|
000338  8921              LDRH     r1,[r4,#8]
00033a  8029              STRH     r1,[r5,#0]
00033c  f7fff7ff          BL       OS_CPU_SR_Restore
000340  2000              MOVS     r0,#0
000342  bd70              POP      {r4-r6,pc}
;;;543    #endif                                                     /* OS_SEM_QUERY_EN                          */
                          ENDP

                  OSSemSet PROC
;;;571    void  OSSemSet (OS_EVENT *pevent, INT16U cnt, INT8U *perr)
;;;572    {
000344  b570              PUSH     {r4-r6,lr}
000346  4604              MOV      r4,r0
000348  460e              MOV      r6,r1
00034a  4615              MOV      r5,r2
;;;573    #if OS_CRITICAL_METHOD == 3                           /* Allocate storage for CPU status register      */
;;;574        OS_CPU_SR  cpu_sr = 0;
;;;575    #endif
;;;576    
;;;577    
;;;578    
;;;579    #if OS_ARG_CHK_EN > 0
;;;580        if (perr == (INT8U *)0) {                         /* Validate 'perr'                               */
00034c  2d00              CMP      r5,#0
00034e  d002              BEQ      |L1.854|
;;;581            return;
;;;582        }
;;;583        if (pevent == (OS_EVENT *)0) {                    /* Validate 'pevent'                             */
000350  b914              CBNZ     r4,|L1.856|
;;;584            *perr = OS_ERR_PEVENT_NULL;
000352  2004              MOVS     r0,#4
000354  7028              STRB     r0,[r5,#0]
                  |L1.854|
;;;585            return;
;;;586        }
;;;587    #endif
;;;588        if (pevent->OSEventType != OS_EVENT_TYPE_SEM) {   /* Validate event block type                     */
;;;589            *perr = OS_ERR_EVENT_TYPE;
;;;590            return;
;;;591        }
;;;592        OS_ENTER_CRITICAL();
;;;593        *perr = OS_ERR_NONE;
;;;594        if (pevent->OSEventCnt > 0) {                     /* See if semaphore already has a count          */
;;;595            pevent->OSEventCnt = cnt;                     /* Yes, set it to the new value specified.       */
;;;596        } else {                                          /* No                                            */
;;;597            if (pevent->OSEventGrp == 0) {                /*      See if task(s) waiting?                  */
;;;598                pevent->OSEventCnt = cnt;                 /*      No, OK to set the value                  */
;;;599            } else {
;;;600                *perr              = OS_ERR_TASK_WAITING;
;;;601            }
;;;602        }
;;;603        OS_EXIT_CRITICAL();
;;;604    }
000356  bd70              POP      {r4-r6,pc}
                  |L1.856|
000358  7820              LDRB     r0,[r4,#0]
00035a  2803              CMP      r0,#3
00035c  d002              BEQ      |L1.868|
00035e  2001              MOVS     r0,#1
000360  7028              STRB     r0,[r5,#0]
000362  bd70              POP      {r4-r6,pc}
                  |L1.868|
000364  f7fff7ff          BL       OS_CPU_SR_Save
000368  2100              MOVS     r1,#0
00036a  7029              STRB     r1,[r5,#0]
00036c  8921              LDRH     r1,[r4,#8]
00036e  b109              CBZ      r1,|L1.884|
000370  8126              STRH     r6,[r4,#8]
000372  e005              B        |L1.896|
                  |L1.884|
000374  7aa1              LDRB     r1,[r4,#0xa]
000376  b909              CBNZ     r1,|L1.892|
000378  8126              STRH     r6,[r4,#8]
00037a  e001              B        |L1.896|
                  |L1.892|
00037c  2149              MOVS     r1,#0x49
00037e  7029              STRB     r1,[r5,#0]
                  |L1.896|
000380  e8bde8bd          POP      {r4-r6,lr}
000384  f7fff7ff          B.W      OS_CPU_SR_Restore
;;;605    #endif
                          ENDP

                  |L1.904|
000388  00000000          DCD      OSIntNesting
                  |L1.908|
00038c  00000000          DCD      OSEventFreeList
                  |L1.912|
000390  00000000          DCD      OSLockNesting
                  |L1.916|
000394  00000000          DCD      OSTCBCur

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精工是国产品牌吗| 国产一区二区三区综合| 久久精品在这里| 色婷婷综合久久| 九色综合狠狠综合久久| 亚洲国产一二三| 国产精品毛片a∨一区二区三区| 欧美日韩国产一二三| 成人午夜免费视频| 久久精品国产免费看久久精品| 亚洲精品一卡二卡| 国产精品久久久久久久久快鸭| 日韩视频一区二区三区| 欧美日本在线看| 91在线视频免费91| 成人av在线资源| 韩国女主播成人在线观看| 亚洲国产日韩av| 亚洲综合小说图片| 亚洲视频在线观看三级| 欧美激情中文字幕一区二区| 欧美精品一区二区三区很污很色的 | 欧美一区二区在线免费观看| 91女人视频在线观看| 国产精品538一区二区在线| 琪琪久久久久日韩精品| 五月天国产精品| 亚洲va国产va欧美va观看| 自拍偷拍国产精品| 亚洲欧洲av在线| 欧美激情综合五月色丁香小说| 337p粉嫩大胆噜噜噜噜噜91av| 欧美一区二区三区视频在线观看| 欧美日韩一区二区欧美激情| 在线观看www91| 精品视频资源站| 欧美丝袜第三区| 欧美三级日韩三级| 欧美片网站yy| 欧美一区二区人人喊爽| 日韩美女一区二区三区四区| 欧美一区午夜精品| 欧美电影免费观看高清完整版在线| 日韩一区二区三| 2023国产一二三区日本精品2022| 精品精品欲导航| 欧美精品一区男女天堂| 国产调教视频一区| 成人免费小视频| 夜夜精品视频一区二区| 亚洲一区二区三区四区在线| 午夜一区二区三区在线观看| 天天色天天操综合| 久久激情五月婷婷| 激情欧美一区二区三区在线观看| 国产麻豆一精品一av一免费| 成人激情图片网| 欧美性受极品xxxx喷水| 91麻豆精品国产| 亚洲精品在线观看网站| 日本一区二区三区四区| 亚洲三级在线播放| 日韩精品免费视频人成| 激情五月激情综合网| 成人网在线播放| 色成人在线视频| 91精品国产综合久久福利| 2024国产精品| 亚洲精品亚洲人成人网| 日韩av一区二区在线影视| 国产伦精一区二区三区| 一本大道久久a久久综合| 欧美伦理影视网| 国产欧美日韩在线看| 亚洲三级视频在线观看| 久久激情五月婷婷| 色综合久久精品| 欧美一区二区免费视频| 中文无字幕一区二区三区| 亚洲高清中文字幕| 国产精品18久久久久久vr| 91美女片黄在线| 欧美va亚洲va在线观看蝴蝶网| 中文字幕佐山爱一区二区免费| 免费成人在线网站| 91丨九色丨黑人外教| 欧美v国产在线一区二区三区| 亚洲色图视频免费播放| 美女脱光内衣内裤视频久久网站| 99精品视频一区| 日韩美女一区二区三区四区| 亚洲黄色免费网站| 国内精品久久久久影院一蜜桃| 在线影院国内精品| 国产日韩欧美一区二区三区乱码| 午夜久久久久久久久久一区二区| 国产成人免费xxxxxxxx| 欧美一区二区精品久久911| 亚洲欧洲成人自拍| 国产精品系列在线观看| 91精品国产色综合久久不卡蜜臀| 中文字幕日韩欧美一区二区三区| 美女高潮久久久| 欧美日韩中文国产| 亚洲色图19p| 成人爽a毛片一区二区免费| 日韩欧美一级精品久久| 亚洲国产成人高清精品| 色综合久久精品| 亚洲国产精品传媒在线观看| 狠狠色综合播放一区二区| 欧美丰满美乳xxx高潮www| 亚洲精品乱码久久久久久| 成人美女视频在线观看18| 精品久久久久久久久久久久包黑料| 亚洲成av人在线观看| 色婷婷久久久亚洲一区二区三区 | 精品久久久久久无| 视频在线观看91| 欧美中文字幕一二三区视频| 亚洲欧美日韩在线| 99国产麻豆精品| 日韩一区在线播放| 成年人午夜久久久| 国产精品久久久久久久久果冻传媒| 国产一区二区三区黄视频 | 国产精品丝袜黑色高跟| 国产伦精品一区二区三区免费 | 成人午夜短视频| 国产欧美日韩精品在线| 国产老肥熟一区二区三区| 日韩一区二区在线看| 日韩精品乱码av一区二区| 欧美日韩精品欧美日韩精品 | 国产成人免费视| 欧美国产日韩精品免费观看| 韩国av一区二区| www精品美女久久久tv| 国产自产视频一区二区三区| 欧美sm美女调教| 国产真实乱偷精品视频免| 久久伊人中文字幕| 国产精品资源网| 欧美激情在线免费观看| av欧美精品.com| 自拍av一区二区三区| 99精品欧美一区二区三区综合在线| 中文字幕亚洲在| 91黄色激情网站| 午夜亚洲国产au精品一区二区| 欧美精品色一区二区三区| 首页欧美精品中文字幕| 精品日产卡一卡二卡麻豆| 国产一区二区三区久久久 | 欧美成人在线直播| 经典三级一区二区| 欧美高清在线一区二区| 色网站国产精品| 免费在线观看一区| 久久久久久99精品| 99麻豆久久久国产精品免费| 亚洲综合在线电影| 日韩色在线观看| 大桥未久av一区二区三区中文| 一区二区三区日韩欧美| 91精品免费在线观看| 国产乱对白刺激视频不卡| 亚洲欧美另类小说| 91麻豆精品国产自产在线| 国产乱码精品一品二品| 一区二区高清免费观看影视大全| 69av一区二区三区| 粉嫩aⅴ一区二区三区四区五区 | 免费欧美高清视频| 久久九九99视频| 欧美三级日本三级少妇99| 国产一区二区0| 亚洲国产毛片aaaaa无费看 | 91国模大尺度私拍在线视频| 美女视频黄频大全不卡视频在线播放 | 激情久久五月天| 亚洲色图一区二区| 精品三级av在线| 91成人免费网站| 国产成人综合精品三级| 亚洲18女电影在线观看| 国产午夜精品久久久久久久| 欧美综合一区二区三区| 国产999精品久久久久久| 亚洲免费大片在线观看| 久久新电视剧免费观看| 欧美日韩中文一区| 不卡av在线网| 国产在线观看免费一区| 亚洲va中文字幕| 樱桃视频在线观看一区| 日本一区二区三区高清不卡| 日韩亚洲欧美一区| 在线观看一区日韩| 成人黄色小视频在线观看|