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

📄 main.lst

📁 一個使用PIC16F877解GPS訊號的範例
💻 LST
📖 第 1 页 / 共 5 页
字号:
   955  05F7  0BA6               	decfsz	_delayus_variable	;#
   956  05F8  2DDC               	goto	($+-2)	;#
   957                           ;TRW24G.c: 140: RC3 = 0;
   958  05F9  1187               	bcf	7,3
   959                           ;TRW24G.c: 141: { delayus_variable=(unsigned ch
      +                          ar)(2/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
   960  05FA  01A6               	clrf	_delayus_variable
   961  05FB  0AA6               	incf	_delayus_variable
   962  05FC  0000               	nop	;#
   963  05FD  0BA6               	decfsz	_delayus_variable	;#
   964  05FE  2DDC               	goto	($+-2)	;#
   965                           ;TRW24G.c: 142: }
   966  05FF  0AAD               	incf	?a_Write_TRW_24G_BYTE+1
   967  0600  3008               	movlw	8
   968  0601  022D               	subwf	?a_Write_TRW_24G_BYTE+1,w
   969  0602  1803               	btfsc	3,0
   970  0603  0008               	return
   971  0604  2DE1               	goto	l138
   972                           ;TRW24G.c: 169: void RF_24G_SetTxRxByte(unsigne
      +                          d char channel)
   973                           ;TRW24G.c: 170: {
   974  0605                     _RF_24G_SetTxRxByte
   975                           ;	_channel assigned to ?a_RF_24G_SetTxRxByte+0
   976  0000                     _RF_24G_SetTxRxByte$channel	set	?a_RF_24G_SetTx
      +                          RxByte
   977                           ;_channel stored from w
   978  0605  0183               	clrf	3	;select bank 0
   979  0606  00A8               	movwf	?a_RF_24G_SetTxRxByte
   980                           ;TRW24G.c: 171: TRISC=0xA0;
   981  0607  30A0               	movlw	-96
   982  0608  1683               	bsf	3,5
   983  0609  0087               	movwf	7	;volatile
   984                           ;TRW24G.c: 172: RC1 = 0;
   985  060A  1283               	bcf	3,5
   986  060B  1087               	bcf	7,1
   987                           ;TRW24G.c: 173: RC0 = 1;
   988  060C  1407               	bsf	7,0
   989                           ;TRW24G.c: 174: { delayus_variable=(unsigned ch
      +                          ar)(10/2); asm("nop"); } asm("decfsz _delayus_v
      +                          ariable,f"); asm("goto $ - 2");;
   990  060D  3005               	movlw	5
   991  060E  00A6               	movwf	_delayus_variable
   992  060F  0000               	nop	;#
   993  0610  0BA6               	decfsz	_delayus_variable	;#
   994  0611  2DDC               	goto	($+-2)	;#
   995                           ;TRW24G.c: 175: Write_TRW_24G_BYTE(channel);
   996  0612  0828               	movf	?a_RF_24G_SetTxRxByte,w
   997  0613  25DE               	fcall	_Write_TRW_24G_BYTE
   998                           ;TRW24G.c: 176: { delayus_variable=(unsigned ch
      +                          ar)(10/2); asm("nop"); } asm("decfsz _delayus_v
      +                          ariable,f"); asm("goto $ - 2");;
   999  0614  3005               	movlw	5
  1000  0615  00A6               	movwf	_delayus_variable
  1001  0616  0000               	nop	;#
  1002  0617  0BA6               	decfsz	_delayus_variable	;#
  1003  0618  2DDC               	goto	($+-2)	;#
  1004                           ;TRW24G.c: 178: RC0 = 0;
  1005  0619  1007               	bcf	7,0
  1006                           ;TRW24G.c: 179: { delayus_variable=(unsigned ch
      +                          ar)(2/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
  1007  061A  01A6               	clrf	_delayus_variable
  1008  061B  0AA6               	incf	_delayus_variable
  1009  061C  0000               	nop	;#
  1010  061D  0BA6               	decfsz	_delayus_variable	;#
  1011  061E  2DDC               	goto	($+-2)	;#
  1012                           ;TRW24G.c: 181: }
  1013  061F  0008               	return
  1014  0620                     _Send_TRW_24G
  1015                           ;	_NumOfByte assigned to ?a_Send_TRW_24G+0
  1016  0000                     _Send_TRW_24G$NumOfByte	set	?a_Send_TRW_24G
  1017                           ;	_c assigned to ?a_Send_TRW_24G+1
  1018  0000                     _Send_TRW_24G$c	set	?a_Send_TRW_24G+1
  1019                           ;	_i assigned to ?a_Send_TRW_24G+2
  1020  0000                     _Send_TRW_24G$i	set	?a_Send_TRW_24G+2
  1021                           ;_NumOfByte stored from w
  1022  0620  0183               	clrf	3	;select bank 0
  1023  0621  00A8               	movwf	?a_Send_TRW_24G
  1024                           ;TRW24G.c: 214: unsigned char i,c;
  1025  0622  30A0               	movlw	-96
  1026  0623  1683               	bsf	3,5
  1027  0624  0087               	movwf	7	;volatile
  1028                           ;TRW24G.c: 217: RF_24G_SetTxRx(0);
  1029  0625  3000               	movlw	0
  1030  0626  275E  120A  118A   	fcall	_RF_24G_SetTxRx
  1031                           ;TRW24G.c: 221: RC0 = 0;
  1032  0629  1007               	bcf	7,0
  1033                           ;TRW24G.c: 222: RC1 = 1;
  1034  062A  1487               	bsf	7,1
  1035                           ;TRW24G.c: 223: { delayus_variable=(unsigned ch
      +                          ar)(10/2); asm("nop"); } asm("decfsz _delayus_v
      +                          ariable,f"); asm("goto $ - 2");;
  1036  062B  3005               	movlw	5
  1037  062C  00A6               	movwf	_delayus_variable
  1038  062D  0000               	nop	;#
  1039  062E  0BA6               	decfsz	_delayus_variable	;#
  1040  062F  2DDC               	goto	($+-2)	;#
  1041                           ;TRW24G.c: 226: Write_TRW_24G_BYTE(0xAA);
  1042  0630  30AA               	movlw	-86
  1043  0631  25DE               	fcall	_Write_TRW_24G_BYTE
  1044                           ;TRW24G.c: 227: Write_TRW_24G_BYTE(0x55);
  1045  0632  3055               	movlw	85
  1046  0633  25DE               	fcall	_Write_TRW_24G_BYTE
  1047                           ;TRW24G.c: 228: Write_TRW_24G_BYTE(0xAA);
  1048  0634  30AA               	movlw	-86
  1049  0635  25DE               	fcall	_Write_TRW_24G_BYTE
  1050                           ;TRW24G.c: 229: Write_TRW_24G_BYTE(0x55);
  1051  0636  3055               	movlw	85
  1052  0637  25DE               	fcall	_Write_TRW_24G_BYTE
  1053                           ;TRW24G.c: 230: Write_TRW_24G_BYTE(0xAA);
  1054  0638  30AA               	movlw	-86
  1055  0639  25DE               	fcall	_Write_TRW_24G_BYTE
  1056                           ;TRW24G.c: 232: for(i=0;i<NumOfByte;i++)
  1057  063A  01AA               	clrf	?a_Send_TRW_24G+2
  1058  063B  2E4F               	goto	l157
  1059  063C                     l154
  1060                           ;TRW24G.c: 233: {
  1061                           ;TRW24G.c: 234: c=*p++;
  1062  063C  0829               	movf	?_Send_TRW_24G+1,w
  1063  063D  00B4               	movwf	code_ptr+1
  1064  063E  0828               	movf	?_Send_TRW_24G,w
  1065  063F  120A  118A  2068   	fcall	string_table
      +       120A  118A         
  1066  0644  00A9               	movwf	?a_Send_TRW_24G+1
  1067  0645  0AA8               	incf	?_Send_TRW_24G
  1068  0646  1903               	btfsc	3,2
  1069  0647  0AA9               	incf	?_Send_TRW_24G+1
  1070                           ;TRW24G.c: 235: Write_TRW_24G_BYTE(c);
  1071  0648  25DE               	fcall	_Write_TRW_24G_BYTE
  1072                           ;TRW24G.c: 237: { delayus_variable=(unsigned ch
      +                          ar)(5/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
  1073  0649  3002               	movlw	2
  1074  064A  00A6               	movwf	_delayus_variable
  1075  064B  0000               	nop	;#
  1076  064C  0BA6               	decfsz	_delayus_variable	;#
  1077  064D  2DDC               	goto	($+-2)	;#
  1078                           ;TRW24G.c: 241: }
  1079  064E  0AAA               	incf	?a_Send_TRW_24G+2
  1080  064F                     l157
  1081  064F  0828               	movf	?a_Send_TRW_24G,w
  1082  0650  022A               	subwf	?a_Send_TRW_24G+2,w
  1083  0651  1C03               	btfss	3,0
  1084  0652  2E3C               	goto	l154
  1085                           ;TRW24G.c: 242: RC1 = 0;
  1086  0653  1087               	bcf	7,1
  1087                           ;TRW24G.c: 243: DelayMs(10);
  1088  0654  300A               	movlw	10
  1089  0655  26C4               	fcall	_DelayMs
  1090                           ;TRW24G.c: 245: RF_24G_SetTxRx(1);
  1091  0656  3001               	movlw	1
  1092  0657  275E  120A  118A   	fcall	_RF_24G_SetTxRx
  1093                           ;TRW24G.c: 246: RC1 = 1;
  1094  065A  1487               	bsf	7,1
  1095                           ;TRW24G.c: 248: }
  1096  065B  0008               	return
  1097                           ;TRW24G.c: 253: void SendDataToRF(void)
  1098                           ;TRW24G.c: 254: {
  1099  065C                     _SendDataToRF
  1100                           ;	_c assigned to ?a_SendDataToRF+0
  1101  0000                     _SendDataToRF$c	set	?a_SendDataToRF
  1102                           ;TRW24G.c: 255: unsigned char i,c;
  1103  065C  30A0               	movlw	-96
  1104  065D  1683               	bsf	3,5
  1105  065E  1303               	bcf	3,6	;carry unused
  1106  065F  0087               	movwf	7	;volatile
  1107                           ;TRW24G.c: 258: RF_24G_SetTxRx(0);
  1108  0660  3000               	movlw	0
  1109  0661  275E  120A  118A   	fcall	_RF_24G_SetTxRx
  1110                           ;TRW24G.c: 260: RC0 = 0;
  1111  0664  1007               	bcf	7,0
  1112                           ;TRW24G.c: 261: RC1 = 1;
  1113  0665  1487               	bsf	7,1
  1114                           ;TRW24G.c: 262: { delayus_variable=(unsigned ch
      +                          ar)(10/2); asm("nop"); } asm("decfsz _delayus_v
      +                          ariable,f"); asm("goto $ - 2");;
  1115  0666  3005               	movlw	5
  1116  0667  00A6               	movwf	_delayus_variable
  1117  0668  0000               	nop	;#
  1118  0669  0BA6               	decfsz	_delayus_variable	;#
  1119  066A  2DDC               	goto	($+-2)	;#
  1120                           ;TRW24G.c: 265: Write_TRW_24G_BYTE(0xC0);
  1121  066B  30C0               	movlw	-64
  1122  066C  25DE               	fcall	_Write_TRW_24G_BYTE
  1123                           ;TRW24G.c: 266: Write_TRW_24G_BYTE(0xAA);
  1124  066D  30AA               	movlw	-86
  1125  066E  25DE               	fcall	_Write_TRW_24G_BYTE
  1126                           ;TRW24G.c: 267: Write_TRW_24G_BYTE(0x55);
  1127  066F  3055               	movlw	85
  1128  0670  25DE               	fcall	_Write_TRW_24G_BYTE
  1129                           ;TRW24G.c: 268: Write_TRW_24G_BYTE(0xAA);
  1130  0671  30AA               	movlw	-86
  1131  0672  25DE               	fcall	_Write_TRW_24G_BYTE
  1132                           ;TRW24G.c: 269: Write_TRW_24G_BYTE(0x55);
  1133  0673  3055               	movlw	85
  1134  0674  25DE               	fcall	_Write_TRW_24G_BYTE
  1135                           ;TRW24G.c: 271: Write_TRW_24G_BYTE(GpsLock);
  1136  0675  1683               	bsf	3,5
  1137  0676  0824               	movf	_GpsLock^(0+128),w
  1138  0677  25DE               	fcall	_Write_TRW_24G_BYTE
  1139                           ;TRW24G.c: 273: c=0;
  1140  0678  01A9               	clrf	?a_SendDataToRF
  1141                           ;TRW24G.c: 274: if(bJD_EW) c=1;
  1142  0679  1DA0               	btfss	_bJD_EW/(0+8),_bJD_EW& (0+7)
  1143  067A  2E7D               	goto	l159
  1144  067B  01A9               	clrf	?a_SendDataToRF
  1145  067C  0AA9               	incf	?a_SendDataToRF
  1146  067D                     l159
  1147                           ;TRW24G.c: 275: if(bWD_NS) c|=0x10;
  1148  067D  1A20               	btfsc	_bWD_NS/(0+8),_bWD_NS& (0+7)
  1149  067E  1629               	bsf	?a_SendDataToRF,4
  1150                           ;TRW24G.c: 276: Write_TRW_24G_BYTE(c);
  1151  067F  0829               	movf	?a_SendDataToRF,w
  1152  0680  25DE               	fcall	_Write_TRW_24G_BYTE
  1153                           ;TRW24G.c: 278: Write_TRW_24G_BYTE(IntWDValue);
  1154  0681  1683               	bsf	3,5
  1155  0682  0826               	movf	_IntWDValue^(0+128),w
  1156  0683  25DE               	fcall	_Write_TRW_24G_BYTE
  1157                           ;TRW24G.c: 279: Write_TRW_24G_BYTE(FloatWDValue
      +                          [0]);
  1158  0684  1683               	bsf	3,5
  1159  0685  082F               	movf	_FloatWDValue^(0+128),w
  1160  0686  25DE               	fcall	_Write_TRW_24G_BYTE
  1161                           ;TRW24G.c: 280: Write_TRW_24G_BYTE(FloatWDValue
      +                          [1]);
  1162  0687  1683               	bsf	3,5
  1163  0688  0830               	movf	(_FloatWDValue+1)^(0+128),w
  1164  0689  25DE               	fcall	_Write_TRW_24G_BYTE
  1165                           ;TRW24G.c: 281: Write_TRW_24G_BYTE(FloatWDValue
      +                          [2]);
  1166  068A  1683               	bsf	3,5
  1167  068B  0831               	movf	(_FloatWDValue+2)^(0+128),w
  1168  068C  25DE               	fcall	_Write_TRW_24G_BYTE
  1169                           ;TRW24G.c: 283: Write_TRW_24G_BYTE(IntJDValue[0
      +                          ]);
  1170  068D  1683               	bsf	3,5
  1171  068E  082A               	movf	_IntJDValue^(0+128),w
  1172  068F  25DE               	fcall	_Write_TRW_24G_BYTE
  1173                           ;TRW24G.c: 284: Write_TRW_24G_BYTE(IntJDValue[1
      +                          ]);
  1174  0690  1683               	bsf	3,5
  1175  0691  082B               	movf	(_IntJDValue+1)^(0+128),w
  1176  0692  25DE               	fcall	_Write_TRW_24G_BYTE
  1177                           ;TRW24G.c: 285: Write_TRW_24G_BYTE(FloatJDValue
      +                          [0]);

⌨️ 快捷键说明

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