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

📄 3rgb.asm

📁 可变光路灯程序 条灯、 球灯编码跳渐变程序 正版 2003
💻 ASM
字号:
;=====================================================
;			 条灯下端软件; 
;                         航光开发部
;                        		    
;                         	
;======================================================     
;说明:
;	1.CPUTYPE=AT89S52	CRYSTAL=22.1184MHz
;======================================================
          org  0000h
          ljmp mmmm
          org  000BH ;定时器0
          LJMP ds0tb ;跳变
          org  001BH ;定时器1
          LJMP ds1jb ;渐变
mmmm:
          mov p3,#0ffh
          mov p1,#0ffh
          mov 67h,#254 ;r
          mov 68h,#2   ;g
          mov 69h,#2   ;b
          mov 6ch,#20
          mov r3,#0
          mov r2,#0
          mov r1,#0
          mov r4,#0
          mov r5,#0
          mov tmod,#11h
          mov th0,#0e0h
          mov tl0,#0e0h
          mov th1,#0ech
          mov tl1,#0f9h
          setb ea
          setb et0
          setb tr0
          setb et1
          clr tr1
          mov r3,p3
          mov a,r3
          anl a,#3fh
          mov r3,a
          cjne r3,#0,xz1
          mov 6ch,#20
          ljmp start

xz1: cjne r3,#1,xz2
     mov 6ch,#40
     ljmp start
xz2: cjne r3,#2,xz3
     mov 6ch,#60
     ljmp start
xz3: cjne r3,#3,xz4
     mov 6ch,#80
     ljmp start
xz4: cjne r3,#4,xz5
     mov 6ch,#100
     ljmp start
xz5: cjne r3,#5,xz6
     mov 6ch,#120
     ljmp start
xz6: cjne r3,#6,xz7
     mov 6ch,#140
     ljmp start
xz7: cjne r3,#7,xz8
     mov 6ch,#160
     ljmp start
xz8: cjne r3,#8,xz9
     mov 6ch,#180
     ljmp start ;********
xz9:  cjne r3,#9,xz11
     mov 6ch,#20
     mov r3,#0
     ljmp start
xz11:cjne r3,#10,xz12
     mov 6ch,#40
     mov r3,#1
     ljmp start
xz12: cjne r3,#11,xz13
     mov 6ch,#60
     mov r3,#2
     ljmp start
xz13: cjne r3,#12,xz14
     mov 6ch,#80
     mov r3,#3
     ljmp start
xz14: cjne r3,#13,xz15
     mov 6ch,#100
     mov r3,#4
     ljmp start
xz15: cjne r3,#14,xz16
     mov 6ch,#120
     mov r3,#5
     ljmp start
xz16: cjne r3,#15,xz17
     mov 6ch,#140
     mov r3,#6
     ljmp start
xz17: cjne r3,#16,xz18
     mov 6ch,#160
     mov r3,#7
     ljmp start
xz18: cjne r3,#17,xz19
     mov 6ch,#180
     mov r3,#8
     ljmp start  ;******
xz19:cjne r3,#18,xz21
     mov 6ch,#20
     mov r3,#0
     ljmp start
xz21: cjne r3,#19,xz22
     mov 6ch,#40
     mov r3,#1
     ljmp start
xz22: cjne r3,#20,xz23
     mov 6ch,#60
     mov r3,#2
     ljmp start
xz23: cjne r3,#21,xz24
     mov 6ch,#80
     mov r3,#3
     ljmp start
xz24: cjne r3,#22,xz25
     mov 6ch,#100
     mov r3,#4
     ljmp start
xz25: cjne r3,#23,xz26
     mov 6ch,#120
     mov r3,#5
     ljmp start
xz26: cjne r3,#24,xz27
     mov 6ch,#140
     mov r3,#6
     ljmp start
xz27: cjne r3,#25,xz28
     mov 6ch,#160
     mov r3,#7
     ljmp start
xz28: cjne r3,#26,xz29
     mov 6ch,#180
     mov r3,#8
     ljmp start  ;******
xz29: cjne r3,#27,xz31
     mov 6ch,#20
     mov r3,#0
     ljmp start
xz31: cjne r3,#28,xz32
     mov 6ch,#40
     mov r3,#1
     ljmp start
xz32: cjne r3,#29,xz33
     mov 6ch,#60
     mov r3,#2
     ljmp start
xz33: cjne r3,#30,xz34
     mov 6ch,#80
     mov r3,#3
     ljmp start
xz34: cjne r3,#31,xz35
     mov 6ch,#100
     mov r3,#4
     ljmp start
xz35: cjne r3,#32,xz36
     mov 6ch,#120
     mov r3,#5
     ljmp start
xz36: cjne r3,#33,xz37
     mov 6ch,#140
     mov r3,#6
     ljmp start
xz37: cjne r3,#34,xz38
     mov 6ch,#160
     mov r3,#7
     ljmp start
