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

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

?? conf_tny.a51

?? 程序為監測報警
?? A51
?? 第 1 頁 / 共 2 頁
字號:
$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	1000	; default is 10000 cycles
;
;  Define Round-Robin Timeout in Hardware-Timer ticks.
TIMESHARING	EQU    0	; 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	07FH	; 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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区福利视频| 一区二区日韩电影| 国产风韵犹存在线视精品| 精品噜噜噜噜久久久久久久久试看 | 久久伊99综合婷婷久久伊| 激情综合网激情| 国产视频一区不卡| 成人免费高清视频| 欧美韩国日本一区| 色综合欧美在线| 五月婷婷综合在线| 久久亚洲综合色| 国产成人午夜精品影院观看视频 | 国产精品视频观看| 在线观看一区二区视频| 日韩va欧美va亚洲va久久| 精品成a人在线观看| 91视视频在线观看入口直接观看www | 欧美精品一区二区三区高清aⅴ | 91色视频在线| 琪琪一区二区三区| 日本一区二区三区久久久久久久久不| av成人动漫在线观看| 五月天激情综合| 中文字幕免费在线观看视频一区| 91污在线观看| 国产专区欧美精品| 亚洲一区二区三区影院| 久久综合色一综合色88| 91理论电影在线观看| 久久精品噜噜噜成人av农村| 国产精品人人做人人爽人人添| 欧美三片在线视频观看| 成人免费视频播放| 麻豆视频一区二区| 一区二区在线观看不卡| 精品免费国产一区二区三区四区| 99精品欧美一区二区蜜桃免费| 日韩不卡在线观看日韩不卡视频| 国产精品美女久久久久aⅴ | 成人午夜又粗又硬又大| 日本vs亚洲vs韩国一区三区二区| 国产精品久久久久aaaa| 精品国内二区三区| 欧美日韩在线不卡| 色综合久久88色综合天天免费| 久久91精品国产91久久小草| 亚洲国产欧美另类丝袜| 中文字幕一区二区三区乱码在线| 日韩免费电影一区| 777午夜精品视频在线播放| 97久久超碰精品国产| 国产成人精品亚洲日本在线桃色| 午夜精品福利在线| 亚洲伊人色欲综合网| 亚洲欧美日韩小说| 国产精品色眯眯| 久久久久久一二三区| 欧美一区二区精品| 777久久久精品| 欧美三级中文字幕| 色国产综合视频| 一本色道久久加勒比精品| 丁香激情综合国产| 国产激情一区二区三区| 国产最新精品免费| 黄页视频在线91| 国产一区二区三区蝌蚪| 久久国产综合精品| 捆绑调教美女网站视频一区| 日本sm残虐另类| 丝袜亚洲另类丝袜在线| 视频一区中文字幕| 日本欧美一区二区三区乱码| 三级久久三级久久| 日韩精品欧美精品| 免费在线观看一区| 精品午夜久久福利影院| 激情综合网av| 国产不卡在线一区| 北条麻妃一区二区三区| 99久久久久免费精品国产| av不卡在线观看| 91极品美女在线| 欧美精品粉嫩高潮一区二区| 欧美日韩一区三区| 宅男在线国产精品| 欧美mv日韩mv亚洲| 久久久久久久久久久久久夜| 国产欧美一区二区精品性色超碰| 久久九九99视频| 亚洲欧美怡红院| 依依成人综合视频| 日韩电影免费在线观看网站| 激情文学综合网| 成人免费看视频| 欧美优质美女网站| 欧美一区二区日韩一区二区| 欧美成人video| 中文字幕制服丝袜一区二区三区| 亚洲天堂网中文字| 亚洲一区影音先锋| 青青草精品视频| 国产很黄免费观看久久| 色噜噜夜夜夜综合网| 欧美一级高清片| 国产精品二三区| 天堂久久久久va久久久久| 免费高清在线一区| 粉嫩绯色av一区二区在线观看 | 欧美在线视频全部完| 欧美一区二区二区| 中文字幕人成不卡一区| 午夜欧美电影在线观看| 国产高清在线观看免费不卡| 色婷婷亚洲婷婷| 精品免费一区二区三区| 亚洲日本在线天堂| 捆绑紧缚一区二区三区视频| av一本久道久久综合久久鬼色| 欧美日韩一区国产| 国产女主播一区| 亚洲欧美另类小说| 国内外成人在线| 一本久久a久久精品亚洲| 91精品国产麻豆| 亚洲人精品午夜| 国内不卡的二区三区中文字幕| 97成人超碰视| 国产午夜精品在线观看| 日韩在线一二三区| 91成人网在线| 国产日韩欧美制服另类| 日韩一区欧美二区| 91麻豆成人久久精品二区三区| 日韩精品中午字幕| 天天av天天翘天天综合网 | 日韩视频免费观看高清完整版在线观看 | 日韩精品一区第一页| 91视视频在线观看入口直接观看www | 欧美日韩国产精品自在自线| 国产精品五月天| 久久99精品久久久久久国产越南 | 天堂一区二区在线免费观看| voyeur盗摄精品| 国产喂奶挤奶一区二区三区| 日韩和的一区二区| 在线精品国精品国产尤物884a| 久久久久久久久久久99999| 日本美女一区二区| 欧美日本乱大交xxxxx| 亚洲伊人伊色伊影伊综合网 | 色吧成人激情小说| 中文字幕不卡一区| 国产高清精品在线| 久久天天做天天爱综合色| 日韩国产欧美视频| 欧美一区二区性放荡片| 午夜国产精品一区| 6080午夜不卡| 日韩精品色哟哟| 欧美一级免费大片| 青娱乐精品视频在线| 日韩三级视频中文字幕| 日韩二区三区在线观看| 9191成人精品久久| 日本成人中文字幕在线视频 | 国产一区二区三区四| 国产亚洲一区二区三区四区 | 不卡一区二区中文字幕| 国产精品毛片久久久久久| 成人av在线资源| 亚洲天堂成人网| 一本一道久久a久久精品综合蜜臀| 国产精品久久久久久久久动漫 | 裸体一区二区三区| 精品国精品国产| 国产精品一区三区| 国产视频视频一区| 99久久99久久久精品齐齐| 国产精品系列在线| 91视频免费看| 午夜私人影院久久久久| 欧美一区二区三区四区久久| 久久99精品久久久| 国产日产精品一区| 日本乱人伦aⅴ精品| 亚洲一本大道在线| 精品欧美一区二区久久| www.日本不卡| 五月天一区二区| 久久网站热最新地址| 99riav久久精品riav| 亚洲成人三级小说| 久久综合视频网| 色婷婷久久久综合中文字幕| 性感美女久久精品| 久久久久久免费毛片精品| 色一区在线观看| 精品在线一区二区|