标题: 单片机P1.0和P1.7输出不同时间的定时器 [打印本页]

作者: hts2008222    时间: 2014-9-22 23:29
标题: 单片机P1.0和P1.7输出不同时间的定时器
ORG 00H;
START:   
      MOV TMOD,#10H; 设置Timer1工作在模式1下
      MOV R1,#50;     R1为重复定时计数器(R1=50,1s)(R1=100,2s)最大255
LOAD:  
      MOV TL1,#0E0H;  往TL1和TH1中载入计数的初始值B1E0H
      MOV TH1,#0B1H;
      SETB TR1;        启动Timer1
CHECK:
      JNB TF1,CHECK;   检测Timer1标志,当TF1=1,跳出执行下一行
      CLR TR1;          TR1清0  关闭Timer1
      CLR TF1;         将TF1清0
      DJNZ R1,LOAD;    如果R1≠0,跳回LOAD重新装载计数初始值
          CLR P1.7;
           MOV    R1,#10;(10s)
D1:           MOV    R2,#1;(1Min)
D2:    MOV    R3,#100 ;  延时子程序(1000ms)
D3:    MOV    R4,#20 ;
D4:    MOV    R5,#248;
       DJNZ   R5,$         ;
       DJNZ   R4,D4 ;
       DJNZ   R3,D3        ;
           DJNZ   R2,D2         ;
           DJNZ   R1,D1         ;
           SETB P1.7;
           MOV    R1,#30;(60s)
D5:           MOV    R2,#1;(10Min)
D6:    MOV    R3,#100 ;  延时子程序(1000ms)
D7:    MOV    R4,#20 ;
D8:    MOV    R5,#248;
       DJNZ   R5,$         ;
       DJNZ   R4,D8 ;
       DJNZ   R3,D7        ;
           DJNZ   R2,D6         ;
           DJNZ   R1,D5         ;
   SETB P1.0;  将P1.0口置高电平1,使LED灯灭
           MOV    R1,#1;(60s)
L1:           MOV    R2,#1;(10Min)
L2:    MOV    R3,#100 ;  延时子程序(1000ms)
L3:    MOV    R4,#20 ;
L4:    MOV    R5,#248;
       DJNZ   R5,$         ;
       DJNZ   R4,L4 ;
       DJNZ   R3,L3        ;
           DJNZ   R2,L2         ;
           DJNZ   R1,L1         ;
    CLR  P1.0;   将P1.0口置低电平0,使LED灯亮

       MOV    R1,#1;(60s)
L5:           MOV    R2,#1;(10Min)
L6:    MOV    R3,#100 ;  延时子程序(1000ms)
L7:    MOV    R4,#20 ;
L8:    MOV    R5,#248;
       DJNZ   R5,$         ;
       DJNZ   R4,L8 ;
       DJNZ   R3,L7        ;
           DJNZ   R2,L6         ;
           DJNZ   R1,L5         ;
           LJMP START;
       END;              程序结束(总延时1s)


作者: 明白    时间: 2014-9-23 08:52
支持一下,
P1.0输出频率永远是P1.7输出频率的两倍
P1.7的周期藏于P1.0高电平期间
作者: mqwu    时间: 2014-9-23 14:00
天生都没有学汇编,看不懂喔!
作者: hts2008222    时间: 2014-9-23 22:41
可以没学C啊,但我相信学得会简单的
作者: 雪中梅花    时间: 2014-9-26 15:10
学习了谢谢楼主




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1