xz38: cjne r3,#35,xz39
     mov 6ch,#180
     mov r3,#8
     ljmp start ;******
xz39:cjne r3,#36,xz41
     mov 6ch,#20
     mov r3,#0
     ljmp start
xz41: cjne r3,#37,xz42
     mov 6ch,#40
     mov r3,#1
     ljmp start
xz42: cjne r3,#38,xz43
     mov 6ch,#60
     mov r3,#2
     ljmp start
xz43: cjne r3,#39,xz44
     mov 6ch,#80
     mov r3,#3
     ljmp start
xz44: cjne r3,#40,xz45
     mov 6ch,#100
     mov r3,#4
     ljmp start
xz45: cjne r3,#41,xz46
     mov 6ch,#120
     mov r3,#5
     ljmp start
xz46: cjne r3,#42,xz47
     mov 6ch,#140
     mov r3,#60
     ljmp start
xz47: cjne r3,#43,xz48
     mov 6ch,#160
     mov r3,#7
     ljmp start
xz48: cjne r3,#44,xz49
     mov 6ch,#180
     mov r3,#8
     ljmp start ;*****
xz49:cjne r3,#45,xz51
     mov 6ch,#20
     mov r3,#0
     ljmp start
xz51: cjne r3,#46,xz52
     mov 6ch,#40
     mov r3,#1
     ljmp start
xz52: cjne r3,#47,xz53
     mov 6ch,#60
     mov r3,#2
     ljmp start
xz53: cjne r3,#48,xz54
     mov 6ch,#80
     mov r3,#3
     ljmp start
xz54: cjne r3,#49,xz55
     mov 6ch,#100
     mov r3,#4
     ljmp start
xz55: cjne r3,#50,xz56
     mov 6ch,#120
     mov r3,#5
     ljmp start
xz56: cjne r3,#51,xz57
     mov 6ch,#140
     mov r3,#6
     ljmp start
xz57: cjne r3,#52,xz58
     mov 6ch,#160
     mov r3,#7
     ljmp start
xz58: cjne r3,#53,xz59
     mov 6ch,#180
     mov r3,#8
     ljmp start   ;****
xz59:cjne r3,#54,xz61
     mov 6ch,#20
     mov r3,#0
     ljmp start
xz61: cjne r3,#55,xz62
     mov 6ch,#40
     mov r3,#1
     ljmp start
xz62: cjne r3,#56,xz63
     mov 6ch,#60
     mov r3,#2
     ljmp start
xz63: cjne r3,#57,xz64
     mov 6ch,#80
     mov r3,#3
     ljmp start
xz64: cjne r3,#58,xz65
     mov 6ch,#100
     mov r3,#4
     ljmp start
xz65: cjne r3,#59,xz66
     mov 6ch,#120
     mov r3,#5
     ljmp start
xz66: cjne r3,#60,xz67
     mov 6ch,#140
     mov r3,#6
     ljmp start
xz67: cjne r3,#61,xz68
     mov 6ch,#160
     mov r3,#7
     ljmp start
xz68: cjne r3,#62,xz69
     mov 6ch,#180
     mov r3,#8
     ljmp start ;****
xz69: cjne r3,#63,stat
stat: mov 6ch,#40
     ;****************
start: mov 67h,#251
       mov 68h,#2
       mov 69h,#2
       mov r3,#1
start1:
       lcall fgcx
       ljmp start1

fgcx: clr p1.6
      clr p1.5
      clr p1.4
      setb p1.4 ;红
      lcall delyr
      clr p1.6
      clr p1.5
      clr p1.4
      setb p1.6 ;绿
      lcall delyg
      clr p1.6
      clr p1.5
      clr p1.4
      setb p1.5 ;蓝
      lcall delyb
      ret

;****************

delyr: mov 6ah,67h
  dr2: djnz 6ah,dr2
       ret
delyg: mov 6ah,68h
  dg2: djnz 6ah,dg2
       ret
delyb: mov 6ah,69h
  db2: djnz 6ah,db2
       ret

ds0tb:
   clr ea
   mov th0,#0e0h
   mov tl0,#0e0h
   inc r4
   mov a,r4
   cjne a,6ch,llp
   mov r4,#0

   cjne r3,#0,lp1
   mov 67h,#254
   mov 68h,#2
   mov 69h,#2
   mov 6ch,#60
   mov r3,#1
   ljmp lp

lp1: cjne r3,#1,lp2
   mov 67h,#2
   mov 68h,#254
   mov 69h,#2
   mov 6ch,#60     ;   100
   mov r3,#2
   ljmp lp

lp2: cjne r3,#2,lp3
   mov 67h,#2
   mov 68h,#2
   mov 69h,#254
   mov 6ch,#60    ;60
   mov r3,#3          ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3
   ljmp lp

lp3: cjne r3,#3,lp4
   mov 67h,#254
   mov 68h,#2
   mov 69h,#2
   mov 6ch,#60
   mov r3,#4
   ljmp lp

