亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
粉嫩av一区二区三区粉嫩 | 欧美嫩在线观看| 在线91免费看| 亚洲人成小说网站色在线| 91亚洲国产成人精品一区二区三 | 亚洲制服丝袜在线| 国产精品夜夜嗨| 91精品婷婷国产综合久久性色| 中文av字幕一区| 蜜桃一区二区三区在线| 欧美在线999| 亚洲私人黄色宅男| 成人综合婷婷国产精品久久免费| 精品视频色一区| 亚洲欧美日韩在线不卡| 成人手机电影网| 欧美va亚洲va| 蜜臀av一区二区在线免费观看 | 亚洲午夜成aⅴ人片| 成人激情电影免费在线观看| 久久综合国产精品| 另类小说综合欧美亚洲| 欧美夫妻性生活| 亚洲一区二区高清| 欧美性猛交一区二区三区精品| 国产精品女主播av| www.日本不卡| 中文字幕在线一区免费| 不卡一区中文字幕| 国产精品第13页| www.欧美.com| 中文字幕日本不卡| 91在线视频18| 亚洲精品亚洲人成人网| 91一区一区三区| 亚洲品质自拍视频| 欧美最猛黑人xxxxx猛交| 亚洲黄色性网站| 欧美三级一区二区| 午夜视频在线观看一区二区三区| 欧美人动与zoxxxx乱| 日韩国产成人精品| 日韩三区在线观看| 国产在线精品一区二区夜色| 久久夜色精品国产噜噜av| 国产高清不卡一区| 亚洲人一二三区| 欧美久久久久久蜜桃| 日本人妖一区二区| 欧美v国产在线一区二区三区| 国产精品中文字幕日韩精品 | zzijzzij亚洲日本少妇熟睡| 亚洲欧美一区二区久久| 欧美午夜电影网| 麻豆91在线播放| 国产蜜臀av在线一区二区三区| 91麻豆精东视频| 日韩电影免费在线| 中国色在线观看另类| 欧美色图免费看| 欧美日韩视频在线一区二区| 蜜臀久久99精品久久久久久9| 国产亚洲福利社区一区| 91老师片黄在线观看| 天天做天天摸天天爽国产一区| 日韩亚洲欧美成人一区| 大白屁股一区二区视频| 亚洲国产一区二区视频| 欧美mv日韩mv国产网站| a美女胸又www黄视频久久| 亚洲bt欧美bt精品777| 久久精品在这里| 精品视频在线免费观看| 国产精品资源在线看| 亚洲mv在线观看| 欧美激情综合网| 欧美高清精品3d| 91首页免费视频| 黄一区二区三区| 依依成人精品视频| 久久久精品免费免费| 欧美老肥妇做.爰bbww| 国产精品18久久久久久久久久久久 | 亚洲国产综合色| 国产欧美日产一区| 日韩一区二区在线看片| 91老师片黄在线观看| 国产精品综合av一区二区国产馆| 一区二区三区在线观看网站| 久久久久久久精| 日韩限制级电影在线观看| 91捆绑美女网站| 国产高清一区日本| 美女视频黄久久| 亚洲一区二区免费视频| 中文字幕一区二区三区乱码在线| 久久亚洲精品小早川怜子| 91精品蜜臀在线一区尤物| 色狠狠色狠狠综合| 波多野结衣在线aⅴ中文字幕不卡| 国产一区二区主播在线| 麻豆免费精品视频| 亚洲成年人影院| 一区二区三区高清不卡| 中文字幕欧美国产| 国产女人18毛片水真多成人如厕| 日韩欧美一级精品久久| 日韩欧美国产wwwww| 欧美片网站yy| 8v天堂国产在线一区二区| 欧美伦理视频网站| 欧美精品久久久久久久久老牛影院| 在线这里只有精品| 欧美性做爰猛烈叫床潮| 色老汉一区二区三区| 欧美在线一二三| 欧美日韩免费在线视频| 欧美日韩国产高清一区二区| 欧美日韩中文字幕一区二区| 欧美片在线播放| 日韩欧美成人午夜| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 国产精品中文有码| 在线综合视频播放| 日韩免费视频一区| 国产日韩欧美激情| 国产精品国产三级国产专播品爱网 | 欧美一区二区国产| 欧美一区二区观看视频| 精品国产麻豆免费人成网站| 久久久另类综合| 国产精品情趣视频| 亚洲人快播电影网| 亚洲成人综合网站| 久久国产免费看| 国产成人免费av在线| 99热国产精品| 欧美性猛交xxxx乱大交退制版| 欧美精品一二三| 久久综合资源网| 成人免费一区二区三区在线观看| 一级女性全黄久久生活片免费| 亚洲国产一区在线观看| 蜜臀久久99精品久久久久久9| 国产精品亚洲成人| 日本韩国视频一区二区| 欧美人狂配大交3d怪物一区| 精品福利av导航| 综合色中文字幕| 青草国产精品久久久久久| 国产精品一卡二卡| 欧美性videosxxxxx| 精品国产乱码久久久久久免费| 国产精品丝袜黑色高跟| 午夜精品视频在线观看| 国产成都精品91一区二区三| 欧美三级电影在线看| 精品国产1区二区| 一片黄亚洲嫩模| 成人深夜在线观看| 欧美一区在线视频| 国产精品美女www爽爽爽| 日韩国产一二三区| 91免费观看在线| 精品国产一二三| 亚洲激情第一区| 成人在线一区二区三区| 欧美久久久久久久久中文字幕| 国产精品久久一卡二卡| 免费观看日韩av| 欧美日韩免费一区二区三区| 久久精品免费在线观看| 青青草97国产精品免费观看无弹窗版| 成人99免费视频| 久久精品夜色噜噜亚洲aⅴ| 天天色综合天天| 欧美视频在线播放| 1000精品久久久久久久久| 精彩视频一区二区三区| 5858s免费视频成人| 亚洲免费大片在线观看| 成人免费视频免费观看| 精品粉嫩超白一线天av| 天天色天天爱天天射综合| 色偷偷成人一区二区三区91 | 日韩欧美国产精品一区| 亚洲电影在线免费观看| 91免费版在线看| 国产精品久久久久久久久久久免费看| 国内久久婷婷综合| 欧美福利视频一区| 亚洲成av人片在线观看无码| 色噜噜久久综合| 亚洲免费三区一区二区| jizzjizzjizz欧美| 国产精品久久久久久久浪潮网站| 国内精品伊人久久久久av一坑| 日韩一区二区三区在线| 奇米在线7777在线精品| 欧美一区二区三区四区高清|