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

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

?? os_cpu_a.s

?? AVR單片機(jī)上的ucOS-II V2.76的移植,編譯器為WINAVR,G
?? S
字號(hào):
;OS_CPU_A.S

#include <avr/io.h>

#define INC_FROM_OS_CPU_ASM

#include "../AVR/os_cpu.h"
#include "../Config/os_cfg.h"

;*************************************************************************************************************
;OS_EXT  INT8U             OSIntNesting;                        /* Interrupt nesting level                           */
;OS_EXT  BOOLEAN           OSRunning;                       /* Flag indicating that kernel is running         */
;OS_EXT  INT8U             OSPrioCur;                           /* Priority of current task                         */
;OS_EXT  INT8U             OSPrioHighRdy;                     /* Priority of highest priority task               */
;OS_EXT  OS_TCB           *OSTCBCur;                        /* Pointer to currently running TCB           */
;OS_EXT  OS_TCB           *OSTCBHighRdy;                  /* Pointer to highest priority TCB R-to-R   */

         .extern OSTCBCur
         .extern OSTCBHighRdy
         .extern OSPrioCur
         .extern OSPrioHighRdy

         .extern OSRunning
         .extern OSIntNesting


;*************************************************************************************************************
         .global OSStartHighRdy
         .type OSStartHighRdy,#function
         .section .text,"ax"
OSStartHighRdy:

#if      OS_CPU_HOOKS_EN > 0
         .extern OSTaskSwHook
         call     OSTaskSwHook
#endif  

         lds       r16,OSRunning
         inc       r16
         sts       OSRunning,r16
		 
         lds       r30,OSTCBHighRdy
         lds       r31,OSTCBHighRdy+1	 
         ld        r16,z+
         ld        r17,z
         out      _SFR_IO_ADDR(SPL),r16 ;
         out      _SFR_IO_ADDR(SPH),r17 ;
		 
		 pop     r0
		 out     _SFR_IO_ADDR(SREG),r0 ;
		 
		 pop     r0
		 pop     r1
		 pop     r2
		 pop     r3   
		 pop     r4
		 pop     r5
		 pop     r6
		 pop     r7 
		 pop     r8
		 pop     r9
		 pop     r10
		 pop     r11
		 pop     r12
		 pop     r13
		 pop     r14
		 pop     r15  
		 pop     r16
		 pop     r17
		 pop     r18
		 pop     r19   
		 pop     r20
		 pop     r21
		 pop     r22
		 pop     r23 
		 pop     r24
		 pop     r25
		 pop     r26
		 pop     r27 
		 pop     r28
		 pop     r29
		 pop     r30
		 pop     r31       

          ret   

;*************************************************************************************************************
         .global OSCtxSw
         .type OSCtxSw,#function
         .section .text,"ax"
OSCtxSw:
         push    r31
         push    r30
         push    r29
         push    r28
         push    r27
         push    r26
         push    r25
         push    r24
         push    r23
         push    r22
         push    r21
         push    r20
         push    r19
         push    r18
         push    r17
         push    r16
         push    r15
         push    r14
         push    r13
         push    r12
         push    r11
         push    r10
         push    r9
         push    r8
         push    r7
         push    r6
         push    r5
         push    r4
         push    r3
         push    r2
         push    r1
         push    r0
         in        r0,_SFR_IO_ADDR(SREG)
         push    r0 


         in        r16,_SFR_IO_ADDR(SPL)
         in        r17,_SFR_IO_ADDR(SPH)
         lds       r30,OSTCBCur
         lds       r31,OSTCBCur+1
         st        z+,r16
         st        z,r17

#if      OS_CPU_HOOKS_EN > 0
         .extern OSTaskSwHook
         call     OSTaskSwHook
