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

📄 main2.lst

📁 pic16f886读取LM75A温度芯片的程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
   240  03A7  00B0               	movwf	?a_disp_temp+10
   241  03A8  30E8               	movlw	232
   242  03A9  00F2               	movwf	btemp+2
   243  03AA  3003               	movlw	3
   244  03AB  00F3               	movwf	btemp+3
   245  03AC  082A               	movf	?a_disp_temp+4,w
   246  03AD  00F0               	movwf	btemp
   247  03AE  01F1               	clrf	btemp+1
   248  03AF  120A  118A  22D5   	fcall	lwmul
   249  03B2  082C               	movf	?a_disp_temp+6,w
   250  03B3  00F1               	movwf	btemp+1
   251  03B4  082B               	movf	?a_disp_temp+5,w
   252  03B5  00F0               	movwf	btemp
   253  03B6  0874               	movf	btemp+4,w
   254  03B7  02F0               	subwf	btemp
   255  03B8  1C03               	btfss	3,0
   256  03B9  03F1               	decf	btemp+1
   257  03BA  0875               	movf	btemp+5,w
   258  03BB  02F1               	subwf	btemp+1
   259  03BC  082F               	movf	?a_disp_temp+9,w
   260  03BD  02F0               	subwf	btemp
   261  03BE  1C03               	btfss	3,0
   262  03BF  03F1               	decf	btemp+1
   263  03C0  0830               	movf	?a_disp_temp+10,w
   264  03C1  02F1               	subwf	btemp+1
   265  03C2  300A               	movlw	10
   266  03C3  00F2               	movwf	btemp+2
   267  03C4  3000               	movlw	0
   268  03C5  01F3               	clrf	btemp+3
   269  03C6  120A  118A  27B8   	fcall	lwdiv
   270  03C9  0874               	movf	btemp+4,w
   271  03CA  00A7               	movwf	?a_disp_temp+1
   272                           ;main2.c: 507: x1=(unsigned char)(xx%10);
   273  03CB  300A               	movlw	10
   274  03CC  00F2               	movwf	btemp+2
   275  03CD  01F3               	clrf	btemp+3
   276  03CE  082C               	movf	?a_disp_temp+6,w
   277  03CF  00F1               	movwf	btemp+1
   278  03D0  082B               	movf	?a_disp_temp+5,w
   279  03D1  00F0               	movwf	btemp
   280  03D2  120A  118A  27B8   	fcall	lwmod
      +       120A  118A         
   281  03D7  0870               	movf	btemp,w
   282  03D8  00A8               	movwf	?a_disp_temp+2
   283                           ;main2.c: 508: write_dat(b+0x30);
   284  03D9  082A               	movf	?a_disp_temp+4,w
   285  03DA  3E30               	addlw	48
   286  03DB  25C6  120A  118A   	fcall	_write_dat
   287                           ;main2.c: 509: write_dat(s+0x30);
   288  03DE  0829               	movf	?a_disp_temp+3,w
   289  03DF  3E30               	addlw	48
   290  03E0  25C6  120A  118A   	fcall	_write_dat
   291                           ;main2.c: 510: write_dat(g+0x30);
   292  03E3  0827               	movf	?a_disp_temp+1,w
   293  03E4  3E30               	addlw	48
   294  03E5  25C6  120A  118A   	fcall	_write_dat
   295                           ;main2.c: 511: write_dat(0x2e);
   296  03E8  302E               	movlw	46
   297  03E9  25C6  120A  118A   	fcall	_write_dat
   298                           ;main2.c: 512: write_dat(x1+0x30);
   299  03EC  0828               	movf	?a_disp_temp+2,w
   300  03ED  3E30               	addlw	48
   301  03EE  2DC6               	ljmp	_write_dat
   302  03EF                     _I2C_Read
   303                           ;	_i assigned to ?a_I2C_Read+0
   304  0000                     _I2C_Read$i	set	?a_I2C_Read
   305                           ;	_Rdat assigned to ?a_I2C_Read+1
   306  0000                     _I2C_Read$Rdat	set	?a_I2C_Read+1
   307                           ;main2.c: 225: unsigned char I2C_Read()
   308  03EF  0183               	clrf	3	;select bank 0
   309  03F0  01B0               	clrf	?a_I2C_Read+1
   310                           ;main2.c: 228: unsigned char i = 8;
   311  03F1  3008               	movlw	8
   312  03F2  00AF               	movwf	?a_I2C_Read
   313                           ;main2.c: 229: TRISB3=1;
   314  03F3  1683               	bsf	3,5
   315  03F4  1586               	bsf	6,3
   316                           ;main2.c: 230: for (i=0; i<8; i++)
   317  03F5  1283               	bcf	3,5
   318  03F6  01AF               	clrf	?a_I2C_Read
   319  03F7                     l32
   320                           ;main2.c: 231: {
   321  03F7  1606               	bsf	6,4
   322                           ;main2.c: 233: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   323  03F8  0000               	nop	;#
   324  03F9  0000               	nop	;#
   325  03FA  0000               	nop	;#
   326  03FB  0000               	nop	;#
   327  03FC  0000               	nop	;#
   328                           ;main2.c: 234: Rdat <<= 1;
   329  03FD  1003               	bcf	3,0
   330  03FE  0DB0               	rlf	?a_I2C_Read+1
   331                           ;main2.c: 235: if (RB3==1)
   332  03FF  1986               	btfsc	6,3
   333                           ;main2.c: 236: Rdat |= 0x01;
   334  0400  1430               	bsf	?a_I2C_Read+1,0
   335                           ;main2.c: 237: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   336  0401  0000               	nop	;#
   337  0402  0000               	nop	;#
   338  0403  0000               	nop	;#
   339  0404  0000               	nop	;#
   340  0405  0000               	nop	;#
   341                           ;main2.c: 238: RB4 = 0;
   342  0406  1206               	bcf	6,4
   343                           ;main2.c: 239: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   344  0407  0000               	nop	;#
   345  0408  0000               	nop	;#
   346  0409  0000               	nop	;#
   347  040A  0000               	nop	;#
   348  040B  0000               	nop	;#
   349  040C  0AAF               	incf	?a_I2C_Read
   350  040D  3008               	movlw	8
   351  040E  022F               	subwf	?a_I2C_Read,w
   352  040F  1C03               	btfss	3,0
   353  0410  2BF7               	goto	l32
   354                           ;main2.c: 240: }
   355  0411  1683               	bsf	3,5
   356  0412  1186               	bcf	6,3
   357                           ;main2.c: 242: return (Rdat);
   358  0413  1283               	bcf	3,5
   359  0414  0830               	movf	?a_I2C_Read+1,w
   360                           ;main2.c: 243: }
   361  0415  0008               	return	;uses W
   362  0416                     _I2C_PutAck
   363                           ;	_ack assigned to ?a_I2C_PutAck+0
   364  0000                     _I2C_PutAck$ack	set	?a_I2C_PutAck
   365                           ;_ack stored from w
   366  0416  0183               	clrf	3	;select bank 0
   367  0417  00AF               	movwf	?a_I2C_PutAck
   368                           ;main2.c: 277: void I2C_PutAck(unsigned char ac
      +                          k)
   369  0418  1683               	bsf	3,5
   370  0419  1186               	bcf	6,3
   371                           ;main2.c: 280: RB3 = ack;
   372  041A  1283               	bcf	3,5
   373  041B  0C2F               	rrf	?a_I2C_PutAck,w
   374  041C  1C03               	btfss	3,0
   375  041D  2C20               	goto	u110
   376  041E  1586               	bsf	6,3
   377  041F  2C21               	goto	u124
   378  0420                     u110
   379  0420  1186               	bcf	6,3
   380  0421                     u124
   381                           ;main2.c: 281: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   382  0421  0000               	nop	;#
   383  0422  0000               	nop	;#
   384  0423  0000               	nop	;#
   385  0424  0000               	nop	;#
   386  0425  0000               	nop	;#
   387                           ;main2.c: 282: RB4 = 1;
   388  0426  1606               	bsf	6,4
   389                           ;main2.c: 283: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   390  0427  0000               	nop	;#
   391  0428  0000               	nop	;#
   392  0429  0000               	nop	;#
   393  042A  0000               	nop	;#
   394  042B  0000               	nop	;#
   395                           ;main2.c: 284: RB4 = 0;
   396  042C  1206               	bcf	6,4
   397                           ;main2.c: 285: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   398  042D  0000               	nop	;#
   399  042E  0000               	nop	;#
   400  042F  0000               	nop	;#
   401  0430  0000               	nop	;#
   402  0431  0000               	nop	;#
   403                           ;main2.c: 286: }
   404  0432  0008               	return	;W free
   405  0433                     _I2C_Stop
   406                           ;main2.c: 183: void I2C_Stop()
   407  0433  0183               	clrf	3	;select bank 0
   408  0434  1186               	bcf	6,3
   409                           ;main2.c: 186: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   410  0435  0000               	nop	;#
   411  0436  0000               	nop	;#
   412  0437  0000               	nop	;#
   413  0438  0000               	nop	;#
   414  0439  0000               	nop	;#
   415                           ;main2.c: 187: RB4 = 1;
   416  043A  1606               	bsf	6,4
   417                           ;main2.c: 188: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   418  043B  0000               	nop	;#
   419  043C  0000               	nop	;#
   420  043D  0000               	nop	;#
   421  043E  0000               	nop	;#
   422  043F  0000               	nop	;#
   423                           ;main2.c: 189: RB3 = 1;
   424  0440  1586               	bsf	6,3
   425                           ;main2.c: 190: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   426  0441  0000               	nop	;#
   427  0442  0000               	nop	;#
   428  0443  0000               	nop	;#
   429  0444  0000               	nop	;#
   430  0445  0000               	nop	;#
   431                           ;main2.c: 191: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   432  0446  0000               	nop	;#
   433  0447  0000               	nop	;#
   434  0448  0000               	nop	;#
   435  0449  0000               	nop	;#
   436  044A  0000               	nop	;#
   437                           ;main2.c: 192: }
   438  044B  0008               	return	;W free
   439  044C                     _I2C_GetAck
   440                           ;	_ack assigned to ?a_I2C_GetAck+0
   441  0000                     _I2C_GetAck$ack	set	?a_I2C_GetAck
   442                           ;main2.c: 254: unsigned char I2C_GetAck()
   443  044C  1683               	bsf	3,5
   444  044D  1303               	bcf	3,6	;carry unused
   445  044E  1586               	bsf	6,3
   446                           ;main2.c: 258: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   447  044F  0000               	nop	;#
   448  0450  0000               	nop	;#
   449  0451  0000               	nop	;#
   450  0452  0000               	nop	;#
   451  0453  0000               	nop	;#
   452                           ;main2.c: 259: RB4 = 1;
   453  0454  1283               	bcf	3,5
   454  0455  1606               	bsf	6,4
   455                           ;main2.c: 260: ack = RB3;
   456  0456  3000               	movlw	0
   457  0457  1986               	btfsc	6,3
   458  0458  3001               	movlw	1
   459  0459  00AF               	movwf	?a_I2C_GetAck
   460                           ;main2.c: 261: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   461  045A  0000               	nop	;#
   462  045B  0000               	nop	;#
   463  045C  0000               	nop	;#
   464  045D  0000               	nop	;#
   465  045E  0000               	nop	;#
   466                           ;main2.c: 262: RB4 = 0;
   467  045F  1206               	bcf	6,4
   468                           ;main2.c: 263: ; asm("Nop"); asm("Nop"); asm("N
      +                          op"); asm("Nop"); asm("Nop");
   469  0460  0000               	nop	;#
   470  0461  0000               	nop	;#
   471  0462  0000               	nop	;#
   472  0463  0000               	nop	;#
   473  0464  0000               	nop	;#
   474                           ;main2.c: 264: TRISB3=0;
   475  0465  1683               	bsf	3,5
   476  0466  1186               	bcf	6,3
   477                           ;main2.c: 265: return ack;
   478  0467  1283               	bcf	3,5

⌨️ 快捷键说明

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