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

📄 com.lst

📁 PIC串口程序  可以帮助你编写串口程序  里面还有我自己做的协议 很方便
💻 LST
📖 第 1 页 / 共 3 页
字号:
   234  03FB  01CE               	clrf	?a_searchCmdDataSum+1
   235  03FC                     l7
   236                           ;com.c: 23: if (cmd==userCMD[i][2])
   237  03FC  3003               	movlw	3
   238  03FD  00F1               	movwf	btemp+1
   239  03FE  084E               	movf	?a_searchCmdDataSum+1,w
   240  03FF  158A  27D3         	fcall	lbmul
   241  0401  3E02               	addlw	2
   242  0402  00F0               	movwf	btemp
   243  0403  3000               	movlw	_userCMD shr (0+8)
   244  0404  008A               	movwf	10
   245  0405  0870               	movf	btemp,w
   246  0406  2082               	call	((_userCMD+-1)& (0+2047))| (($)& (0+-2048
      +                          ))
   247  0407  118A               	pagesel	$
   248  0408  064D               	xorwf	?a_searchCmdDataSum,w
   249  0409  1D03               	btfss	3,2
   250  040A  2C19               	goto	l10
   251                           ;com.c: 24: return (userCMD[i][1]);
   252  040B  3003               	movlw	3
   253  040C  00F1               	movwf	btemp+1
   254  040D  084E               	movf	?a_searchCmdDataSum+1,w
   255  040E  158A  27D3         	fcall	lbmul
   256  0410  00F0               	movwf	btemp
   257  0411  0A70               	incf	btemp,w
   258  0412  00F0               	movwf	btemp
   259  0413  3000               	movlw	_userCMD shr (0+8)
   260  0414  008A               	movwf	10
   261  0415  0870               	movf	btemp,w
   262  0416  2082               	call	((_userCMD+-1)& (0+2047))| (($)& (0+-2048
      +                          ))
   263  0417  118A               	pagesel	$
   264  0418  0008               	return
   265  0419                     l10
   266                           ;com.c: 25: return (0xFF);
   267  0419  0ACE               	incf	?a_searchCmdDataSum+1
   268  041A  3011               	movlw	17
   269  041B  024E               	subwf	?a_searchCmdDataSum+1,w
   270  041C  1803               	btfsc	3,0
   271  041D  34FF               	retlw	-1
   272  041E  2BFC               	goto	l7
   273                           ;com.c: 81: void IRQ_UART1 (void)
   274                           ;com.c: 82: {
   275  041F                     _IRQ_UART1
   276                           ;	_crc assigned to ?a_IRQ_UART1+0
   277  0000                     _IRQ_UART1$crc	set	?a_IRQ_UART1
   278                           ;	_i assigned to ?a_IRQ_UART1+1
   279  0000                     _IRQ_UART1$i	set	?a_IRQ_UART1+1
   280                           ;	_sum assigned to ?a_IRQ_UART1+2
   281  0000                     _IRQ_UART1$sum	set	?a_IRQ_UART1+2
   282                           ;	_databuff assigned to ?a_IRQ_UART1+3
   283  0000                     _IRQ_UART1$databuff	set	?a_IRQ_UART1+3
   284                           ;com.c: 83: unsigned char databuff[4];
   285  041F  0183               	clrf	3	;select bank 0
   286  0420  01C6               	clrf	?a_IRQ_UART1
   287                           ;com.c: 85: unsigned char sum=0;
   288  0421  01C8               	clrf	?a_IRQ_UART1+2
   289                           ;com.c: 86: unsigned char i;
   290  0422  0814               	movf	20,w	;volatile
   291  0423  00C9               	movwf	?a_IRQ_UART1+3
   292                           ;com.c: 88: if (comBuff.full==0)
   293  0424  1683               	bsf	3,5
   294  0425  08B0               	movf	_comBuff^(0+128)
   295  0426  1D03               	btfss	3,2
   296  0427  2C89               	goto	l33
   297                           ;com.c: 89: {
   298  0428  1283               	bcf	3,5
   299  0429  0849               	movf	?a_IRQ_UART1+3,w
   300  042A  3AAA               	xorlw	-86
   301  042B  1D03               	btfss	3,2
   302  042C  2C89               	goto	l33
   303                           ;com.c: 91: {
   304  042D  304A               	movlw	?a_IRQ_UART1+4
   305  042E  00CD               	movwf	?_waitComData
   306  042F  3002               	movlw	2
   307  0430  23E9               	fcall	_waitComData
   308  0431  00F0               	movwf	btemp
   309  0432  01F1               	clrf	btemp+1
   310  0433  0370               	decf	btemp,w
   311  0434  0471               	iorwf	btemp+1,w
   312  0435  1D03               	btfss	3,2
   313  0436  2C89               	goto	l33
   314                           ;com.c: 93: {
   315  0437  084B               	movf	?a_IRQ_UART1+5,w
   316  0438  23F9  118A         	fcall	_searchCmdDataSum
   317  043A  00C8               	movwf	?a_IRQ_UART1+2
   318                           ;com.c: 95: if (sum!=0xFF)
   319  043B  0A48               	incf	?a_IRQ_UART1+2,w
   320  043C  1903               	btfsc	3,2
   321  043D  2C89               	goto	l33
   322                           ;com.c: 96: {
   323  043E  304C               	movlw	?a_IRQ_UART1+6
   324  043F  00CD               	movwf	?_waitComData
   325  0440  0848               	movf	?a_IRQ_UART1+2,w
   326  0441  3EFD               	addlw	-3
   327  0442  23E9               	fcall	_waitComData
   328  0443  00F0               	movwf	btemp
   329  0444  01F1               	clrf	btemp+1
   330  0445  0370               	decf	btemp,w
   331  0446  0471               	iorwf	btemp+1,w
   332  0447  1D03               	btfss	3,2
   333  0448  2C89               	goto	l33
   334                           ;com.c: 98: {
   335  0449  01C7               	clrf	?a_IRQ_UART1+1
   336  044A                     l41
   337  044A  0848               	movf	?a_IRQ_UART1+2,w
   338  044B  00F2               	movwf	btemp+2
   339  044C  01F3               	clrf	btemp+3
   340  044D  30FF               	movlw	-1
   341  044E  07F2               	addwf	btemp+2
   342  044F  1C03               	btfss	3,0
   343  0450  07F3               	addwf	btemp+3
   344  0451  0847               	movf	?a_IRQ_UART1+1,w
   345  0452  00F0               	movwf	btemp
   346  0453  01F1               	clrf	btemp+1
   347  0454  0871               	movf	btemp+1,w
   348  0455  3A80               	xorlw	128
   349  0456  00F4               	movwf	btemp+4
   350  0457  0873               	movf	btemp+3,w
   351  0458  3A80               	xorlw	128
   352  0459  0274               	subwf	btemp+4,w
   353  045A  1D03               	btfss	3,2
   354  045B  2C5E               	goto	u155
   355  045C  0872               	movf	btemp+2,w
   356  045D  0270               	subwf	btemp,w
   357  045E                     u155
   358                           ;com.c: 100: crc=crc+databuff[i];
   359  045E  1283               	bcf	3,5
   360  045F  1303               	bcf	3,6	;carry unused
   361  0460  1803               	btfsc	3,0
   362  0461  2C6A               	goto	L1
   363  0462  0847               	movf	?a_IRQ_UART1+1,w
   364  0463  3E49               	addlw	?a_IRQ_UART1+3
   365  0464  0084               	movwf	4
   366  0465  1383               	bcf	3,7
   367  0466  0800               	movf	0,w
   368  0467  07C6               	addwf	?a_IRQ_UART1
   369  0468  0AC7               	incf	?a_IRQ_UART1+1
   370  0469  2C4A               	goto	l41
   371                           ;com.c: 101: if ((crc==databuff[sum-1])&&(sum==
      +                          databuff[1]))
   372  046A                     L1
   373  046A  0348               	decf	?a_IRQ_UART1+2,w
   374  046B  3E49               	addlw	?a_IRQ_UART1+3
   375  046C  0084               	movwf	4
   376  046D  1383               	bcf	3,7
   377  046E  0800               	movf	0,w
   378  046F  0646               	xorwf	?a_IRQ_UART1,w
   379  0470  1D03               	btfss	3,2
   380  0471  2C89               	goto	l33
   381  0472  084A               	movf	?a_IRQ_UART1+4,w
   382  0473  0648               	xorwf	?a_IRQ_UART1+2,w
   383                           ;com.c: 102: {
   384  0474  1683               	bsf	3,5
   385  0475  1D03               	btfss	3,2
   386  0476  2C8A               	goto	L2
   387  0477  01B0               	clrf	_comBuff^(0+128)
   388  0478  0AB0               	incf	_comBuff^(0+128)
   389                           ;com.c: 104: comBuff.head=databuff[0];
   390  0479  1283               	bcf	3,5
   391  047A  0849               	movf	?a_IRQ_UART1+3,w
   392  047B  1683               	bsf	3,5
   393  047C  00B1               	movwf	(_comBuff+1)^(0+128)
   394                           ;com.c: 105: comBuff.sum=databuff[1];
   395  047D  1283               	bcf	3,5
   396  047E  084A               	movf	?a_IRQ_UART1+4,w
   397  047F  1683               	bsf	3,5
   398  0480  00B2               	movwf	(_comBuff+2)^(0+128)
   399                           ;com.c: 106: comBuff.cmd=databuff[2];
   400  0481  1283               	bcf	3,5
   401  0482  084B               	movf	?a_IRQ_UART1+5,w
   402  0483  1683               	bsf	3,5
   403  0484  00B3               	movwf	(_comBuff+3)^(0+128)
   404                           ;com.c: 107: comBuff.string=databuff[3];
   405  0485  1283               	bcf	3,5
   406  0486  084C               	movf	?a_IRQ_UART1+6,w
   407  0487  1683               	bsf	3,5
   408  0488  00B4               	movwf	(_comBuff+4)^(0+128)
   409                           ;com.c: 108: }
   410                           ;com.c: 110: }
   411                           ;com.c: 111: }
   412                           ;com.c: 112: }
   413                           ;com.c: 113: }
   414  0489                     l33
   415                           ;com.c: 115: RCIE=0x01;
   416  0489  1683               	bsf	3,5
   417  048A                     L2
   418  048A  168C               	bsf	12,5
   419                           ;com.c: 116: }
   420  048B  1283               	bcf	3,5
   421  048C  0008               	return
   422                           
   423                           	psect	text6
   424                           ;com.c: 119: unsigned char readComCommand(void)
   425                           ;com.c: 120: { return (comBuff.cmd);
   426  0FAF                     _readComCommand
   427  0FAF  1683               	bsf	3,5
   428  0FB0  1303               	bcf	3,6	;carry unused
   429  0FB1  0833               	movf	(_comBuff+3)^(0+128),w
   430                           ;com.c: 121: }
   431  0FB2  1283               	bcf	3,5
   432  0FB3  0008               	return
   433                           
   434                           	psect	text7
   435                           ;com.c: 123: unsigned char* readComDataPd(void)
   436                           ;com.c: 124: { return (comBuff.string);
   437  0FB4                     _readComDataPd
   438  0FB4  1683               	bsf	3,5
   439  0FB5  1303               	bcf	3,6	;carry unused
   440  0FB6  0834               	movf	(_comBuff+4)^(0+128),w
   441                           ;com.c: 125: }
   442  0FB7  1283               	bcf	3,5
   443  0FB8  0008               	return
   444                           
   445                           	psect	text8
   446                           ;com.c: 128: void comInit(void)
   447                           ;com.c: 129: {
   448  0FC8                     _comInit
   449                           ;com.c: 130: SPBRG =0x19;
   450  0FC8  3019               	movlw	25
   451  0FC9  0183               	clrf	3	;select bank 0
   452  0FCA  0093               	movwf	19
   453                           ;com.c: 131: TXSTA =0x24;
   454  0FCB  3024               	movlw	36
   455  0FCC  0096               	movwf	22	;volatile
   456                           ;com.c: 132: RCIE =1;
   457  0FCD  1683               	bsf	3,5
   458  0FCE  168C               	bsf	12,5
   459                           ;com.c: 133: RCSTA =0x90;
   460  0FCF  3090               	movlw	-112
   461  0FD0  1283               	bcf	3,5
   462  0FD1  0097               	movwf	23	;volatile
   463                           ;com.c: 134: }
   464  0FD2  0008               	return
   465                           
   466                           	psect	text9
   467  0000                     
   468  0000                     
   469  0000                     
   470  0000                     
   471  0000                     
   472  0000                     
   473  0000                     

⌨️ 快捷键说明

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