#endif          

         lds       r16,OSTCBHighRdy
         lds       r17,OSTCBHighRdy+1
         sts       OSTCBCur,r16
         sts       OSTCBCur+1,r17

         lds       r16,OSPrioHighRdy
         sts       OSPrioCur,r16

         lds       r30,OSTCBHighRdy
         lds       r31,OSTCBHighRdy+1	 
         ld        r16,z+
         ld        r17,z
         out      _SFR_IO_ADDR(SPL),r16 ;
         out      _SFR_IO_ADDR(SPH),r17 ;
		 
		 pop     r0
		 out     _SFR_IO_ADDR(SREG),r0 ;
		 
		 pop     r0
		 pop     r1
		 pop     r2
		 pop     r3   
		 pop     r4
		 pop     r5
		 pop     r6
		 pop     r7 
		 pop     r8
		 pop     r9
		 pop     r10
		 pop     r11
		 pop     r12
		 pop     r13
		 pop     r14
		 pop     r15  
		 pop     r16
		 pop     r17
		 pop     r18
		 pop     r19   
		 pop     r20
		 pop     r21
		 pop     r22
		 pop     r23 
		 pop     r24
		 pop     r25
		 pop     r26
		 pop     r27 
		 pop     r28
		 pop     r29
		 pop     r30
		 pop     r31            

         ret       
;*************************************************************************************************************
         .global OSIntCtxSw
         .type OSIntCtxSw,#function
         .section .text,"ax"
OSIntCtxSw:
         in        r24,_SFR_IO_ADDR(SPL)
         in        r25,_SFR_IO_ADDR(SPH)
         adiw     r24,4
#if     OS_CRITICAL_METHOD == 2
         adiw     r24,1
#endif

#if     OS_CRITICAL_METHOD == 3
         adiw     r24,1
#endif

         out      _SFR_IO_ADDR(SPL),r24
         out      _SFR_IO_ADDR(SPH),r25

         lds       r30,OSTCBCur
         lds       r31,OSTCBCur+1
         st        z+,r24
         st        z,r25

#if      OS_CPU_HOOKS_EN > 0
         .extern OSTaskSwHook
         call     OSTaskSwHook
#endif          

         lds       r16,OSTCBHighRdy
         lds       r17,OSTCBHighRdy+1
         sts       OSTCBCur,r16
         sts       OSTCBCur+1,r17

         lds       r16,OSPrioHighRdy
         sts       OSPrioCur,r16

         lds       r30,OSTCBHighRdy
         lds       r31,OSTCBHighRdy+1	 
         ld        r16,z+
         ld        r17,z
         out      _SFR_IO_ADDR(SPL),r16 ;
         out      _SFR_IO_ADDR(SPH),r17 ;
		 
		 pop     r0
		 out     _SFR_IO_ADDR(SREG),r0 ;
		 
		 pop     r0
		 pop     r1
		 pop     r2
		 pop     r3   
		 pop     r4
		 pop     r5
		 pop     r6
		 pop     r7 
		 pop     r8
		 pop     r9
		 pop     r10
		 pop     r11
		 pop     r12
		 pop     r13
		 pop     r14
		 pop     r15  
		 pop     r16
		 pop     r17
		 pop     r18
		 pop     r19   
		 pop     r20
		 pop     r21
		 pop     r22
		 pop     r23 
		 pop     r24
		 pop     r25
		 pop     r26
		 pop     r27 
		 pop     r28
		 pop     r29
		 pop     r30
		 pop     r31            
         

         ret
;*************************************************************************************************************
         .extern OSTimeTick
         .extern OSIntExit
         .global OSTickISR
         .global SIG_OUTPUT_COMPARE0
SIG_OUTPUT_COMPARE0:
OSTickISR:
         push    r31
         push    r30
         push    r29
         push    r28
         push    r27
         push    r26
         push    r25
         push    r24
         push    r23
         push    r22
         push    r21
         push    r20
         push    r19
         push    r18
         push    r17
         push    r16
         push    r15
         push    r14
         push    r13
         push    r12
         push    r11
         push    r10
         push    r9
         push    r8
         push    r7
         push    r6
         push    r5
         push    r4
         push    r3
         push    r2
         push    r1
         push    r0
         in        r16,_SFR_IO_ADDR(SREG)
         ori       r16,0x80
         push    r16          

         lds       r16,OSIntNesting
         inc       r16
         sts       OSIntNesting,r16

         

         call     OSTimeTick
         call     OSIntExit

		 pop     r0
		 out     _SFR_IO_ADDR(SREG),r0 ;
		 
		 pop     r0
		 pop     r1
		 pop     r2
		 pop     r3   
		 pop     r4
		 pop     r5
		 pop     r6
		 pop     r7 
		 pop     r8
		 pop     r9
		 pop     r10
		 pop     r11
		 pop     r12
		 pop     r13
		 pop     r14
		 pop     r15  
		 pop     r16
		 pop     r17
		 pop     r18
		 pop     r19   
		 pop     r20
		 pop     r21
		 pop     r22
		 pop     r23 
		 pop     r24
		 pop     r25
		 pop     r26
		 pop     r27 
		 pop     r28
		 pop     r29
		 pop     r30
		 pop     r31            

         reti 
;*************************************************************************************************************
         .global   PushSREG
PushSREG:
         in      r0,_SFR_IO_ADDR(SREG)
         push  r0
         ret

         .global PopSreg
