⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 网上题目2.asm

📁 单片机的。实现C51单片机的流水线功能。渐亮。逐亮逐灭
💻 ASM
字号:
           ;单片机   AT89C51
           ;晶振频率是12MHZ
           ;P1口  红色发光二极管
           ;用51的P1口控制8个LED,1 点亮,0 熄灭。

           ;题目:第2,

           ;第1个亮1/8,第2个亮2/8,第3个亮3/8,第4个亮4/8,
           ;第5个亮5/8,第6个亮68,第7个亮78,第8个全亮

           ORG    0000H
           SJMP   MIAN           ;转主程序
           ORG    000BH
           SJMP   ZC1            ;转中断程序  T0
           ORG    001BH
           SJMP   ZC2            ;转中断程序  T1
           ORG   0030H

MIAN:      MOV   SP,    #60H           ;设堆栈指针
           MOV   TMOD,  #11H           ;定时器初始化,工作方式1. (65536)
           MOV   TH0,   #0FFH
           MOV   TL0,   #9CH           ;定时器T0定时0.1mS.
           MOV   TH1,   #0F6H
           MOV   TL1,   #3CH          ;定时器T1定时2.5ms
           MOV   IE,    #8AH
           MOV   R0,    #8
           SETB  TR1                   ;开定时器T1定时5ms
           CLR   TR0                   ;关定时器T0定时0.25ms
           MOV   P1,    #00H
           SJMP  $                     ;等带

ZC1:       DJNZ  R0,    L1             ;减1与0比较,不相等则转移,相等则继续执行.
           MOV   R0,   #8
           SJMP  L
L1:        CJNE  R0,    #7,   L2      ;比较两个操作数之大小,不为0则转移,相等则继续执行.
           MOV   P1,    #80H
           SJMP   L
L2:        CJNE  R0,    #6,   L3      ;比较两个操作数之大小,不相等则转移,相等则继续执行.
           MOV   P1,    #0C0H
           SJMP   L
L3:        CJNE  R0,    #5,   L4      ;比较两个操作数之大小,不相等则转移,相等则继续执行.
           MOV   P1,    #0E0H
           SJMP   L
L4:        CJNE  R0,    #4,   L5      ;比较两个操作数之大小,不相等则转移,相等则继续执行.
           MOV   P1,    #0F0H
           SJMP   L
L5:        CJNE  R0,    #3,   L6      ;比较两个操作数之大小,不相等则转移,相等则继续执行.
           MOV   P1,    #0F8H
           SJMP   L
L6:        CJNE  R0,    #2,   L7      ;比较两个操作数之大小,不相等则转移,相等则继续执行.
           MOV   P1,    #0FCH
           SJMP   L
L7:        CJNE  R0,    #1,   L8      ;比较两个操作数之大小,不相等则转移,相等则继续执行.
L8:        MOV   P1,    #0FEH
L:         MOV   TH0,   #0FFH
           MOV   TL0,   #9CH           ;定时器T0定时0.1mS.  
           CLR   TR0
           RETI

ZC2:       MOV   P1,    #0FFH
           MOV   TH1,   #0F6H
           MOV   TL1,   #3CH          ;定时器T1定时2.5ms       
           SETB  TR1
           SETB  TR0
           RETI









⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -