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

📄 main.lst

📁 一個使用PIC16F877解GPS訊號的範例
💻 LST
📖 第 1 页 / 共 5 页
字号:
   717                           ;GPS.C: 244: case 3:
   718                           ;GPS.C: 245: UtcM +=(tmp-0x30);
   719  056F  1283               	bcf	3,5
   720  0570  082F               	movf	?a_GPS_Decode,w
   721  0571  3ED0               	addlw	-48
   722  0572  1683               	bsf	3,5
   723  0573  07A8               	addwf	_UtcM^(0+128)
   724                           ;GPS.C: 246: break;
   725  0574  2DCC               	goto	l53
   726  0575                     l113
   727                           ;GPS.C: 247: case 4:
   728                           ;GPS.C: 248: UtcS =(tmp-0x30)*0x10;
   729  0575  1283               	bcf	3,5
   730  0576  0E2F               	swapf	?a_GPS_Decode,w
   731  0577  39F0               	andlw	240
   732  0578  1683               	bsf	3,5
   733  0579  00A9               	movwf	_UtcS^(0+128)
   734                           ;GPS.C: 249: break;
   735  057A  2DCC               	goto	l53
   736  057B                     l114
   737                           ;GPS.C: 250: case 5:
   738                           ;GPS.C: 251: UtcS +=(tmp-0x30);
   739  057B  1283               	bcf	3,5
   740  057C  082F               	movf	?a_GPS_Decode,w
   741  057D  3ED0               	addlw	-48
   742  057E  1683               	bsf	3,5
   743  057F  07A9               	addwf	_UtcS^(0+128)
   744                           ;GPS.C: 252: break;
   745  0580  2DCC               	goto	l53
   746  0581                     l108
   747  0581  0821               	movf	_GpsByte_count^(0+128),w
   748  0582  1903               	btfsc	3,2
   749  0583  2D5D               	goto	l109
   750  0584  3A01               	xorlw	1
   751  0585  1903               	btfsc	3,2
   752  0586  2D63               	goto	l110
   753  0587  3A03               	xorlw	3
   754  0588  1903               	btfsc	3,2
   755  0589  2D69               	goto	l111
   756  058A  3A01               	xorlw	1
   757  058B  1903               	btfsc	3,2
   758  058C  2D6F               	goto	l112
   759  058D  3A07               	xorlw	7
   760  058E  1903               	btfsc	3,2
   761  058F  2D75               	goto	l113
   762  0590  3A01               	xorlw	1
   763  0591  1903               	btfsc	3,2
   764  0592  2D7B               	goto	l114
   765  0593  2DCC               	goto	l53
   766                           ;GPS.C: 254: }
   767  0594                     l115
   768                           ;GPS.C: 256: case 2:
   769                           ;GPS.C: 257: GpsLock&=0x7f;
   770  0594  13A4               	bcf	_GpsLock^(0+128),7
   771                           ;GPS.C: 258: if(tmp=='A')
   772  0595  1283               	bcf	3,5
   773  0596  082F               	movf	?a_GPS_Decode,w
   774  0597  3A41               	xorlw	65
   775                           ;GPS.C: 259: GpsLock|=0x80;
   776  0598  1683               	bsf	3,5
   777  0599  1D03               	btfss	3,2
   778  059A  2DCD               	goto	L18
   779  059B  17A4               	bsf	_GpsLock^(0+128),7
   780                           ;GPS.C: 260: break;
   781  059C  2DCC               	goto	l53
   782                           ;GPS.C: 261: case 7:
   783                           ;GPS.C: 262: if(GpsByte_count<5){
   784                           ;GPS.C: 263: ;
   785  059D                     l119
   786                           ;GPS.C: 266: case 8:
   787                           ;GPS.C: 267: if(GpsByte_count<5){
   788  059D  3005               	movlw	5
   789  059E                     L16
   790  059E  0221               	subwf	_GpsByte_count^(0+128),w
   791  059F  2DCC               	goto	l53
   792                           ;GPS.C: 268: ;
   793  05A0                     l104
   794  05A0  0825               	movf	_GpsSeg_count^(0+128),w
   795  05A1  3A01               	xorlw	1
   796  05A2  1903               	btfsc	3,2
   797  05A3  2D58               	goto	l105
   798  05A4  3A03               	xorlw	3
   799  05A5  1903               	btfsc	3,2
   800  05A6  2D94               	goto	l115
   801  05A7  3A05               	xorlw	5
   802  05A8  1903               	btfsc	3,2
   803  05A9  2D9D               	goto	l119
   804  05AA  3A0F               	xorlw	15
   805  05AB  1903               	btfsc	3,2
   806  05AC  2D9D               	goto	l119
   807  05AD  2DCC               	goto	l53
   808                           ;GPS.C: 272: break;
   809                           ;GPS.C: 273: case 4:
   810                           ;GPS.C: 274: switch(GpsSeg_count){
   811  05AE                     l124
   812                           ;GPS.C: 275: case 2:
   813                           ;GPS.C: 276: if(GpsByte_count<1)
   814  05AE  3001               	movlw	1
   815  05AF  0221               	subwf	_GpsByte_count^(0+128),w
   816  05B0  1803               	btfsc	3,0
   817  05B1  2DCC               	goto	l53
   818                           ;GPS.C: 277: {
   819  05B2  3080               	movlw	-128
   820  05B3  05A4               	andwf	_GpsLock^(0+128)
   821                           ;GPS.C: 279: GpsLock|=(tmp-0x30);
   822  05B4  1283               	bcf	3,5
   823  05B5  082F               	movf	?a_GPS_Decode,w
   824  05B6  3ED0               	addlw	-48
   825  05B7  1683               	bsf	3,5
   826  05B8  04A4               	iorwf	_GpsLock^(0+128)
   827                           ;GPS.C: 280: }
   828  05B9  2DCC               	goto	l53
   829  05BA                     l123
   830  05BA  0825               	movf	_GpsSeg_count^(0+128),w
   831  05BB  3A02               	xorlw	2
   832  05BC  1903               	btfsc	3,2
   833  05BD  2DAE               	goto	l124
   834  05BE  2DCC               	goto	l53
   835                           ;GPS.C: 283: break;
   836  05BF                     l56
   837  05BF  0823               	movf	_GpsCmd_number^(0+128),w
   838  05C0  3A01               	xorlw	1
   839  05C1  1903               	btfsc	3,2
   840  05C2  2D3A               	goto	l59
   841  05C3  3A03               	xorlw	3
   842  05C4  1903               	btfsc	3,2
   843  05C5  2D53               	goto	l99
   844  05C6  3A01               	xorlw	1
   845  05C7  1903               	btfsc	3,2
   846  05C8  2DA0               	goto	l104
   847  05C9  3A07               	xorlw	7
   848  05CA  1903               	btfsc	3,2
   849  05CB  2DBA               	goto	l123
   850  05CC                     l53
   851  05CC  1683               	bsf	3,5
   852  05CD                     L18
   853  05CD  0AA1               	incf	_GpsByte_count^(0+128)
   854                           ;GPS.C: 287: break;
   855  05CE  2DDC               	goto	l24
   856  05CF                     l26
   857  05CF  1283               	bcf	3,5
   858  05D0  1303               	bcf	3,6	;carry unused
   859  05D1  082F               	movf	?a_GPS_Decode,w
   860  05D2  3A24               	xorlw	36
   861  05D3  1903               	btfsc	3,2
   862  05D4  2C0E               	goto	l27
   863  05D5  3A0E               	xorlw	14
   864  05D6  1903               	btfsc	3,2
   865  05D7  2C1F               	goto	l31
   866  05D8  3A06               	xorlw	6
   867  05D9  1903               	btfsc	3,2
   868  05DA  2C13               	goto	l28
   869  05DB  2C2F               	goto	l36
   870                           ;GPS.C: 289: }
   871  05DC                     l24
   872  05DC  1283               	bcf	3,5
   873  05DD  0008               	return
   874                           
   875                           	psect	const1
   876                           ;TRW24G.c: 21: static volatile bank1 unsigned c
      +                          har RF_SET[12];
   877                           ;TRW24G.c: 26: const unsigned char TRW_24G_Tabl
      +                          e[]={
   878                           ;TRW24G.c: 27: 0x8E,0x08,0x1C,
   879                           ;TRW24G.c: 28: 0xC8,0xC8,
   880                           ;TRW24G.c: 29: 0xC0,0xAA,0x55,0xAA,0x55,
   881                           ;TRW24G.c: 30: 0xAA,0x55,0xAA,0x55,0xAA,
   882                           ;TRW24G.c: 31: 0xA3,
   883                           ;TRW24G.c: 32: 0x4F,
   884                           ;TRW24G.c: 33: 0x35 };
   885  007E  0782               	addwf	2
   886  007F                     _TRW_24G_Table
   887  007F  348E               	retlw	-114
   888  0080  3408               	retlw	8
   889  0081  341C               	retlw	28
   890  0082  34C8               	retlw	-56
   891  0083  34C8               	retlw	-56
   892  0084  34C0               	retlw	-64
   893  0085  34AA               	retlw	-86
   894  0086  3455               	retlw	85
   895  0087  34AA               	retlw	-86
   896  0088  3455               	retlw	85
   897  0089  34AA               	retlw	-86
   898  008A  3455               	retlw	85
   899  008B  34AA               	retlw	-86
   900  008C  3455               	retlw	85
   901  008D  34AA               	retlw	-86
   902  008E  34A3               	retlw	-93
   903  008F  344F               	retlw	79
   904  0090  3435               	retlw	53
   905                           
   906                           	psect	text6
   907                           ;TRW24G.c: 124: void Write_TRW_24G_BYTE(unsigne
      +                          d char x)
   908                           ;TRW24G.c: 125: {
   909  05DE                     _Write_TRW_24G_BYTE
   910                           ;	_x assigned to ?a_Write_TRW_24G_BYTE+0
   911  0000                     _Write_TRW_24G_BYTE$x	set	?a_Write_TRW_24G_BYTE
   912                           ;	_i assigned to ?a_Write_TRW_24G_BYTE+1
   913  0000                     _Write_TRW_24G_BYTE$i	set	?a_Write_TRW_24G_BYTE
      +                          +1
   914                           ;_x stored from w
   915  05DE  0183               	clrf	3	;select bank 0
   916  05DF  00AC               	movwf	?a_Write_TRW_24G_BYTE
   917                           ;TRW24G.c: 126: unsigned char i;
   918  05E0  01AD               	clrf	?a_Write_TRW_24G_BYTE+1
   919  05E1                     l138
   920                           ;TRW24G.c: 128: {
   921                           ;TRW24G.c: 129: RC3 = 0;
   922  05E1  1187               	bcf	7,3
   923                           ;TRW24G.c: 130: { delayus_variable=(unsigned ch
      +                          ar)(2/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
   924  05E2  01A6               	clrf	_delayus_variable
   925  05E3  0AA6               	incf	_delayus_variable
   926  05E4  0000               	nop	;#
   927  05E5  0BA6               	decfsz	_delayus_variable	;#
   928  05E6  2DDC               	goto	($+-2)	;#
   929                           ;TRW24G.c: 131: if(x&0x80)
   930  05E7  1FAC               	btfss	?a_Write_TRW_24G_BYTE,7
   931  05E8  2DEB               	goto	l141
   932                           ;TRW24G.c: 132: RC4= 1;
   933  05E9  1607               	bsf	7,4
   934                           ;TRW24G.c: 133: else
   935  05EA  2DEC               	goto	l142
   936  05EB                     l141
   937                           ;TRW24G.c: 134: RC4= 0;
   938  05EB  1207               	bcf	7,4
   939  05EC                     l142
   940                           ;TRW24G.c: 135: x<<=1;
   941  05EC  1003               	bcf	3,0
   942  05ED  0DAC               	rlf	?a_Write_TRW_24G_BYTE
   943                           ;TRW24G.c: 136: { delayus_variable=(unsigned ch
      +                          ar)(2/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
   944  05EE  01A6               	clrf	_delayus_variable
   945  05EF  0AA6               	incf	_delayus_variable
   946  05F0  0000               	nop	;#
   947  05F1  0BA6               	decfsz	_delayus_variable	;#
   948  05F2  2DDC               	goto	($+-2)	;#
   949                           ;TRW24G.c: 137: RC3 = 1;
   950  05F3  1587               	bsf	7,3
   951                           ;TRW24G.c: 138: { delayus_variable=(unsigned ch
      +                          ar)(2/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
   952  05F4  01A6               	clrf	_delayus_variable
   953  05F5  0AA6               	incf	_delayus_variable
   954  05F6  0000               	nop	;#

⌨️ 快捷键说明

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