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

📄 wsd1.src

📁 湿度采集模块
💻 SRC
📖 第 1 页 / 共 3 页
字号:
; 	   if(Collect<9){TAB[2]=14;}
			; SOURCE LINE # 331
	CLR  	C
	MOV  	A,R3
	SUBB 	A,#09H
	MOV  	A,R2
	SUBB 	A,#00H
	JNC  	?C0070
	MOV  	TAB+02H,#0EH
	SJMP 	?C0071
?C0070:
; 	   else TAB[2]=Collect%1000%100/10;
			; SOURCE LINE # 332
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	MOV  	R7,AR3
	MOV  	R6,AR2
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#064H
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#0AH
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	TAB+02H,R7
?C0071:
; 	   TAB[3]=Collect%1000%100%10;
			; SOURCE LINE # 333
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	MOV  	R7,AR3
	MOV  	R6,AR2
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#064H
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#0AH
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	TAB+03H,R5
; 
; 	   db1=1;
			; SOURCE LINE # 335
	SETB 	db1
;        Collect=wdcl();
			; SOURCE LINE # 336
	LCALL	wdcl
	MOV  	R2,AR6
	MOV  	R3,AR7
; 	   if(Collect<999){TAB[4]=14;}
			; SOURCE LINE # 337
	CLR  	C
	MOV  	A,R3
	SUBB 	A,#0E7H
	MOV  	A,R2
	SUBB 	A,#03H
	JNC  	?C0072
	MOV  	TAB+04H,#0EH
	SJMP 	?C0073
?C0072:
;        else TAB[4]=Collect/1000;
			; SOURCE LINE # 338
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	MOV  	R7,AR3
	MOV  	R6,AR2
	LCALL	?C?UIDIV
	MOV  	TAB+04H,R7
?C0073:
; 	   if(Collect<99){TAB[5]=14;}
			; SOURCE LINE # 339
	CLR  	C
	MOV  	A,R3
	SUBB 	A,#063H
	MOV  	A,R2
	SUBB 	A,#00H
	JNC  	?C0074
	MOV  	TAB+05H,#0EH
	SJMP 	?C0075
?C0074:
; 	   else TAB[5]=Collect%1000/100;
			; SOURCE LINE # 340
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	MOV  	R7,AR3
	MOV  	R6,AR2
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#064H
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	TAB+05H,R7
?C0075:
; 	   if(Collect<9){TAB[6]=14;}
			; SOURCE LINE # 341
	CLR  	C
	MOV  	A,R3
	SUBB 	A,#09H
	MOV  	A,R2
	SUBB 	A,#00H
	JNC  	?C0076
	MOV  	TAB+06H,#0EH
	SJMP 	?C0077
?C0076:
; 	   else TAB[6]=Collect%1000%100/10;
			; SOURCE LINE # 342
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	MOV  	R7,AR3
	MOV  	R6,AR2
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#064H
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#0AH
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	TAB+06H,R7
?C0077:
; 	   TAB[7]=Collect%1000%100%10;
			; SOURCE LINE # 343
	MOV  	R6,AR2
	MOV  	R7,AR3
	MOV  	R4,#03H
	MOV  	R5,#0E8H
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#064H
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	R6,#00H
	MOV  	R7,#0AH
	XCH  	A,R7
	XCH  	A,R5
	XCH  	A,R7
	XCH  	A,R6
	XCH  	A,R4
	XCH  	A,R6
	LCALL	?C?UIDIV
	MOV  	TAB+07H,R5
; 	   }
			; SOURCE LINE # 344
; }
			; SOURCE LINE # 345
?C0078:
	RET  	
; END OF AJ

; //-----------------------------
; void Show0(void)

	RSEG  ?PR?Show0?WSD1
Show0:
	USING	0
			; SOURCE LINE # 347