PopSREG:
         pop   r0
         out   _SFR_IO_ADDR(SREG),r0
         ret

     .end

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区免费观看视频| 欧美日韩综合不卡| 日韩精品一区二区三区视频| 午夜精彩视频在线观看不卡| 欧美揉bbbbb揉bbbbb| 亚洲电影你懂得| 欧美高清激情brazzers| 午夜电影久久久| 欧美va日韩va| 成人精品视频网站| 亚洲视频在线一区| 欧美色综合影院| 美女脱光内衣内裤视频久久影院| 日韩欧美国产三级电影视频| 国产精选一区二区三区| 欧美国产一区在线| 在线免费观看不卡av| 日韩精品一二区| 久久一留热品黄| 播五月开心婷婷综合| 一区二区三区四区五区视频在线观看| 91传媒视频在线播放| 免费日本视频一区| 久久精品一区二区三区不卡| av亚洲产国偷v产偷v自拍| 一个色在线综合| 精品久久久久久综合日本欧美| 国产一区二区三区av电影| 国产精品福利在线播放| 欧美日韩中文精品| 国产精品一二三区| 一区二区在线观看视频在线观看| 欧美日韩国产综合一区二区| 精品在线你懂的| 伊人色综合久久天天| 日韩女优av电影| 91免费看`日韩一区二区| 日本亚洲欧美天堂免费| 久久看人人爽人人| 在线观看av一区二区| 国产一区二区电影| 亚洲福利一区二区| 国产精品美女久久久久高潮| 制服丝袜亚洲色图| 97se狠狠狠综合亚洲狠狠| 免费成人在线影院| 亚洲精品国产视频| 久久精品亚洲精品国产欧美kt∨| 欧美吻胸吃奶大尺度电影| 国产成人精品三级麻豆| 日韩不卡一区二区三区| 蜜桃视频在线观看一区二区| 国产精品久久久久久妇女6080| 91精品国产乱码| 91污在线观看| 国产成人免费xxxxxxxx| 日本vs亚洲vs韩国一区三区| 一区二区视频在线| 国产精品人人做人人爽人人添| 日韩午夜在线观看视频| 欧美日韩精品电影| 色噜噜狠狠色综合欧洲selulu| 国产成人免费在线视频| 久久国产三级精品| 午夜精品福利在线| 亚洲国产精品一区二区www| 国产精品久久午夜夜伦鲁鲁| 日韩精品专区在线影院重磅| 欧美视频在线一区二区三区| 成人爱爱电影网址| 粉嫩嫩av羞羞动漫久久久| 精品亚洲成a人| 日本不卡一二三区黄网| 欧美精品乱人伦久久久久久| 国产成都精品91一区二区三| 久久精品国产一区二区| 日韩中文字幕91| 一卡二卡三卡日韩欧美| 亚洲激情图片qvod| 樱桃国产成人精品视频| 亚洲人成在线观看一区二区| 国产精品天天看| 国产精品久久久久久久久免费樱桃 | 三级不卡在线观看| 亚洲视频在线观看一区| 亚洲欧美在线视频观看| 国产一区二区久久| 寂寞少妇一区二区三区| 亚洲色图在线播放| 亚洲一区免费观看| 国产精品综合一区二区| 色又黄又爽网站www久久| 欧美一级在线观看| 亚洲欧洲av在线| 秋霞成人午夜伦在线观看| 成人美女在线视频| 欧美一区二区三区白人| 国产精品视频在线看| 三级在线观看一区二区| 成人自拍视频在线观看| 555夜色666亚洲国产免| 亚洲国产高清不卡| 久久国产麻豆精品| 欧美色图在线观看| 中文字幕一区二区三区在线观看| 五月激情综合色| av电影天堂一区二区在线观看| 欧美电视剧在线观看完整版| 亚洲综合无码一区二区| 国产sm精品调教视频网站| 91精品在线一区二区| 亚洲视频香蕉人妖| 国产很黄免费观看久久| 3d动漫精品啪啪1区2区免费| 亚洲婷婷在线视频| 成人一区二区三区视频在线观看| 欧美精品777| 亚洲精品成人在线| 成人app软件下载大全免费| 久久亚洲二区三区| 久久精品国产免费| 欧美日韩1区2区| 亚洲欧洲综合另类| av电影天堂一区二区在线| 久久久一区二区三区捆绑**| 久久99精品久久久久久动态图| 欧美日韩色综合| 亚洲一区二区在线观看视频| 99久久精品费精品国产一区二区| 日韩精品影音先锋| 免费视频一区二区| 制服丝袜亚洲网站| 日韩激情一区二区| 8v天堂国产在线一区二区| 亚洲福利一区二区三区| 欧美色爱综合网| 午夜在线成人av| 欧美日韩www| 日韩精品视频网站| 欧美一二三在线| 麻豆中文一区二区| 欧美大片日本大片免费观看| 麻豆久久一区二区| 欧美大胆人体bbbb| 国产一区二区福利视频| 久久综合色婷婷| 国产成人免费视频精品含羞草妖精| 久久女同互慰一区二区三区| 国产一区二区毛片| 中文字幕永久在线不卡| 91在线一区二区| 亚洲已满18点击进入久久| 欧美色网一区二区| 欧美aa在线视频| 亚洲精品一线二线三线| 国产高清无密码一区二区三区| 国产午夜精品久久| 99re热这里只有精品视频| 亚洲欧美日韩国产一区二区三区 | 国产精品国产三级国产专播品爱网| 国产成人免费视| 亚洲欧美二区三区| 欧美人与禽zozo性伦| 日韩有码一区二区三区| 精品国产一区二区三区久久久蜜月 | 国产成人一区二区精品非洲| 中文字幕乱码日本亚洲一区二区| 色丁香久综合在线久综合在线观看| 国产成人精品亚洲午夜麻豆| 中文字幕日本乱码精品影院| 精品视频在线视频| 国产一区二区三区美女| 1024亚洲合集| 91精品国产aⅴ一区二区| 国产一区二区三区四区五区美女 | 日韩写真欧美这视频| 国产一区91精品张津瑜| 亚洲特黄一级片| 91精品国产全国免费观看| 成人免费高清在线| 天堂一区二区在线免费观看| 久久蜜桃av一区精品变态类天堂| 91丨porny丨在线| 免费在线视频一区| 1区2区3区精品视频| 日韩欧美在线一区二区三区| 成人精品亚洲人成在线| 日韩和欧美的一区| 中文字幕一区av| 日韩一区二区三区高清免费看看| www.av亚洲| 日韩成人午夜精品| 亚洲欧洲精品一区二区精品久久久| 欧美精品vⅰdeose4hd| 成人深夜视频在线观看| 视频一区二区不卡| 亚洲欧美自拍偷拍色图| 欧美不卡激情三级在线观看| 一本久久a久久精品亚洲| 精品一区二区三区香蕉蜜桃|