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

📄 second.src

📁 pic 实例源程序 有需要的兄弟久拿走啊 别客气 哈哈 我会继续努力的
💻 SRC
📖 第 1 页 / 共 2 页
字号:
	MOV  	A,R5
	CLR  	C
	SUBB 	A,#00H
	JC   	?C0035
	MOV  	A,R5
	SETB 	C
	SUBB 	A,#09H
	JNC  	?C0035
; 	{switch(i)
			; SOURCE LINE # 212
	MOV  	A,R7
	DEC  	A
	JZ   	?C0029
	DEC  	A
	JZ   	?C0030
	DEC  	A
	JZ   	?C0031
	DEC  	A
	JZ   	?C0032
	DEC  	A
	JZ   	?C0033
	ADD  	A,#05H
	JNZ  	?C0035
; 	{ case 0:P2= LedSelect0 | num;  
			; SOURCE LINE # 213
?C0028:
	MOV  	A,R5
	ORL  	A,#080H
	MOV  	P2,A
; 	//LedSelect0的高四位为选择第0个数码管的逻辑,低四位则为数码管显示的数字。
; 	break;
			; SOURCE LINE # 215
	RET  	
; 	  case 1:P2= LedSelect1 | num;
			; SOURCE LINE # 216
?C0029:
	MOV  	A,R5
	ORL  	A,#090H
	MOV  	P2,A
; 		  //LedSelect1的高四位为选择第1个数码管的逻辑,低四位则为数码管显示的数字。
; 		  break;
			; SOURCE LINE # 218
	RET  	
; 	  case 2:P2= LedSelect2 | num;
			; SOURCE LINE # 219
?C0030:
	MOV  	A,R5
	ORL  	A,#0A0H
	MOV  	P2,A
; 		  //LedSelect2的高四位为选择第2个数码管的逻辑,低四位则为数码管显示的数字。
; 		  break;
			; SOURCE LINE # 221
	RET  	
; 	  case 3:P2= LedSelect3 | num;
			; SOURCE LINE # 222
?C0031:
	MOV  	A,R5
	ORL  	A,#0B0H
	MOV  	P2,A
; 		  //LedSelect3的高四位为选择第3个数码管的逻辑,低四位则为数码管显示的数字。
; 		  break;
			; SOURCE LINE # 224
	RET  	
; 	  case 4:P2= LedSelect4 | num;
			; SOURCE LINE # 225
?C0032:
	MOV  	A,R5
	ORL  	A,#0C0H
	MOV  	P2,A
; 		  //LedSelect4的高四位为选择第4个数码管的逻辑,低四位则为数码管显示的数字。
; 		  break;
			; SOURCE LINE # 227
	RET  	
; 	  case 5:P2= LedSelect5 | num;
			; SOURCE LINE # 228
?C0033:
	MOV  	A,R5
	ORL  	A,#0D0H
	MOV  	P2,A
; 		  //LedSelect5的高四位为选择第5个数码管的逻辑,低四位则为数码管显示的数字。
; 		  break;
			; SOURCE LINE # 230
; 	  default:break;
			; SOURCE LINE # 231
; 	}
			; SOURCE LINE # 232
; 	}
			; SOURCE LINE # 233
; }
			; SOURCE LINE # 234
?C0035:
	RET  	
; END OF _display

; 
; unsigned char keyscan()

	RSEG  ?PR?keyscan?SECOND
keyscan:
	USING	0
			; SOURCE LINE # 236
