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

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

?? conf_tny.a51

?? 小型便攜式溫度計(jì)的源代碼第三版
?? A51
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
$NOMOD51 DEBUG
;------------------------------------------------------------------------------
;  This file is part of the RTX-51 TINY  Real-Time Operating System Package
;  Copyright KEIL ELEKTRONIK GmbH and Keil Software, Inc. 1991-2002
;  Version 2.02
;------------------------------------------------------------------------------
;  CONF_TNY.A51:  This code allows the configuration of the
;                 RTX-51 TINY Real-Time Operating System
;
;  Copy this file to your project folder and add the copy to your uVision2
;  project.  You can customize several parameters of RTX51 Tiny within this
;  configuration file.
;
;  If you use command line tools, translate this file with:
;
;     Ax51 CONF_TNY.A51
;
;  If you use command line tools, link the modified CONF_TNY.OBJ file to 
;  your application with:
;
;     Lx51 <your object file list>, CONF_TNY.OBJ <controls>
;
;------------------------------------------------------------------------------
;
;  RTX-51 TINY Hardware-Timer
;  ==========================
;
;  With the following EQU statements the initialization of the RTX-51 TINY
;  Hardware-Timer can be defined (RTX-51 TINY uses the 8051 Timer 0 for 
;  controlling RTX-51 software timers).
;
;  Define the register bank used for the timer interrupt.
INT_REGBANK	EQU	1	; default is Registerbank 1
;
;  Define Hardware-Timer tick time in 8051 machine cycles.
INT_CLOCK	EQU	25000	; default is 10000 cycles
;
;  Define Round-Robin Timeout in Hardware-Timer ticks.
TIMESHARING	EQU     5	; default is 5 Hardware-Timer ticks.
;		                ; 0 disables Round-Robin Task Switching
;
;  Long User Interrupt Routines: set to 1 if your application contains 
;  user interrupt functions that may take longer than a hardware timer 
;  interval for execution.
LONG_USR_INTR	EQU	0	; 0 user interrupts execute fast.
;                               ; 1 user interrupts take long execution times.
;
;
;------------------------------------------------------------------------------
;
;  USER CODE FOR 8051 HARDWARE TIMER INTERRUPT
;  ===========================================
;
;  The following macro defines the code executed on a hardware timer interrupt.
;
;  Define instructions executed on a hardware timer interrupt.
HW_TIMER_CODE	MACRO
				; Empty Macro by default
		RETI
		ENDM
;
;
;------------------------------------------------------------------------------
;
;  CODE BANKING SUPPORT
;  ====================
;
;  The following EQU statement controls the code banking support for RTX51 TINY.
;
;  Enable or disable code banking support
CODE_BANKING     EQU     0      ; 0 (default) application uses no code banking
;                               ; 1 application uses code banking
;
;------------------------------------------------------------------------------
;
;  RTX-51 TINY Stack Space
;  =======================
;
;  The following EQU statements defines the size of the internal RAM used
;  for stack area and the minimum free space on the stack.  A macro defines
;  the code executed when there is there is not enough free stack on the
;  CPU stack.
;
;  Define the highest RAM address used for CPU stack
RAMTOP		EQU	7FH	; default is address (256-1)
;
FREE_STACK	EQU	20	; default is 20 bytes free space on stack
;                               ; the value 0 disables stack checking
;
STACK_ERROR	MACRO
		CLR	EA	; disable interrupts
		SJMP	$	; endless loop if stack space is exhausted
		ENDM
;
;
;------------------------------------------------------------------------------
;
;  8051 CPU IDLE CODE
;  ==================
;
;  Many 8051 devices provide an IDLE MODE that reduces power consumption and
;  EMC.  The following macro defines the code executed when there is no 
;  ready task in the system.  The code must set the CPU into an IDLE MODE
;  that stops instruction execution until an 8051 hardware interrupt occurs. 
;

; Disable or Enable CPU_IDLE CODE
CPU_IDLE_CODE   EQU     0       ; 0  CPU_IDLE MACRO is not inserted
                                ; 1  CPU_IDLE MACRO is executed

PCON            DATA    087H    ; Power Control SFR on most 8051 devices

; Stop CPU execution until hardware interrupt; executed when there is no 
; active task in the system. 
CPU_IDLE	MACRO
		ORL	PCON,#1	; set 8051 CPU to IDLE
		ENDM
;
;
;------------------------------------------------------------------------------
;----------------- !!! End of User Configuration Part    !!! ------------------
;----------------- !!! Do not modify code sections below !!! ------------------
;------------------------------------------------------------------------------