lp4: cjne r3,#4,lp5
   mov 67h,#2
   mov 68h,#254
   mov 69h,#2
   mov 6ch,#60
   mov r3,#5
llp: ljmp lp

lp5: cjne r3,#5,lp6
   mov 67h,#2
   mov 68h,#2
   mov 69h,#254
   mov 6ch,#60
   mov r3,#6
   ljmp lp

lp6: cjne r3,#6,lp7 ;*********
   mov 67h,#254
   mov 68h,#2
   mov 69h,#2
   mov 6ch,#60
   mov r3,#7
   ljmp lp

lp7: cjne r3,#7,lp8 ;*********
   mov 67h,#2
   mov 68h,#254
   mov 69h,#2
   mov 6ch,#60
   mov r3,#8
   ljmp lp

lp8: cjne r3,#8,lp9 ;*********
   mov 67h,#2
   mov 68h,#2
   mov 69h,#254
   mov 6ch,#60
   mov r3,#9
   ljmp lp
   ;********************
lp9: cjne r3,#9,lp10
   mov 67h,#254
   mov 68h,#2
   mov 69h,#2
   mov 6ch,#60
   mov r3,#10
   ljmp lp

lp10: cjne r3,#10,lp12
   mov 67h,#2
   mov 68h,#252
   mov 69h,#2
   mov 6ch,#60
   mov r3,#11
   ljmp lp

lp12: cjne r3,#11,lp13
   mov 67h,#2
   mov 68h,#2
   mov 69h,#252
   mov 6ch,#60
   mov r3,#12
   ljmp lp

lp13: cjne r3,#12,lp14
   mov 67h,#254
   mov 68h,#2
   mov 69h,#2
   mov 6ch,#60
   mov r3,#13
   ljmp lp

lp14: cjne r3,#13,lp15
   mov 67h,#2
   mov 68h,#254
   mov 69h,#2
   mov 6ch,#60
   mov r3,#14
   ljmp lp

lp15: cjne r3,#14,lp16
   mov 67h,#2
   mov 68h,#2
   mov 69h,#254
   mov 6ch,#60
   mov r3,#15
   ljmp lp

lp16: cjne r3,#15,lp17 ;*********
   mov 67h,#254
   mov 68h,#2
   mov 69h,#2
   mov 6ch,#60
   mov r3,#16
   ljmp lp

lp17: cjne r3,#16,lp18 ;*********
   mov 67h,#2
   mov 68h,#254
   mov 69h,#2
   mov 6ch,#60
   mov r3,#17
   ljmp lp

lp18: cjne r3,#17,lp101 ;*********
   mov 67h,#2
   mov 68h,#2
   mov 69h,#254
   mov 6ch,#60
   mov r3,#0
   inc r5
   cjne r5,#5,lp101
   mov r5,#0
   clr tr0
   setb tr1
lp:
lp101: setb ea
   reti

ds1jb: clr ea
   mov th1,#0f1h     ;;;e
   mov tl1,#0f9h
   inc r4
   cjne r4,#2,llpj    ;;;;2
   mov r4,#0

   cjne r3,#0,lp1j
   inc 69h
   mov r2,69h
   cjne r2,#251,llpj
   mov r3,#1
   ljmp llpj

lp1j: cjne r3,#1,lp2j
   dec 67h
   mov r2,67h
   cjne r2,#1,llpj
   mov r3,#2
   ljmp llpj

lp2j: cjne r3,#2,lp3j
   inc 68h
   mov r2,68h
   cjne r2,#251,llpj
   mov r3,#3
   ljmp llpj

lp3j: cjne r3,#3,lp4j
   dec 69h
   mov r2,69h
   cjne r2,#1,lpj
   mov r3,#4
   ljmp lpj

lp4j: cjne r3,#4,lp5j
   inc 67h
   mov r2,67h
   cjne r2,#251,lpj
   mov r3,#5
llpj: ljmp lpj

lp5j: cjne r3,#5,lp6j
   dec 68h
   mov r2,68h
   cjne r2,#1,llpj
   mov r3,#6
   ljmp llpj

lp6j: cjne r3,#6,lp7j ;*********
   inc 69h
   inc 68h
   mov r2,69h
   cjne r2,#251,llpj
   mov r3,#7
   ljmp llpj

lp7j: cjne r3,#7,lp8j ;*********
   dec 68h
   dec 67h
   mov r2,68h
   cjne r2,#1,lpj
   mov r3,#8
   ljmp lpj

lp8j: cjne r3,#8,lpj ;*********
   dec 69h
   inc 67h
   mov r2,69h
   cjne r2,#1,lpj
   mov r3,#0
   mov 67h,#251
   mov 68h,#2
   mov 69h,#2
   inc r5
   cjne r5,#5,lpj
   mov r5,#0
   clr tr1
   setb tr0
lpj: setb ea
   reti


end

⌨️ 快捷键说明

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