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

📄 time_relay.l

📁 一个时间继电器程序,是用三星单片机+汇编语言写的.
💻 L
📖 第 1 页 / 共 5 页
字号:
  908  07AE              KEY_DEC1
  909  07AE   26 69 01           SUB KEY_DP,#01H
  910  07B1   7B 03              JR  C,KEY_DEC2
  911  07B3   8D 07 E0           JP  KEY_DEC_EXIT
  912  07B6              KEY_DEC2
  913  07B6   E6 69 09           LD  KEY_DP,#09H
  914  07B9              KEY_GW_DEC        
  915  07B9   26 6A 01           SUB KEY_GW,#01H
  916  07BC   7B 03              JR  C,KEY_DEC3
  917  07BE   8D 07 E0           JP  KEY_DEC_EXIT
  918  07C1              KEY_DEC3
  919  07C1   E6 6A 05           LD  KEY_GW,#05H
  920  07C4              KEY_SW_DEC
  921  07C4   26 6B 01           SUB KEY_SW,#01H
  922  07C7   7D 07 CD           JP  C,KEY_DEC4
  923  07CA   8D 07 E0           JP  KEY_DEC_EXIT
  924  07CD              KEY_DEC4
  925  07CD   E6 6B 09           LD  KEY_SW,#09H
  926  07D0              KEY_BW_DEC
  927  07D0   26 6C 01           SUB KEY_BW,#01H
  928  07D3   7B 03              JR  C,KEY_DEC5
  929  07D5   8D 07 E0           JP  KEY_DEC_EXIT
  930  07D8              KEY_DEC5 
  931  07D8   B0 69              CLR  KEY_DP
  932  07DA   B0 6A              CLR  KEY_GW
  933  07DC   B0 6B              CLR  KEY_SW
  934  07DE   B0 6C              CLR  KEY_BW
  935  07E0              KEY_DEC_EXIT
  936  07E0   E6 0F 0A           LD  T_300MS_TEMP,#10
  937  07E3   E6 14 0A           LD  T_3S_TEMP,#10
  938  07E6   A6 15 55           CP  T_3S_FLAG,#55H
  939  07E9   EB 1A              JR  NE,KEY_DEC_EXIT_1
  940                    ;****************300ms FLAG****************
  941  07EB              KEY_DEC_EXIT_0
  942  07EB   76 E2 02           TM   P2,#00000010B
  943  07EE   6B 06              JR  Z,KEY_DEC_EXIT_300MS
  944  07F0   E6 15 AA           LD  T_3S_FLAG,#0AAH
  945  07F3   8D 03 51           JP  T,TIME   
  946  07F6              KEY_DEC_EXIT_300MS
  947  07F6   A6 0B 55           CP  T_10MS_FLAG,#55H
  948  07F9   EB FB              JR  NE,KEY_DEC_EXIT_300MS
  949  07FB   E6 0B AA           LD  T_10MS_FLAG,#0AAH
  950  07FE   00 0F              DEC T_300MS_TEMP
  951  0800   EB E9              JR  NZ,KEY_DEC_EXIT_0
  952  0802   8D 03 51           JP  T,TIME  
  953                    ;****************3s  FLAG****************
  954  0805              KEY_DEC_EXIT_1
  955  0805   76 E2 02           TM   P2,#00000010B
  956  0808   6B 06              JR   Z,KEY_DEC_EXIT_3S
  957  080A   E6 15 AA           LD   T_3S_FLAG,#0AAH
  958  080D   8D 03 51           JP   T,TIME 
  959  0810              KEY_DEC_EXIT_3S
  960  0810   A6 0E 55           CP   T_100MS_FLAG,#55H
  961  0813   EB FB              JR   NE,KEY_DEC_EXIT_3S
  962  0815   E6 0E AA           LD   T_100MS_FLAG,#0AAH
  963  0818   00 14              DEC  T_3S_TEMP
  964  081A   EB E9              JR   NZ,KEY_DEC_EXIT_1
  965  081C   E6 15 55           LD   T_3S_FLAG,#55H
  966  081F   8D 03 51           JP   T,TIME 
  967                    ;******************加减同时按下进入复位状态************
  968  0822              KEY_ADD_DEC 
  969  0822   76 E2 02           TM   P2,#00000010B
  970  0825   ED 03 51           JP   NZ,TIME
  971  0828   E4 33 26           LD   DIS_DP,KEY_DP_TIME_POSITIVE
  972  082B   E4 34 27           LD   DIS_GW,KEY_GW_TIME_POSITIVE
  973  082E   E4 35 28           LD   DIS_SW,KEY_SW_TIME_POSITIVE
  974  0831   E4 36 29           LD   DIS_BW,KEY_BW_TIME_POSITIVE
  975  0834   E4 33 62           LD   KEY_DP1,KEY_DP_TIME_POSITIVE
  976  0837   E4 34 63           LD   KEY_GW1,KEY_GW_TIME_POSITIVE
  977  083A   E4 35 64           LD   KEY_SW1,KEY_SW_TIME_POSITIVE
  978  083D   E4 36 65           LD   KEY_BW1,KEY_BW_TIME_POSITIVE
  979  0840   E4 33 69           LD   KEY_DP,KEY_DP_TIME_POSITIVE
  980  0843   E4 34 6A           LD   KEY_GW,KEY_GW_TIME_POSITIVE
  981  0846   E4 35 6B           LD   KEY_SW,KEY_SW_TIME_POSITIVE
  982  0849   E4 36 6C           LD   KEY_BW,KEY_BW_TIME_POSITIVE
  983  084C   8D 08 79           JP   T,KEY_ADD_DEC_EXIT
  984  084F              KEY_DEC_ADD 
  985  084F   76 E2 04           TM   P2,#00000100B
  986  0852   ED 03 51           JP   NZ,TIME
  987  0855   E4 33 26           LD   DIS_DP,KEY_DP_TIME_POSITIVE
  988  0858   E4 34 27           LD   DIS_GW,KEY_GW_TIME_POSITIVE
  989  085B   E4 35 28           LD   DIS_SW,KEY_SW_TIME_POSITIVE
  990  085E   E4 36 29           LD   DIS_BW,KEY_BW_TIME_POSITIVE
  991  0861   E4 33 62           LD   KEY_DP1,KEY_DP_TIME_POSITIVE
  992  0864   E4 34 63           LD   KEY_GW1,KEY_GW_TIME_POSITIVE
  993  0867   E4 35 64           LD   KEY_SW1,KEY_SW_TIME_POSITIVE
  994  086A   E4 36 65           LD   KEY_BW1,KEY_BW_TIME_POSITIVE
  995  086D   E4 33 69           LD   KEY_DP,KEY_DP_TIME_POSITIVE
  996  0870   E4 34 6A           LD   KEY_GW,KEY_GW_TIME_POSITIVE
  997  0873   E4 35 6B           LD   KEY_SW,KEY_SW_TIME_POSITIVE
  998  0876   E4 36 6C           LD   KEY_BW,KEY_BW_TIME_POSITIVE    
  999  0879              KEY_ADD_DEC_EXIT 
 1000  0879   76 E2 04           TM   P2,#00000100B
 1001  087C   6D 08 79           JP   Z,KEY_ADD_DEC_EXIT
 1002  087F   76 E2 02           TM   P2,#00000010B
 1003  0882   6D 08 79           JP   Z,KEY_ADD_DEC_EXIT 
 1004  0885   8D 03 51           JP   T,TIME   
 1005                    ;****************移位*******************
 1006  0888              KEY_MOV
 1007  0888   A6 04 00           CP   KEY_ENTER,#00H
 1008  088B   6D 08 98           JP   EQ,KEY_MOV_EXIT      ;不动作退出 
 1009  088E              KEY_MOV_1
 1010  088E   20 66              INC   KEY_MOV_FLAG       ;代表加位标志 
 1011  0890   A6 66 04           CP    KEY_MOV_FLAG,#04H
 1012  0893   7D 08 98           JP    ULT,KEY_MOV_EXIT
 1013  0896   B0 66              CLR   KEY_MOV_FLAG
 1014  0898              KEY_MOV_EXIT 
 1015  0898   76 E2 01           TM   P2,#00000001B
 1016  089B   6B FB              JR   Z,KEY_MOV_EXIT       
 1017  089D   8D 03 51           JP   T,TIME
 1018                    ;****************EXIT*******************
 1019  08A0              KEY_EXIT
 1020  08A0   8D 03 51           JP  T,TIME
 1021                    ;*************************数码管显示程序**************************
 1022  08A3              DISPLAY3
 1023  08A3   A6 25 0A           CP   DIS_CP1,#0AH
 1024  08A6   EB 05              JR   NE,DISPLAY1
 1025  08A8   3C 2A              LD   R3,#2AH    ;DIS_BUF_DP
 1026  08AA   E6 4F 2A           LD   DISPLAY_CNT,#2AH
 1027  08AD              DISPLAY1
 1028  08AD   00 25              DEC  DIS_CP1
 1029  08AF   38 4F              LD   R3,DISPLAY_CNT
 1030  08B1   E6 44 08           LD   CNT,#08H
 1031  08B4   4C 00              LD   R4,#00H
 1032  08B6   C7 53              LD   R5,@R3
 1033  08B8   20 4F              INC  DISPLAY_CNT
 1034  08BA   A7 04 0E 0A        LDC  R0,#LED_TABLE[RR4]
 1035                          ;  LD   P2CONL,#10100110B	; P2.0–P2.6 push-pull output P2。0推挽式输出 
 1036  08BE   56 E0 F7           AND  P0,#11110111B      ;关掉数码管 
 1037  08C1   46 E2 08           OR   P2,#00001000B      ;关发光二极管 
 1038  08C4              NEXT1        
 1039  08C4   10 C0              RLC  R0
 1040  08C6   46 E0 10           OR   P0,#00010000B         ;发送数据 
 1041  08C9   7B 03              JR   C,NEXT2
 1042  08CB   56 E0 EF           AND  P0,#11101111B
 1043  08CE              NEXT2
 1044  08CE   FF                 NOP
 1045  08CF   FF                 NOP
 1046  08D0   56 E0 DF           AND  P0,#11011111B         ;发送时钟 
 1047  08D3   FF                 NOP
 1048  08D4   FF                 NOP
 1049  08D5   46 E0 20           OR   P0,#00100000B
 1050  08D8   00 44              DEC  CNT
 1051  08DA   EB E8              JR   NZ,NEXT1
 1052  08DC   A6 25 06           cp   DIS_CP1,#6  ;8
 1053  08DF   6D 09 12           jp   eq,DIS1
 1054  08E2   A6 25 07           cp   DIS_CP1,#7  ;7
 1055  08E5   6D 09 19           jp   eq,DIS2
 1056  08E8   A6 25 08           cp   DIS_CP1,#8  ;6
 1057  08EB   6D 09 20           jp   eq,DIS3
 1058  08EE   A6 25 09           CP   DIS_CP1,#9   ;5
 1059  08F1   6D 09 27           Jp   eq,DIS4
 1060  08F4   A6 25 01           CP   DIS_CP1,#1
 1061  08F7   6D 09 47           JP   EQ,KEY_LED1
 1062  08FA   A6 25 02           CP   DIS_CP1,#2
 1063  08FD   6D 09 2E           JP   EQ,KEY_DIS1
 1064  0900   A6 25 03           CP   DIS_CP1,#3
 1065  0903   6D 09 35           JP   EQ,KEY_DIS2
 1066  0906   A6 25 04           CP   DIS_CP1,#4
 1067  0909   6D 09 3C           JP   EQ,KEY_DIS3
 1068  090C   A6 25 05           CP   DIS_CP1,#5
 1069  090F   6D 09 43           JP   EQ,KEY_DIS4
 1070  0912              DIS1
 1071  0912   56 E0 F8           AND  P0,#11111000B    ;Y0为低电平 
 1072  0915   46 E0 08           OR     P0,#00001000B          ;开数码管 
 1073  0918   AF                 RET
 1074  0919              DIS2 
 1075  0919   56 E0 F9           AND  P0,#11111001B
 1076  091C   46 E0 09           OR   P0,#00001001B    ;Y1为低电平 
 1077                            ;OR   P0,#00001000B      ;开数码管 
 1078  091F   AF                 RET
 1079  0920              DIS3
 1080  0920   56 E0 FA           AND  P0,#11111010B
 1081  0923   46 E0 0A           OR   P0,#00001010B     ;Y2为低电平 
 1082                            ;OR   P0,#00001000B      ;开数码管 
 1083  0926   AF                 RET
 1084  0927              DIS4
 1085  0927   56 E0 FB           AND  P0,#11111011B
 1086  092A   46 E0 0B           OR   P0,#00001011B    ;Y3为低电平 
 1087                           ; OR   P0,#00001000B     ;开数码管 
 1088  092D   AF                 RET
 1089  092E              KEY_DIS1
 1090  092E   56 E0 FC           AND  P0,#11111100B
 1091  0931   46 E0 0C           OR   P0,#00001100B    ;Y4为低电平 
 1092                           ; OR   P0,#00001000B      ;开数码管         
 1093  0934   AF                 RET
 1094  0935              KEY_DIS2
 1095  0935   56 E0 FD           AND  P0,#11111101B
 1096  0938   46 E0 0D           OR   P0,#00001101B    ;Y5为低电平 
 1097                            ;OR   P0,#00001000B      ;开数码管 
 1098  093B   AF                 RET
 1099  093C              KEY_DIS3
 1100  093C   56 E0 FE           AND  P0,#11111110B
 1101  093F   46 E0 0E           OR   P0,#00001110B    ;Y6为低电平 
 1102                            ;OR   P0,#00001000B      ;开数码管 
 1103  0942   AF                 RET
 1104  0943              KEY_DIS4
 1105  0943   46 E0 0F           OR   P0,#00001111B     ;Y7为低电平       
 1106                           ; OR   P0,#00001000B      ;开数码管 
 1107  0946   AF                 RET
 1108  0947              KEY_LED1
 1109  0947   56 E2 F7           AND   P2,#11110111B
 1110  094A   E6 4F 2A           LD   DISPLAY_CNT,#2AH
 1111  094D   E6 25 0A           LD   DIS_CP1,#0AH
 1112  0950   AF                 RET                    
 1113                    ;****************************I2CSTAR********************************** 
 1114                    ;本程序实现在虚拟I2C总线上发送起始位。
 1115                    ;入口参数:无
 1116                    ;出口参数:无 
 1117  0951              I2CSTAR
 1118  0951   E6 E6 8A           LD     P0CONH,#10001010B    ;P0输出
 1119  0954   E6 EA 4A           LD     P2CONH,#01001010B    ;P2输出 
 1120  0957   46 E2 40           OR     P2,#01000000B        ;SDA置位 
 1121  095A   46 E0 80           OR     P0,#10000000B        ;SCL置位 
 1122  095D   FF                 NOP
 1123  095E   FF                 NOP
 1124  095F   FF                 NOP
 1125  0960   56 E2 BF           AND    P2,#10111111B         ;SDA清零        
 1126  0963   FF                 NOP
 1127  0964   FF                 NOP 
 1128  0965   FF                 NOP
 1129  0966   56 E0 7F           AND    P0,#01111111B        ;SCL清零 
 1130  0969   AF                 RET
 1131                    ;****************************I2CSTOP********************************** 
 1132                    ;本程序实现在虚拟I2C总线上发送结束位。
 1133                    ;入口参数:无
 1134                    ;出口参数:无 
 1135  096A              I2CS

⌨️ 快捷键说明

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