📄 os_taskattemper.asm
字号:
/* $$$$$$$$$$$$$$$$$$ Copyrigth (c) $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
File name: OS_TaskAttemper.asm
Function describe: system start entrance; timer 0 interrupt function
Compiler: Keil uVision2
Version: 1.01
Programmer: Shawyoo
最近修改日期:20040729
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
If you want to use standard main function,please change the
const "USER_ENTRANCE=0"
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ */
name OS_TaskAttemper
USER_ENTRANCE equ 1 ;;//
;;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
IF(USER_ENTRANCE)
extrn code(OSStart);
cseg at 0000h;
nop;
ljmp OSStart;
ENDIF
;;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
;;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
;; #include <Tick.h>
;; extrn number(T0H_INIT_VAL,T0L_INIT_VAL)
T0H_INIT_VAL equ 0dch
T0L_INIT_VAL equ 00h
extrn data(osTick);
extrn code(OSTaskSwitch);
;;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
cseg at 000BH; ;;// Timer 0 interrupt entrance
nop;
nop;
ajmp OSTaskAttemper;
;;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
public ForceTaskSwitch;
cseg at 0050H;
OSTaskAttemper: nop;
nop;
push ACC;
clr IT0;
clr TR0;
mov a,TMOD;
orl a,#01h;
mov TMOD,a;
mov TH0,#T0H_INIT_VAL;
mov TL0,#T0L_INIT_VAL;
setb TR0; ;;// restart timer0
nop;
;;//////////////////////
inc osTick+1; ;;// OS tick counter
mov a,osTick+1;
jnz NoCarry;
inc osTick;
;;//////////////////////
NoCarry: pop ACC;
setb EA;
ForceTaskSwitch: nop;
ljmp OSTaskSwitch;
;;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
public TaskSwitchReturn;
public InterruptReturn;
InterruptReturn:
TaskSwitchReturn: nop;
nop;
reti;
;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
END
;// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ End of file
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -