51单片机定时器(汇编)

简介: 笔记

实验内容

定时器控制流水灯的速度,但流水灯到边缘的时候,自动调整方向,先反方向继续流动

  1. 使用的是 定时器0
  ORG   0000H
  LJMP  MIAN
  ORG   000BH
  LJMP  T0_break
  ORG   0200H
INIT:
  MOV   TMOD,#01H ;定时器0为方式1
  ;定时器0计时100us
  MOV   TL0,#0B0H
  MOV   TH0,#3CH
  SETB  ET0
  ;开启总中断
  SETB  EA
  RET
MIAN:
  LCALL   INIT
  ACALL PS0
LOOP: 
  JMP   LOOP
PS0:
  MOV   R5,#0EFH
  MOV   R4,#0AH
  MOV   P2,#0FFH
  CPL   TR0
  RET
T0_1:
  RETI
Inv_C:
  CPL   C
  LJMP  D2
  RET
T0_L:
  RR    A
  MOV   R5,A
  CPL   P1.5
  RETI
T0_break:
  ;重新装载初始值
  MOV   TL0,#0B0H
  MOV   TH0,#3CH
  ;每10次流动一次
  DJNZ  R4,T0_1;
  MOV   R4,#0AH
  MOV   P2,R5;
  MOV   A,R5
  ;判断是否反向
  JNB   P2.7, Inv_C 
  JNB   P2.0, InV_C
D2: JC    T0_L
  RL    A
  MOV   R5,A
  CPL   P1.5
  RETI
end

Thank for your reading!!!!

公众号:FPGA之旅

目录
相关文章
|
6月前
|
数据处理
MCS-51单片机汇编语言程序设计
MCS-51单片机汇编语言程序设计
168 0
|
3月前
51单片机用汇编语言实现独立按键检测,每个按键有不同功能,包含按键消抖程序
51单片机用汇编语言实现独立按键检测,每个按键有不同功能,包含按键消抖程序
104 3
|
3月前
【51单片机】通过定时器中断 在8位数码管显示时间
【51单片机】通过定时器中断 在8位数码管显示时间
|
3月前
|
C语言
51单片机汇编语言流水灯代码
51单片机汇编语言流水灯代码
|
3月前
|
C语言
【51单片机】用汇编语言实现点灯、闪烁
【51单片机】用汇编语言实现点灯、闪烁
|
3月前
51单片机汇编语言点亮一位数码管,并计时(超详细分析汇编语言)
51单片机汇编语言点亮一位数码管,并计时(超详细分析汇编语言)
140 0
|
3月前
|
算法
51单片机不用定时器的数码管倒计时
51单片机不用定时器的数码管倒计时
|
6月前
|
存储 移动开发
单片机----汇编语言入门知识点
单片机----汇编语言入门知识点
133 2
定时器+按键控制LED流水灯模式+定时器时钟——“51单片机”
定时器+按键控制LED流水灯模式+定时器时钟——“51单片机”