; {
			; SOURCE LINE # 348
;   d595(DAT[7]);
			; SOURCE LINE # 349
	MOV  	DPTR,#DAT+07H
	LCALL	L?0101
;   d595(DAT1[TAB[3]]);
			; SOURCE LINE # 350
	MOV  	A,TAB+03H
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 351
;   delay1(dat);
			; SOURCE LINE # 352
	LCALL	L?0098
; 
;   d595(DAT[6]);
			; SOURCE LINE # 354
	MOV  	DPTR,#DAT+06H
	LCALL	L?0101
;   d595(DAT1[TAB[2]]);
			; SOURCE LINE # 355
	MOV  	A,TAB+02H
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 356
;   delay1(dat);
			; SOURCE LINE # 357
	LCALL	L?0098
; 
;   d595(DAT[5]);
			; SOURCE LINE # 359
	MOV  	DPTR,#DAT+05H
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   d595(DAT1[TAB[1]]);
			; SOURCE LINE # 360
	MOV  	A,TAB+01H
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 361
;   delay1(dat);
			; SOURCE LINE # 362
	LCALL	L?0099
; 
;   d595(DAT[4]);
			; SOURCE LINE # 364
	MOV  	DPTR,#DAT+04H
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   d595(DAT1[TAB[0]]);
			; SOURCE LINE # 365
	MOV  	A,TAB
	MOV  	DPTR,#DAT1
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 366
	CLR  	SRCLK
	SETB 	SRCLK
;   delay1(dat);
			; SOURCE LINE # 367
	MOV  	R7,#01EH
	MOV  	R6,#00H
	LJMP 	_delay1
; END OF Show0

; }
; //-------------------------------
; void Show1(void)

	RSEG  ?PR?Show1?WSD1
Show1:
	USING	0
			; SOURCE LINE # 370
; {  
			; SOURCE LINE # 371
;   d595(DAT[0]);
			; SOURCE LINE # 372
	MOV  	DPTR,#DAT
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   d595(DAT1[TAB[4]]);
			; SOURCE LINE # 373
	MOV  	A,TAB+04H
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 374
;   delay1(dat);
			; SOURCE LINE # 375
	LCALL	L?0099
; 
;   d595(DAT[1]);
			; SOURCE LINE # 377
	MOV  	DPTR,#DAT+01H
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   d595(DAT1[TAB[5]]);
			; SOURCE LINE # 378
	MOV  	A,TAB+05H
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 379
;   delay1(dat);
			; SOURCE LINE # 380
	LCALL	L?0099
; 
;   d595(DAT[2]);
			; SOURCE LINE # 382
	MOV  	DPTR,#DAT+02H
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   db=1;       //开启小数点
			; SOURCE LINE # 383
	SETB 	db?
;   d595(DAT1[TAB[6]]);
			; SOURCE LINE # 384
	MOV  	A,TAB+06H
	MOV  	DPTR,#DAT1
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   db=0;       //关闭小数点
			; SOURCE LINE # 385
	CLR  	db?
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 386
;   delay1(dat);
			; SOURCE LINE # 387
	LCALL	L?0100
; 
;   d595(DAT[3]);
			; SOURCE LINE # 389
	MOV  	DPTR,#DAT+03H
	CLR  	A
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   d595(DAT1[TAB[7]]);
			; SOURCE LINE # 390
	MOV  	A,TAB+07H
	MOV  	DPTR,#DAT1
	MOVC 	A,@A+DPTR
	MOV  	R7,A
	LCALL	_d595
;   SRCLK=0; SRCLK=1;
			; SOURCE LINE # 391
	CLR  	SRCLK
	SETB 	SRCLK
;   delay1(dat);
			; SOURCE LINE # 392
	MOV  	R7,#01EH
	MOV  	R6,#00H
	LJMP 	_delay1
; END OF Show1

; }
; /*-------------------------------*/
; void kzbj(void)

	RSEG  ?PR?kzbj?WSD1
kzbj:
	USING	0
			; SOURCE LINE # 395
; {
			; SOURCE LINE # 396
; if(SOUT>xs1[0])
			; SOURCE LINE # 397
	SETB 	C
	MOV  	A,SOUT+01H
	SUBB 	A,xs1
	MOV  	A,SOUT
	SUBB 	A,#00H
	JC   	?C0081
;   {
			; SOURCE LINE # 398
;   // delay(xs1[2]);
;    WOUTH=0;WOUTL=1;
			; SOURCE LINE # 400
	CLR  	WOUTH
	SETB 	WOUTL
;   }    //湿度上线
			; SOURCE LINE # 401
	SJMP 	?C0082
?C0081:
; else if(SOUT<xs1[1])
			; SOURCE LINE # 402
	CLR  	C
	MOV  	A,SOUT+01H
	SUBB 	A,xs1+01H
	MOV  	A,SOUT
	SUBB 	A,#00H
	JNC  	?C0083
;   {
			; SOURCE LINE # 403
;   //delay(xs1[2]);
;   WOUTL=0;WOUTH=1;
			; SOURCE LINE # 405
	CLR  	WOUTL
	SETB 	WOUTH
;   }    //湿度下线
			; SOURCE LINE # 406
	SJMP 	?C0082
?C0083:
; else {
			; SOURCE LINE # 407
;       WOUTH=1;WOUTL=1;
			; SOURCE LINE # 408
	SETB 	WOUTH
	SETB 	WOUTL
; 	 }
			; SOURCE LINE # 409
?C0082:
; if(wdz>(xs1[3]*10))
			; SOURCE LINE # 410
	MOV  	A,xs1+03H
	MOV  	B,#0AH
	MUL  	AB
	MOV  	R7,A
	SETB 	C
	MOV  	A,wdz+01H
	SUBB 	A,R7
	MOV  	A,wdz
	SUBB 	A,B
	JC   	?C0085
;   {
			; SOURCE LINE # 411
;   //delay(xs1[5]);
;   SOUTH=0;SOUTL=1;
			; SOURCE LINE # 413
	CLR  	SOUTH
	SETB 	SOUTL
;   }     //温度上线
			; SOURCE LINE # 414
	RET  	
?C0085:
; else if(wdz<(xs1[4]*10))
			; SOURCE LINE # 415
	MOV  	A,xs1+04H
	MOV  	B,#0AH
	MUL  	AB
	MOV  	R7,A
	CLR  	C
	MOV  	A,wdz+01H
	SUBB 	A,R7
	MOV  	A,wdz
	SUBB 	A,B
	JNC  	?C0087
;   {
			; SOURCE LINE # 416
;   //delay(xs1[5]);
;   SOUTL=0;SOUTH=1;
			; SOURCE LINE # 418
	CLR  	SOUTL
	SETB 	SOUTH
;   }     //温度下线
			; SOURCE LINE # 419
	RET  	
?C0087:
; else {
			; SOURCE LINE # 420
;       SOUTH=1;SOUTL=1;
			; SOURCE LINE # 421
	SETB 	SOUTH
	SETB 	SOUTL
; 	 }
			; SOURCE LINE # 422
; }
			; SOURCE LINE # 423
?C0089:
	RET  	
; END OF kzbj

CSEG	AT	0000BH
	LJMP	time0_int

; /*-------------------------------*/
; void time0_int(void)interrupt 1 //using 0

	RSEG  ?PR?time0_int?WSD1
	USING	0
time0_int:
	PUSH 	ACC
	PUSH 	PSW
	MOV  	PSW,#00H
	PUSH 	AR4
	PUSH 	AR5
	PUSH 	AR6
	PUSH 	AR7
	USING	0
			; SOURCE LINE # 425
; {uchar i=0,z=0;uint pplz;
			; SOURCE LINE # 426
	MOV  	i?956,#00H
	MOV  	z?957,#00H
; //static uchar a,S1,S2,S3;
; TR0=TR1=0;
			; SOURCE LINE # 428
	CLR  	TR1
	CLR  	TR0
; TH0=0Xdc;TL0=0X00;
			; SOURCE LINE # 429
	MOV  	TH0,#0DCH
	MOV  	TL0,#00H
;   msn--;
			; SOURCE LINE # 430
	DJNZ 	msn,?C0090
;   if(msn==0)
			; SOURCE LINE # 431
;   {
			; SOURCE LINE # 432
;   msn=46;
			; SOURCE LINE # 433
	MOV  	msn,#02EH
;   plz=(TH1*256+TL1)*2;
			; SOURCE LINE # 434
	MOV  	R7,TH1
	MOV  	A,R7
	MOV  	R6,A
	MOV  	R5,TL1
	MOV  	R4,#00H
	CLR  	A
	ADD  	A,R5
	MOV  	R7,A
	MOV  	A,R4
	ADDC 	A,R6
	MOV  	R6,A
	MOV  	A,R7
	ADD  	A,ACC
	MOV  	plz+01H,A
	MOV  	A,R6
	RLC  	A
	MOV  	plz,A
;   TH1=TL1=0;
			; SOURCE LINE # 435
	MOV  	TL1,#00H
	MOV  	TH1,#00H
; }
			; SOURCE LINE # 436
?C0090:
; TR0=TR1=1;
			; SOURCE LINE # 437
	SETB 	TR1
	SETB 	TR0
; }
			; SOURCE LINE # 438
	POP  	AR7
	POP  	AR6
	POP  	AR5
	POP  	AR4
	POP  	PSW
	POP  	ACC
	RETI 	
; END OF time0_int

CSEG	AT	0001BH
	LJMP	time1_int

; /*-------------------------------*/
; void time1_int(void)interrupt 3 //using 0

	RSEG  ?PR?time1_int?WSD1
	USING	0
