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

📄 0000000.asm

📁 汇编语言写的流水灯程序,已调试通过,使用的是51单片机.
💻 ASM
字号:
;2051单片机P3口的低4位做流水灯输出,分三种方式点亮,-----S1 控制点亮;
      org 00h
start: mov a,#0ffh
      mov p3,a
      mov 20h,#00h
     
 
 key :mov p3,#0ffh
      mov a,#11110111b   ;P2.3=0,扫描S1键;
      mov p2,a
      mov a,p2
      jnb acc.4,setm    ;若P2.4=0,说明S1被按下,转setm
      ajmp st
setm: lcall de5ms
      mov a,p2
      jnb acc.4,st
      ajmp key
      
   st: setb 00h
lamp :mov a,#0ffh
      mov p3,a
      jb 00h,fun0
      jb 01h,fun1
      jb 02h,fun2
      ajmp lamp
 fun0:mov r5,#12   ;逐次点亮
loop0:mov a,#0f0h
      mov p3,a
      call delay
      mov a,#0feh
loop00:mov p3,a
      call delay
      jnb acc.3,loop0
      rl a
      anl a,p3
      orl a,#0f0h
      djnz r5,loop00
  mm0:clr 00h
      setb 01h
      ljmp lamp
fun1 :mov a,#0f0h    ;间隔点亮
      mov p3,a
      call delay
      mov r7,#12
loop1:mov a,#0feh
loop11:mov p3,a
      call delay
      jnb acc.3,loop1
      rl a
      djnz r7,loop11
  mm1:clr 01h
      setb 02h
      ljmp lamp

 fun2:mov r6,#12         ;轮流点亮
      mov a,#0f0h
      mov p3,a
      call delay
loop2:mov a,#0fah
loop22:mov p3,a
      call delay
      cpl a
      orl a,#0f0h
      mov p3,a
      djnz r6,loop22
  mm2: clr 02h
      setb 00h
      ljmp key
 de5ms:mov r5,#60       ;5ms
       x1:mov r4,#248
          djnz r4,$
          djnz r5,x1
          ret
 delay:mov r2,#50
   d1:mov r1,#20
   d2:mov r3,#248
      djnz r3,$
      djnz r1,d2
      djnz r2,d1
      ret
      end

⌨️ 快捷键说明

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