; {
			; SOURCE LINE # 237
; 	PinDrvKey1=TRUE;
			; SOURCE LINE # 238
	SETB 	P1_0
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 239
	JNB  	P1_4,?C0036
; 		PinLamp=FALSE;
			; SOURCE LINE # 240
	CLR  	P0_0
?C0036:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 241
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 242
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 243
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 244
	SETB 	P0_1
; 	return 1;
			; SOURCE LINE # 245
	MOV  	R7,#01H
	RET  	
; 	if(PinScanKey2==TRUE)
			; SOURCE LINE # 246
; 		PinLamp=FALSE;
			; SOURCE LINE # 247
?C0038:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 248
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 249
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 250
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 251
	SETB 	P0_1
; 	return 5;
			; SOURCE LINE # 252
	MOV  	R7,#05H
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 253
; 		PinLamp=FALSE;
			; SOURCE LINE # 254
?C0039:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 255
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 256
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 257
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 258
	SETB 	P0_1
; 	return 9;
			; SOURCE LINE # 259
	MOV  	R7,#09H
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 260
; 		PinLamp=FALSE;
			; SOURCE LINE # 261
?C0040:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 262
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 263
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 264
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 265
	SETB 	P0_1
; 	return 12;
			; SOURCE LINE # 266
	MOV  	R7,#0CH
	RET  	
; 	PinDrvKey1=FALSE;	//扫描第一列
			; SOURCE LINE # 267
; 	PinDrvKey2=TRUE;
			; SOURCE LINE # 268
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 269
; 		PinLamp=FALSE;
			; SOURCE LINE # 270
?C0041:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 271
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 272
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 273
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 274
	SETB 	P0_1
; 	return 2;
			; SOURCE LINE # 275
	DEC  	R7
	RET  	
; 	if(PinScanKey2==TRUE)
			; SOURCE LINE # 276
; 		PinLamp=FALSE;
			; SOURCE LINE # 277
?C0042:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 278
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 279
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 280
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 281
	SETB 	P0_1
; 	return 6;
			; SOURCE LINE # 282
	MOV  	R7,#06H
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 283
; 		PinLamp=FALSE;
			; SOURCE LINE # 284
?C0043:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 285
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 286
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 287
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 288
	SETB 	P0_1
; 	return 0;
			; SOURCE LINE # 289
	MOV  	R7,#00H
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 290
; 		PinLamp=FALSE;
			; SOURCE LINE # 291
?C0044:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 292
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 293
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 294
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 295
	SETB 	P0_1
; 	return 13;
			; SOURCE LINE # 296
	MOV  	R7,#0DH
	RET  	
; 	PinDrvKey2=FALSE;	//扫描第二列
			; SOURCE LINE # 297
; 	PinDrvKey3=TRUE;
			; SOURCE LINE # 298
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 299
; 		PinLamp=FALSE;
			; SOURCE LINE # 300
?C0045:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 301
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 302
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 303
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 304
	SETB 	P0_1
; 	return 3;
			; SOURCE LINE # 305
	RET  	
; 	if(PinScanKey2==TRUE)
			; SOURCE LINE # 306
; 		PinLamp=FALSE;
			; SOURCE LINE # 307
?C0046:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 308
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 309
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 310
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 311
	SETB 	P0_1
; 	return 7;
			; SOURCE LINE # 312
	MOV  	R7,#07H
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 313
; 		PinLamp=FALSE;
			; SOURCE LINE # 314
?C0047:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 315
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 316
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 317
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 318
	SETB 	P0_1
; 	return 10;
			; SOURCE LINE # 319
	MOV  	R7,#0AH
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 320
; 		PinLamp=FALSE;
			; SOURCE LINE # 321
?C0048:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 322
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 323
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 324
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 325
	SETB 	P0_1
; 	return 14;
			; SOURCE LINE # 326
	MOV  	R7,#0EH
	RET  	
; 	PinDrvKey3=FALSE;	//扫描第三列
			; SOURCE LINE # 327
; 	PinDrvKey4=TRUE;
			; SOURCE LINE # 328
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 329
; 		PinLamp=FALSE;
			; SOURCE LINE # 330
?C0049:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 331
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 332
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 333
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 334
	SETB 	P0_1
; 	return 4;
			; SOURCE LINE # 335
	INC  	R7
	RET  	
; 	if(PinScanKey2==TRUE)
			; SOURCE LINE # 336
; 		PinLamp=FALSE;
			; SOURCE LINE # 337
?C0050:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 338
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 339
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 340
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 341
	SETB 	P0_1
; 	return 8;
			; SOURCE LINE # 342
	MOV  	R7,#08H
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 343
; 		PinLamp=FALSE;
			; SOURCE LINE # 344
?C0051:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 345
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 346
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 347
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 348
	SETB 	P0_1
; 	return 11;
			; SOURCE LINE # 349
	MOV  	R7,#0BH
	RET  	
; 	if(PinScanKey1==TRUE)
			; SOURCE LINE # 350
; 		PinLamp=FALSE;
			; SOURCE LINE # 351
?C0052:
; 	PinSpeaker=FALSE;
			; SOURCE LINE # 352
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 353
	LCALL	L?0071
; 	PinLamp=TRUE;
			; SOURCE LINE # 354
	SETB 	P0_0
; 	PinSpeaker=TRUE;
			; SOURCE LINE # 355
	SETB 	P0_1
; 	return 15;
			; SOURCE LINE # 356
	MOV  	R7,#0FH
; 	PinDrvKey3=FALSE;	//扫描第四列
			; SOURCE LINE # 357
; 	return 16;
			; SOURCE LINE # 358
; }
			; SOURCE LINE # 359
?C0037:
	RET  	
; END OF keyscan

; 
; void updatee()

	RSEG  ?PR?updatee?SECOND
updatee:
	USING	0
			; SOURCE LINE # 361
; {
			; SOURCE LINE # 362
; 	if(s00==9)	//如果10ms位需要进位,则进入语句
			; SOURCE LINE # 363
	MOV  	A,s00
	XRL  	A,#09H
	JNZ  	?C0053
; 	{
			; SOURCE LINE # 364
; 		s00=0;
			; SOURCE LINE # 365
	MOV  	s00,A
; 		if(s01==9)	//如果100ms位需要进位,则进入语句
			; SOURCE LINE # 366
	MOV  	A,s01
	XRL  	A,#09H
	JNZ  	?C0054
; 		{
			; SOURCE LINE # 367
; 			s01=0;
			; SOURCE LINE # 368
	MOV  	s01,A
; 			if(s0==9)	//如果1sec位需要进位,则进入语句
			; SOURCE LINE # 369
	MOV  	A,s0
	XRL  	A,#09H
	JNZ  	?C0055
; 			{
			; SOURCE LINE # 370
; 				s0=0;
			; SOURCE LINE # 371
	MOV  	s0,A
; 				if(s1==5)	//如果10sec位需要进位,则进入语句
			; SOURCE LINE # 372
	MOV  	A,s1
	CJNE 	A,#05H,?C0056
; 				{
			; SOURCE LINE # 373
; 					s1=0;
			; SOURCE LINE # 374
	CLR  	A
	MOV  	s1,A
; 					if(m0==9)
			; SOURCE LINE # 375
	MOV  	A,m0
	CJNE 	A,#09H,?C0057
; 					{m0=0;
			; SOURCE LINE # 376
	CLR  	A
	MOV  	m0,A
; 					if(m1==5)m1=0;
			; SOURCE LINE # 377
	MOV  	A,m1
	CJNE 	A,#05H,?C0058
	CLR  	A
	MOV  	m1,A
	SJMP 	?C0064
?C0058:
; 					else m1+=1;
			; SOURCE LINE # 378
	INC  	m1
; 					}
			; SOURCE LINE # 379
	SJMP 	?C0064
?C0057:
; 					else m0+=1;
			; SOURCE LINE # 380
	INC  	m0
; 				}
			; SOURCE LINE # 381
	SJMP 	?C0064
?C0056:
; 				else s1+=1;
			; SOURCE LINE # 382
	INC  	s1
; 			}
			; SOURCE LINE # 383
	SJMP 	?C0064
?C0055:
; 			else s0+=1;
			; SOURCE LINE # 384
	INC  	s0
; 		}
			; SOURCE LINE # 385
	SJMP 	?C0064
?C0054:
; 		else s01+=1;
			; SOURCE LINE # 386
	INC  	s01
; 	}
			; SOURCE LINE # 387
	SJMP 	?C0064
?C0053:
; 	else s00+=1;
			; SOURCE LINE # 388
	INC  	s00
?C0064:
; 	display(0,s00);
			; SOURCE LINE # 389
	MOV  	R5,s00
	CLR  	A
	MOV  	R7,A
	LCALL	_display
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 390
	LCALL	L?0072
; 	display(1,s01);
			; SOURCE LINE # 391
	MOV  	R5,s01
	MOV  	R7,#01H
	LCALL	_display
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 392
	MOV  	R7,#03H
	LCALL	_delay
; 	display(2,s0);
			; SOURCE LINE # 393
	MOV  	R5,s0
	DEC  	R7
	LCALL	_display
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 394
	INC  	R7
	LCALL	_delay
; 	display(3,s1);
			; SOURCE LINE # 395
	MOV  	R5,s1
	LCALL	_display
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 396
	LCALL	_delay
; 	display(4,m0);
			; SOURCE LINE # 397
	MOV  	R5,m0
	INC  	R7
	LCALL	_display
; 	delay(DELAY_VALUE);
			; SOURCE LINE # 398
	DEC  	R7
	LCALL	_delay
; 	display(5,m1);
			; SOURCE LINE # 399
	MOV  	R5,m1
	MOV  	R7,#05H
	LCALL	_display
; 	delay(DELAY_VALUE); //以上语句则在数码管上显示各个数字
			; SOURCE LINE # 400
	MOV  	R7,#03H
	LJMP 	_delay
; END OF updatee

	END

⌨️ 快捷键说明

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