time1_int:
			; SOURCE LINE # 440
; {
; 
; }
			; SOURCE LINE # 443
	RETI 	
; END OF time1_int

CSEG	AT	0002BH
	LJMP	time2_int

; /*-------------------------------*/
; void time2_int(void)interrupt 5 //using 1

	RSEG  ?PR?time2_int?WSD1
	USING	0
time2_int:
	PUSH 	ACC
	PUSH 	DPH
	PUSH 	DPL
	PUSH 	PSW
	MOV  	PSW,#00H
	PUSH 	AR4
	PUSH 	AR5
	PUSH 	AR6
	PUSH 	AR7
	USING	0
			; SOURCE LINE # 445
; { 
; TR2=0;
			; SOURCE LINE # 447
	CLR  	TR2
;   Show1();
			; SOURCE LINE # 448
	LCALL	Show1
;   Show0();
			; SOURCE LINE # 449
	LCALL	Show0
;  RCAP2H=0xff;
			; SOURCE LINE # 450
	MOV  	RCAP2H,#0FFH
;  RCAP2L=0xc0;
			; SOURCE LINE # 451
	MOV  	RCAP2L,#0C0H
; TR2=1;
			; SOURCE LINE # 452
	SETB 	TR2
; TF2=0;
			; SOURCE LINE # 453
	CLR  	TF2
; }
			; SOURCE LINE # 454
	POP  	AR7
	POP  	AR6
	POP  	AR5
	POP  	AR4
	POP  	PSW
	POP  	DPL
	POP  	DPH
	POP  	ACC
	RETI 	
; END OF time2_int

; /*------------温度数据发送到上位机函数-----------
; void Send_out(void)
; {
; uchar code tab1[10]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39};
; /*
;   do{
;      while(!RI);
;      RI=0;
;     }while((SBUF^0x38)!=0);
; 
; 	 SBUF=tab1[TAB[4]];  
;      while(!TI);
;      TI=0;
; 	 SBUF=tab1[TAB[5]];  
;      while(!TI);
;      TI=0;
; 	 SBUF=tab1[TAB[6]];  
;      while(!TI);
;      TI=0;
;      SBUF=tab1[TAB[7]];  
;      while(!TI);
;      TI=0;
; }
; //-----------------------------*/
; void main(void)

	RSEG  ?PR?main?WSD1
main:
	USING	0
			; SOURCE LINE # 479
; { 
			; SOURCE LINE # 480
;   beep=1;
			; SOURCE LINE # 481
	SETB 	beep
;   SP=0x5f;
			; SOURCE LINE # 482
	MOV  	SP,#05FH
;   //d25045(1);
;   //d25045(3);
; /*
;   SCON=0x50;
;   TMOD=0x20;
;   TH1=TL1=0Xfd;         //11。0592    56000
;   PCON=0x80;
;   TR1=1;
; */
;   TMOD=0x59;
			; SOURCE LINE # 492
	MOV  	TMOD,#059H
;   SCON=0x50;
			; SOURCE LINE # 493
	MOV  	SCON,#050H
;   TH1=TL1=0;
			; SOURCE LINE # 494
	CLR  	A
	MOV  	TL1,A
	MOV  	TH1,A
;   TH0=0xdc;TL0=0x00;
			; SOURCE LINE # 495
	MOV  	TH0,#0DCH
	MOV  	TL0,A
;   TR0=TR1=1;
			; SOURCE LINE # 496
	SETB 	TR1
	SETB 	TR0
; 
;   RCAP2H=0xff;
			; SOURCE LINE # 498
	MOV  	RCAP2H,#0FFH
;   RCAP2L=0xc0;
			; SOURCE LINE # 499
	MOV  	RCAP2L,#0C0H
;   ET2=TR2=1;
			; SOURCE LINE # 500
	SETB 	TR2
	SETB 	ET2
;   IP=0x02;
			; SOURCE LINE # 501
	MOV  	IP,#02H
;   IE=0xba;
			; SOURCE LINE # 502
	MOV  	IE,#0BAH
?C0094:
; while(1)
			; SOURCE LINE # 503
;   {
			; SOURCE LINE # 504
;   AJ();
			; SOURCE LINE # 505
	LCALL	AJ
;   //d25045(4);
;   kzbj();
			; SOURCE LINE # 507
	LCALL	kzbj
;   //Send_out();
;   //wdz=cjtemp();
;   }
			; SOURCE LINE # 510
	SJMP 	?C0094
; END OF main

	END

⌨️ 快捷键说明

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