; SFR Symbols
PSW     DATA    0D0H
ACC     DATA    0E0H
B       DATA    0F0H
SP      DATA    81H
DPL     DATA    82H
DPH     DATA    83H
TCON    DATA    88H
TMOD    DATA    89H
TL0     DATA    8AH
TL1     DATA    8BH
TH0     DATA    8CH
TH1     DATA    8DH
IE      DATA    0A8H

; TCON
TF1     BIT     8FH
TR1     BIT     8EH
TF0     BIT     8DH
TR0     BIT     8CH
IE1     BIT     8BH
IT1     BIT     8AH
IE0     BIT     89H
IT0     BIT     88H
; IE 
EA      BIT     0AFH
ES      BIT     0ACH
ET1     BIT     0ABH
EX1     BIT     0AAH
ET0     BIT     0A9H
EX0     BIT     0A8H

; Check Configuration Values


		NAME	?RTX51_TINY_KERNAL

PUBLIC	?RTX_CURRENTTASK 
PUBLIC	?RTX_RAMTOP
PUBLIC  os_switch_task
PUBLIC  ?RTX?SET_ISR

EXTRN	NUMBER (?RTX_MAXTASKN)		; max Task Number

?RTX_RAMTOP       EQU   RAMTOP
?RTX_CLOCK	  EQU	-INT_CLOCK

?RTX_REGISTERBANK EQU	INT_REGBANK * 8
		  DSEG	AT    ?RTX_REGISTERBANK
		  DS	2     ; temporary space
?RTX_SAVEACC:     DS	1
saveacc		  EQU	R2    ; for access in interrupt service routine
?RTX_SAVEPSW:     DS	1
savepsw		  EQU	R3    ; for access in interrupt service routine
?RTX_CURRENTTASK: DS	1
currenttask       EQU	R4    ; for access in interrupt service routine

IF (TIMESHARING <> 0)
?RTX_ROBINTIME:   DS	1
robintime	  EQU	R5    ; for access in interrupt service routine
ENDIF

IF (CODE_BANKING <> 0)
EXTRN	DATA	(?B_CURRENTBANK)
EXTRN   CODE    (?B_RESTORE_BANK)
ENDIF


;------------------------------------------------
; Table of Task Entry Pointers
;------------------------------------------------
PUBLIC	?RTX_TASKENTRY

?RTX?TASKENT?S  SEGMENT CODE
		RSEG	?RTX?TASKENT?S
?RTX_TASKENTRY:	DS	2

;------------------------------------------------
; Table of Stack Pointers for each task
;------------------------------------------------
PUBLIC	?RTX_TASKSP

?RTX?TASKSP?S   SEGMENT	IDATA
		RSEG	?RTX?TASKSP?S
?RTX_TASKSP:	DS	1

;------------------------------------------------
; Table of Task Timer/State Pointers
;------------------------------------------------
PUBLIC	?RTX_TASKSTATUS

?RTX?TASKSTATE?S  SEGMENT IDATA
		  RSEG	  ?RTX?TASKSTATE?S
?RTX_TASKSTATUS:
TimerVal:	DS	1	; Task Timer (Software Timer for each task)
TaskState:	DS	1       ; Task Status (state of each Task)

; Definitions for Bits in Task State
;  TaskState.0  = Wait for Signal
;  TaskState.1  = Wait for TimeOut
;  TaskState.2  = Signal Flag
;  TaskState.3  = TimeOut Flag
;  TaskState.4  = Task Ready (Wait for Running)
;  TaskState.5  = Task Active (enabled with os_create)
;  TaskState.6  = Round Robin Time Out
;  TaskState.7  = Run Flag

; byte mask definitions
K_SIG	        EQU	1
K_TMO	        EQU	2
SIG_EVENT	EQU	4
TMO_EVENT	EQU	8
K_READY		EQU	16
K_ACTIVE	EQU	32
K_ROBIN		EQU	64
K_IVL           EQU     128  ; not a task state bit; only used in os_wait
RDY_EVENT       EQU     128  ; READY status flag
K_RDY           EQU     128

; bit position definitions
B_WAITSIG	EQU	0
B_WAITTIM	EQU	1
B_SIGNAL	EQU	2
B_TIMEOUT	EQU	3
B_READY		EQU	4
B_ACTIVE	EQU	5
B_ROBIN		EQU	6
B_IVL           EQU     7    ; not a task state bit; only used in os_wait
B_RDY           EQU     7


IF (TIMESHARING OR CPU_IDLE_CODE)
?RTX?BITS	SEGMENT	BIT
		RSEG	?RTX?BITS
ENDIF

IF (TIMESHARING)
?RTX_TS_DELAY:	DBIT	1       ; Status bit set when task switch in progress
ENDIF

