脉冲计数器仿真失败,高手帮我看看吧


在89C51的P2和P1口接了4个数码管,是4个BCD数码管,每个数码管有4个引脚。比如P2.7~P2.4=1110,则最高位数码管显示“E”。
T0脚接入频率为50KHz的信号,令T1定时1s。数码管应该显示“C358”,结果不对。请高手帮我看看是什么原因啊!


org 0
sjmp star
org 1bh
sjmp t1s
star:mov tmod,#15  ;T0计数,方式1,T1定时,方式1
     mov r7,#20
     mov th0,#0
     mov tl0,#0
     mov th1,#3ch
     mov tl1,#0b0h
     setb pt1      ;T1为高优先级
     mov ie,#8dh   ;开所有中断,开T1中断,关T0中断
     mov p2,#0
     mov p1,#0
     setb tr0      ;启动T0计数
     setb tr1
     mov r7,#20
st1:mov p1,tl0
     mov p2,th0
     sjmp st1
t1s:mov th1,#3ch
    mov tl1,#0b0h
    djnz r7,t1s0
    clr tr0
    mov p2,th0
    mov p1,tl0
    clr tr1
t1s0:
    reti
    end