高级会员
主题
回帖0
积分4221
阅读权限30
注册时间2011-7-20
最后登录1970-1-1
在线时间 小时
|
試試看:
stack equ 80h
out_data reg 20h
out1_data reg 21h
out2_data reg 22h
org 0h
jmp start
org 03h
jmp p1_pro
org 0bh
jmp timer0
org 93h
jmp p2_pro
org 100h
start:
mov sp,#stack
call SET_8031_MODE
mov out_data,#feh
main_lop:
mov a,out_data
mov p0,a
mov a,out1_data
mov p1,a
mov a,out2_data
mov p2,a
jmp main_lop
;------------------------------------------------------
SET_8031_MODE: ;
MOV IE,#00010010B ;
MOV IP,#00010000B ;
MOV TMOD,#21H ;
MOV TCON,#50H ;
MOV PCON,#80H ;
MOV SCON,#50H ;
MOV TH1,#FdH ;
MOV TL1,#00H ;
MOV TH0,#>(65536-30000) ;
MOV TL0,#<(65536-30000) ;
MOV PSW,#0H ;
RET
;---------------------------------------------------------------
;/ TIMER0 : INTERRUPT PROGRAM
;/--------------------------------------------------------------
timer0: ;
MOV TH0,#>(65536-50000)
MOV TL0,#<(65536-50000)
inc b
mov a,b
jnz timer0_end
mov a,out_data
rr a
mov out_data,a
timer0_end:
RETI
p1_pro:
mov a,out1_data
rl a
mov out1_data,a
RETI
p2_pro:
mov a,out2_data
inc a
mov out2_data,a
RETI |
|