IF (CPU_IDLE_CODE)
?RTX_ISR_SIG:	DBIT	1	; Status bit set when interrupt or os_set_signal
ENDIF


		CSEG	AT	0BH
                JMP	TIMERINT

?RTX?CODE       SEGMENT CODE
                RSEG	?RTX?CODE
		USING	0		; Registerbank 0 for following code

IF (FREE_STACK <> 0)
?RTX_STACKERROR:
                STACK_ERROR             ; User defined Stack Error Code
ENDIF

HW_TIMER:	HW_TIMER_CODE

TIMERINT:

IF (LONG_USR_INTR)
		PUSH	ACC
		MOV	A,PSW
		ANL	A,#018H
		XRL	A,#?RTX_REGISTERBANK
		JNZ	CONT_TIMINT
; avoid recursive timer interrupt
		POP	ACC
		RETI		; Return from Recursive Timer Interrupt
CONT_TIMINT:    POP	ACC

ENDIF

		CALL	HW_TIMER	; Enable Interrupts again.

		MOV	?RTX_SAVEPSW,PSW
		MOV	PSW,#?RTX_REGISTERBANK
		MOV	saveacc,ACC     ; ACC required by some Cygnal devices
; Update 8051 Interrupt Timer
		CLR	TR0
		MOV	A,TL0
		ADD	A,#LOW (?RTX_CLOCK + 7)
		MOV	TL0,A
		MOV	A,TH0
		ADDC	A,#HIGH (?RTX_CLOCK + 7)
		MOV	TH0,A
		SETB	TR0

IF (FREE_STACK <> 0)
; Check if enough free stack is available
		MOV	A,currenttask
		ADD	A,#?RTX?TASKSP?S+1
		MOV	R0,A
		MOV	A,@R0
		CJNE	currenttask,#?RTX_MAXTASKN,checkstack
		MOV	A,#RAMTOP
checkstack:	CLR	C
		SUBB	A,SP
		CJNE	A,#FREE_STACK,$+3
		JC	?RTX_STACKERROR
ENDIF

; Update & Check Task Timers
		MOV	R1,#?RTX_MAXTASKN+1
		MOV	R0,#?RTX?TASKSTATE?S
TIMERLOOP:	DEC	@R0          ; Decrement timer
		MOV	A,@R0
		INC	R0           ; advance to TaskState
		JNZ	NoTimeout
		CLR	EA
		MOV	A,@R0
		JNB	ACC.B_WAITTIM,NoWaitTimeout
		ORL	A,#(K_READY+TMO_EVENT)
		MOV	@R0,A
NoWaitTimeout:  SETB	EA
NoTimeout:	INC	R0           ; advance to TaskTimer
		DJNZ	R1,TIMERLOOP

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品高清视频| 久久精品亚洲乱码伦伦中文| 精品中文字幕一区二区| 中文字幕精品一区二区三区精品| 欧美无乱码久久久免费午夜一区| 国产精品66部| 久久精品国产精品青草| 亚洲激情一二三区| 国产精品国产三级国产a| 欧美岛国在线观看| 欧美视频在线不卡| 91麻豆视频网站| 成人精品在线视频观看| 毛片av一区二区| 天堂在线一区二区| 一区二区久久久| 欧美国产精品中文字幕| 久久免费午夜影院| 日韩一区二区三免费高清| 在线观看区一区二| 91片在线免费观看| 暴力调教一区二区三区| 国产毛片一区二区| 九色porny丨国产精品| 天天综合色天天| 午夜欧美2019年伦理| 亚洲一二三区不卡| 亚洲欧美另类图片小说| 中文字幕一区二区视频| 国产精品欧美一级免费| 久久这里只有精品首页| 久久婷婷国产综合精品青草| 日韩欧美在线影院| 日韩一级免费一区| 欧美mv日韩mv国产网站app| 日韩视频123| 精品乱码亚洲一区二区不卡| 精品欧美一区二区三区精品久久| 91精品国产欧美一区二区| 91精品国产全国免费观看| 欧美一区二区三区系列电影| 欧美精品123区| 欧美一区二区三区在线看| 91精品欧美福利在线观看| 日韩一本二本av| 精品国产亚洲在线| 国产欧美日韩视频一区二区| 国产亲近乱来精品视频 | 99精品国产热久久91蜜凸| 成人福利视频在线看| 成人三级在线视频| 91亚洲午夜精品久久久久久| 在线视频你懂得一区二区三区| 日本高清不卡aⅴ免费网站| 欧美日韩性生活| 日韩一级黄色片| 久久精品视频一区二区| 国产精品嫩草99a| 亚洲男同性恋视频| 日韩精品久久理论片| 激情欧美日韩一区二区| 成人午夜激情影院| 91成人在线精品| 在线不卡中文字幕播放| 欧美精品一区二区精品网| 日本一区二区免费在线观看视频| 成人欧美一区二区三区白人| 一区二区三区四区av| 日韩不卡免费视频| 国产精品资源网站| 色欧美乱欧美15图片| 欧美一区2区视频在线观看| 久久精品亚洲乱码伦伦中文| 亚洲欧美日韩在线| 蜜臀国产一区二区三区在线播放 | 成人app软件下载大全免费| 在线观看视频一区二区| 精品国产乱码久久久久久牛牛| 国产精品人成在线观看免费 | 精品日韩在线观看| 国产精品伦一区| 日韩精品午夜视频| av中文字幕不卡| 欧美电影一区二区三区| 国产精品美女久久久久久久| 日本强好片久久久久久aaa| 成人午夜精品在线| 日韩欧美国产三级| 亚洲免费观看高清完整版在线观看| 奇米精品一区二区三区在线观看一| 成人影视亚洲图片在线| 欧美一二三区在线观看| 亚洲三级电影网站| 国产成人午夜精品影院观看视频| 欧美午夜免费电影| 中文字幕在线免费不卡| 久久99日本精品| 欧美性色欧美a在线播放| 国产农村妇女精品| 理论电影国产精品| 欧美日韩综合不卡| 成人欧美一区二区三区白人| 国精品**一区二区三区在线蜜桃| 欧美性猛片aaaaaaa做受| 国产日韩欧美不卡| 精品一区二区三区免费观看 | 日韩精品一区二区三区蜜臀 | 亚洲一区二区三区四区不卡| 国产成人在线影院| 欧美大胆人体bbbb| 午夜国产精品一区| 色婷婷精品大在线视频 | 国产精品国产自产拍高清av王其| 久久99精品久久久久久久久久久久| 色94色欧美sute亚洲13| 国产女人aaa级久久久级| 国产麻豆视频精品| 精品国产乱子伦一区| 免费av网站大全久久| 欧美久久久久久久久中文字幕| 一区二区三区欧美激情| 99精品欧美一区二区三区小说 | 日本系列欧美系列| 欧美系列亚洲系列| 亚洲一区二区三区视频在线| 色综合中文字幕国产 | 在线不卡一区二区| 午夜久久久久久| 欧美亚洲日本国产| 亚洲综合久久av| 欧美在线观看一二区| 亚洲综合视频在线| 欧美性做爰猛烈叫床潮| 亚洲午夜精品17c| 欧美老年两性高潮| 日韩国产欧美三级| 日韩精品中文字幕在线一区| 丝袜亚洲另类丝袜在线| 777欧美精品| 久久国产三级精品| 久久色在线观看| 国产精品伊人色| 国产精品免费视频观看| 99久久综合色| 亚洲在线视频免费观看| 欧美亚洲日本国产| 蜜臀av国产精品久久久久| 日韩午夜在线影院| 国产最新精品免费| 国产精品国产三级国产aⅴ入口| heyzo一本久久综合| 亚洲欧美日本在线| 这里只有精品视频在线观看| 久久精品72免费观看| 久久久亚洲国产美女国产盗摄| 东方欧美亚洲色图在线| ㊣最新国产の精品bt伙计久久| 色av成人天堂桃色av| 日韩 欧美一区二区三区| 日韩精品一区在线| 国产91丝袜在线18| 一区二区免费在线播放| 日韩西西人体444www| 成人理论电影网| 亚洲国产综合色| www国产亚洲精品久久麻豆| 成人午夜视频在线观看| 一区二区久久久久| 精品国产一区二区国模嫣然| 不卡欧美aaaaa| 亚洲国产三级在线| 久久综合九色综合97婷婷女人| 91年精品国产| 麻豆视频一区二区| 国产精品久久久久久妇女6080| 在线中文字幕不卡| 黄页网站大全一区二区| 亚洲日韩欧美一区二区在线| 欧美一二三区精品| 97精品久久久午夜一区二区三区 | 欧美色成人综合| 国产麻豆精品在线| 亚洲午夜影视影院在线观看| 2020国产精品自拍| 欧美性大战久久久久久久蜜臀| 美女网站色91| 自拍偷在线精品自拍偷无码专区| 91麻豆精品久久久久蜜臀| 成人一区在线看| 久久www免费人成看片高清| 亚洲激情av在线| 久久精品一区二区三区不卡牛牛| 91国模大尺度私拍在线视频| 九九精品视频在线看| 亚洲第一福利一区| 欧美国产精品专区| 精品国产凹凸成av人网站| 在线免费不卡视频| eeuss鲁片一区二区三区在线观看| 免费看日韩精品|