×
单片机 > 单片机程序设计 > 详情

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

发布时间:2020-12-22 发布时间:
|

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

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


要求:

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

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

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

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

;

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

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

关键字:51单片机  定时器  中断

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Keil(MDK-ARM)系列教程(七)_菜单