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

📄 uvi_4245 nov 08 08.lst

📁 一个测试紫外钱的程序源码
💻 LST
📖 第 1 页 / 共 4 页
字号:
   955 00251 1EB0          		LJMP		POWER_RET
   955 00252 0257          		LJMP		POWER_RET
   956                     		
   957 00253               POWER_TEST2B:
   958 00253 18F1          		MOV			A,@0XF1			;2.5/2.63*255=242
   959 00254 0110          		SUB			A,TEMP1
   960 00255 0E03          		JBS			STATUS,C
   961 00256 0897          		BC			PRST,FBAT		;小于242表示电池电压大于2.63V
   962                     		
   963 00257               POWER_RET:
   964 00257 18E2          		MOV			A,@0XE2
   965 00258 0048          		MOV			PORT8,A
   966 00259 0012          		RET
   967                     		
   968                     ;==========================================================UVI AND	D_TIME	倒计时和UVI显示
   969 0025A               UV_SHORT_M:
   970 0025A 1E01          		BANK		1
   971 0025B 1800          		MOV			A,@0X00
   972 0025C 004E          		MOV			EIMR,A
   973                     		
   974 0025D 1E00          	 	BANK		0
   975 0025E 093D          	 	BC			FLAG2,SET_MODE_FLAG
   976 0025F 1864          	 	MOV			A,@0X64
   977 00260 0069          		MOV			SHORT_COUNT,A
   978                     
   979 00261               UV_SHORT_DIS:
   980 00261 1E00          		BANK		0
   981 00262 00D6          		CLR			FLAG
   982 00263 0D97          		JBC			PRST,FSEC
   983 00264 1EB0          		LJMP		UV_SHORT_DIS_ON
   983 00265 026D          		LJMP		UV_SHORT_DIS_ON
   984                     	
   985 00266               UV_SHORT_DIS_OFF:
   986 00266 180A          		MOV			A,@0X0A
   987 00267 0052          		MOV			DIS1,A
   988 00268 0053          		MOV			DIS2,A
   989 00269 0054          		MOV 		DIS3,A
   990 0026A 0055          		MOV			DIS4,A
   991 0026B 1EB0              	LJMP		UV_SHORT_DIS_OUT
   991 0026C 0291              	LJMP		UV_SHORT_DIS_OUT
   992                     		
   993 0026D               UV_SHORT_DIS_ON:
   994 0026D 08D6          		BC			FLAG,FDDIS
   995 0026E 0A16          		BS			FLAG,FDOTDIS
   996 0026F 180A          		MOV			A,@0X0A
   997 00270 0055          		MOV			DIS4,A
   998 00271 00D2          		CLR			DIS1
   999 00272 00D3          		CLR			DIS2
  1000 00273 00D4          		CLR			DIS3
  1001                     		
  1002 00274 042B          		MOV			A,UVIMAX
  1003 00275 0050          		MOV			TEMP1,A
  1004                     	
  1005 00276               UV_SHORT_DIS1:
  1006 00276 1864          		MOV			A,@0X64
  1007 00277 0110          		SUB			A,TEMP1
  1008 00278 0E03          		JBS			STATUS,C
  1009 00279 1EB0          		LJMP		UV_SHORT_DIS2
  1009 0027A 027F          		LJMP		UV_SHORT_DIS2
  1010                     		
  1011 0027B 0050          		MOV			TEMP1,A
  1012 0027C 0552          		INC			DIS1
  1013 0027D 1EB0          		LJMP		UV_SHORT_DIS1
  1013 0027E 0276          		LJMP		UV_SHORT_DIS1
  1014                     	
  1015 0027F               UV_SHORT_DIS2:
  1016 0027F 180A          		MOV			A,@0X0A
  1017 00280 0110          		SUB			A,TEMP1
  1018 00281 0E03          		JBS			STATUS,C
  1019 00282 1EB0          		LJMP		UV_SHORT_DIS3
  1019 00283 0288          		LJMP		UV_SHORT_DIS3
  1020                     		
  1021 00284 0050          		MOV			TEMP1,A
  1022 00285 0553          		INC			DIS2
  1023 00286 1EB0          		LJMP		UV_SHORT_DIS2
  1023 00287 027F          		LJMP		UV_SHORT_DIS2
  1024                     	
  1025 00288               UV_SHORT_DIS3:
  1026 00288 0410          		MOV			A,TEMP1
  1027 00289 0054          		MOV			DIS3,A
  1028                     	
  1029 0028A 1801          		MOV			A,@0X01
  1030 0028B 0112          		SUB			A,DIS1
  1031 0028C 0C03          		JBC			STATUS,C
  1032 0028D 1EB0          		LJMP		UV_SHORT_DIS_OUT
  1032 0028E 0291          		LJMP		UV_SHORT_DIS_OUT
  1033                     	
  1034 0028F 180A          		MOV			A,@0X0A
  1035 00290 0052          		MOV			DIS1,A
  1036                     	
  1037 00291               UV_SHORT_DIS_OUT:
  1038 00291 1E00          		BANK		0
  1039 00292 1EA0          		LCALL		SEG_COM
  1039 00293 00D6          		LCALL		SEG_COM
  1040 00294 1EA0          		LCALL		COM_RAM
  1040 00295 00BB          		LCALL		COM_RAM
  1041                     
  1042 00296               WAIT1:	
  1043 00296 1E00          		BANK		0
  1044 00297 0F17          		JBS			PRST,F50MS
  1045 00298 1EB0          		LJMP		WAIT1	
  1045 00299 0296          		LJMP		WAIT1	
  1046                     	
  1047 0029A 0917          		BC			PRST,F50MS
  1048 0029B 05E9          		DJZ			SHORT_COUNT
  1049 0029C 1EB0          		LJMP		UV_SHORT_DIS
  1049 0029D 0261          		LJMP		UV_SHORT_DIS
  1050                     
  1051 0029E 08FD          		BC			FLAG2,SET_LONG
  1052 0029F 083D          		BC			FLAG2,SET_SHORT
  1053 002A0 0818          		BC			FLAG1,UV_SHORT
  1054 002A1 0857          		BC			PRST,FUV
  1055 002A2 08D7          		BC			PRST,FSET
  1056 002A3 0BD7          		BS			PRST,FDEM	
  1057 002A4 0012          		RET		
  1058                     			
  1059                     ;==========================================================UV_TEST 紫外线测试		
  1060                     		
  1061 002A5               UV_TEST:
  1062 002A5 1E04          		BANK		4
  1063 002A6 0988          		BC			IOC8,POWER
  1064                     		
  1065 002A7 1E01          		BANK		1
  1066 002A8 1800          		MOV			A,@0X00
  1067 002A9 004E          		MOV			EIMR,A		;禁止SET,UV按键中断
  1068                     		
  1069 002AA 1E00          		BANK		0
  1070 002AB 18A2          		MOV			A,@0XA2
  1071 002AC 0048          		MOV			PORT8,A			;P86=0 开启UV测试电路	
  1072 002AD 1881          		MOV			A,@0X81
  1073 002AE 004E          		MOV			IMR,A			;ENBALE T1 AND TCC中断
  1074 002AF 08D7          		BC			PRST,FSET
  1075 002B0 0857          		BC			PRST,FUV
  1076 002B1 0818          		BC			FLAG1,UV_SHORT
  1077 002B2 0917          		BC			PRST,F50MS
  1078 002B3 0B57          		BS			PRST,FAN
  1079 002B4 00EB          		CLR			UVIMAX
  1080                     		
  1081                     ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  1082 002B5               UV_TEST0:
  1083                     			
  1084 002B5 183C          		MOV			A,@0X3C
  1085 002B6 0068          		MOV			T_COUNT,A		;0.5S*60=30S
  1086                     		
  1087 002B7 1E03          		BANK		3
  1088 002B8 1800          		MOV			A,@0X00
  1089 002B9 004A          		MOV			ADICH,A
  1090 002BA 1859          		MOV			A,@0X59
  1091 002BB 004B          		MOV			ADICL,A			;AD0,3,4,6
  1092                     		
  1093                     ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  1094 002BC               UV_TEST1:
  1095 002BC 1E00          		BANK		0
  1096 002BD 180A          		MOV			A,@0X0A			;0.05S*10=0.5S
  1097 002BE 006A          		MOV			T10SEC,A
  1098 002BF 00D6          		CLR			FLAG
  1099                     		
  1100                     ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&传感器电压AD转换VS*20
  1101                     
  1102 002C0               UV_TEST31:
  1103 002C0 1E03          		BANK		3
  1104 002C1 1870          		MOV			A,@0X70
  1105 002C2 0049          		MOV			ADCR,A			;AD0 VS
  1106 002C3 0BC9          		BS			ADCR,ADRUN
  1107                     
  1108 002C4               WAIT2:
  1109 002C4 0DC9          		JBC			ADCR,ADRUN
  1110 002C5 1EB0          		LJMP		WAIT2				;先启动一次
  1110 002C6 02C4          		LJMP		WAIT2				;先启动一次
  1111 002C7 1E03          		BANK     3
  1112 002C8 040C              	MOV      A,ADDH
  1113 002C9 040D              	MOV      A,ADDL
  1114                     				
  1115 002CA 1E00          		BANK		0
  1116 002CB 00EE          		CLR			VSL
  1117 002CC 00ED          		CLR			VSH
  1118 002CD 1814          		MOV			A,@0X14
  1119 002CE 0067          		MOV			AD_COUNT,A			;AD转换20次
  1120                     		
  1121 002CF               UV_TEST31A:
  1122 002CF 1E03          		BANK		3
  1123 002D0 0BC9          		BS			ADCR,ADRUN
  1124                     
  1125 002D1               WAIT3:		
  1126 002D1 0DC9          		JBC			ADCR,ADRUN
  1127 002D2 1EB0          		LJMP		WAIT3
  1127 002D3 02D1          		LJMP		WAIT3
  1128                     		
  1129 002D4 1E03          		BANK		3
  1130 002D5 040C          		MOV			A,ADDH
  1131                     		
  1132 002D6 1E00          		BANK		0
  1133 002D7 0050          		MOV			TEMP1,A			;读取高8位
  1134                     		
  1135 002D8 1E03          		BANK		3
  1136 002D9 040D          		MOV			A,ADDL
  1137 002DA 1A0F          		AND			A,@0X0F
  1138                     		
  1139 002DB 1E00          		BANK		0
  1140 002DC 0051          		MOV			TEMP2,A			;读取低4位
  1141                     		
  1142 002DD 0710          		SWAPA		TEMP1
  1143 002DE 0050          		MOV			TEMP1,A
  1144 002DF 1AF0          		AND			A,@0XF0
  1145 002E0 0251          		OR			TEMP2,A			;AD低8位
  1146 002E1 180F          		MOV			A,@0X0F
  1147 002E2 02D0          		AND			TEMP1,A			;AD高4位
  1148                     
  1149                     		
  1150 002E3 0411          		MOV			A,TEMP2			;VS1=VS1+VS低位
  1151 002E4 03EE          		ADD			VSL,A
  1152 002E5 0C03          		JBC			STATUS,C
  1153 002E6 056D          		INC			VSH				;进位
  1154                     		
  1155 002E7 0410          		MOV			A,TEMP1
  1156 002E8 03ED          		ADD			VSH,A
  1157                     		
  1158 002E9 05E7          		DJZ			AD_COUNT
  1159 002EA 1EB0          		LJMP		UV_TEST31A
  1159 002EB 02CF          		LJMP		UV_TEST31A
  1160                     		
  1161                     
  1162                     ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&传感器偏置电压AD VB	VOUT*20 AD6
  1163                     
  1164 002EC               UV_TEST32:
  1165 002EC 1E03          		BANK		3
  1166 002ED 1876          		MOV			A,@0X76
  1167 002EE 0049          		MOV			ADCR,A
  1168 002EF 0BC9          		BS			ADCR,ADRUN
  1169                     
  1170 002F0               WAIT4:		
  1171 002F0 0DC9          		JBC			ADCR,ADRUN
  1172 002F1 1EB0          		LJMP		WAIT4			;先启动一次
  1172 002F2 02F0          		LJMP		WAIT4			;先启动一次
  1173 002F3 1E03          		BANK     3
  1174 002F4 040C              	MOV      A,ADDH
  1175 002F5 040D              	MOV      A,ADDL
  1176                     					
  1177                     		
  1178 002F6 1E00          		BANK		0
  1179 002F7 00F0          		CLR			VBL
  1180 002F8 00EF          		CLR			VBH
  1181 002F9 1814          		MOV			A,@0X14
  1182 002FA 0067          		MOV			AD_COUNT,A		;AD转化20次
  1183                     
  1184 002FB               UV_TEST32A:		
  1185 002FB 1E03          		BANK		3
  1186 002FC 0BC9          		BS			ADCR,ADRUN
  1187                     
  1188 002FD               WAIT5:		
  1189 002FD 0DC9          		JBC			ADCR,ADRUN
  1190 002FE 1EB0          		LJMP		WAIT5
  1190 002FF 02FD          		LJMP		WAIT5
  1191                     		
  1192 00300 1E03          		BANK		3	
  1193 00301 040C          		MOV			A,ADDH
  1194                     		
  1195 00302 1E00          		BANK		0
  1196 00303 0050          		MOV			TEMP1,A
  1197                     		
  1198 00304 1E03          		BANK		3
  1199 00305 040D          		MOV			A,ADDL
  1200 00306 1A0F          		AND			A,@0X0F
  1201                     		
  1202 00307 1E00          		BANK		0
  1203 00308 0051          		MOV			TEMP2,A
  1204                     		
  1205 00309 0710          		SWAPA		TEMP1
  1206 0030A 0050          		MOV			TEMP1,A
  1207 0030B 1AF0          		AND			A,@0XF0
  1208 0030C 0251          		OR			TEMP2,A
  1209 0030D 180F          		MOV			A,@0X0F
  1210 0030E 02D0          		AND			TEMP1,A
  1211                     		
  1212 0030F 0411          		MOV			A,TEMP2
  1213 00310 03F0          		ADD			VBL,A
  1214 00311 0C03          		JBC			STATUS,C
  1215 00312 056F          		INC			VBH
  1216                     		
  1217 00313 0410          		MOV			A,TEMP1
  1218 00314 03EF          		ADD			VBH,A
  1219                     		
  1220 00315 05E7          		DJZ			AD_COUNT
  1221 00316 1EB0          		LJMP		UV_TEST32A
  1221 00317 02FB          		LJMP		UV_TEST32A
  1222                     		
  1223                     ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&两检测电压差值VS=(VS-VB)*12
  1224                     
  1225 00318               UV_TEST33:
  1226 00318 1E00          		BANK		0
  1227 00319 0430          		MOV			A,VBL
  1228 0031A 016E          		SUB			VSL,A
  1229 0031B 0E03          		JBS			STATUS,C
  1230 0031C 056F          		INC			VBH			;有借位
  1231                     		
  1232 0031D 042F          		MOV			A,VBH
  1233 0031E 016D          		SUB			VSH,A
  1234 0031F 0E03          		JBS			STATUS,C
  1235 00320 00ED          		CLR			VSH			;VS<VB	VS=0
  1236 00321 0E03          		JBS			STATUS,C
  1237 00322 00EE          		CLR			VSL
  1238                     		
  1239 00323               UV_TEST33A:
  1240 00323 180C          		MOV			A,@0X0C
  1241 00324 0067          		MOV			AD_COUNT,A	;VS=VS*12
  1242 00325 042E          		MOV			A,VSL
  1243 00326 0070          		MOV			VBL,A
  1244 00327 042D          		MOV			A,VSH
  1245 00328 006F          		MOV			VBH,A
  1246 00329 00EE          		CLR			VSL
  1247 0032A 00ED          		CLR			VSH
  1248                     		
  1249 0032B               UV_TEST33B:
  1250 0032B 0430          		MOV			A,VBL
  1251 0032C 03EE          		ADD			VSL,A
  1252 0032D 0C03          		JBC			STATUS,C
  1253 0032E 056D          		INC			VSH
  1254                     		
  1255 0032F 042F          		MOV			A,VBH
  1256 00330 03ED          		ADD			VSH,A
  1257 00331 05E7          		DJZ			AD_COUNT
  1258 00332 1EB0          		LJMP		UV_TEST33B
  1258 00333 032B          		LJMP		UV_TEST33B
  1259                     		
  1260                     ;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&计算UVI值(扩大10倍)
  1261                     
  1262 00334               UV_TEST34:
  1263 00334 1E00          		BANK		0
  1264 00335 00EC          		CLR			UVI
  1265 00336 1860          		MOV			A,@0X60	;3(mv/uvi)/3000*4096*20*12=983.4因为UV传感器的灵敏度逐渐增大所以除数逐渐增大近似认为100 0-5 0.3uvi 5-10 0.5uvi	10以

⌨️ 快捷键说明

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