51单片机定时器与中断的程序设计

51单片机定时器与中断的程序设计,第1张

P2.0~P2.2 分别接上了独立按键 K0、K1、K2。

P1 接上了 8 个 LED,输出低电平时发光。

要求:

按下 K1 键,P1.7 输出周期为 1s 的方波;

按下 K2 键,P1 输出循环流水灯,每 2 个灯亮 0.5s;

按下 K0 键,停止方波和流水灯的输出。

51单片机定时器与中断的程序设计,第2张

;-----------------------------------------

;

ORG   0000H

JMP   START

ORG   000BH

;    JMP   T0_INT

T0_INT:

MOV   TH0, #(65536 - 50000) / 256

MOV   TL0, #(65536 - 50000) MOD 256

DJNZ  R2, T0_END

MOV   R2, #10

JNB   F0, T0_2

ORL   P1, #127

CPL   P1.7

T0_END:

RETI

T0_2:

RL    A

MOV   P1, A

RETI    

;-----------------------------------------

START:

MOV   TMOD, #01H

MOV   TH0, #(65536 - 50000) / 256

MOV   TL0, #(65536 - 50000) MOD 256

MOV   IE, #82H

MOV   A, #63

MOV   R2, #10

SETB  TR0

K1:

JB    P2.1, K2

SETB  F0

SETB  TR0

K2:

JB    P2.2, K0

CLR   F0

SETB  TR0

K0:

JB    P2.0, K1

CLR   TR0

SJMP  K1

END

;-----------------------------------------

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2639388.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-12
下一篇 2022-08-12

发表评论

登录后才能评论

评论列表(0条)

保存