main.lst
来自「用PIC16F887做的4个触摸按键的例程」· LST 代码 · 共 1,310 行 · 第 1/5 页
LST
1,310 行
1011 005E' 0180 clrf 0
1012 ;main.c: 442: if (INDEX == 3)
1013 005F' 0800' movf _INDEX,w
1014 0060' 3A03 xorlw 3
1015 0061' 1D03 btfss 3,2
1016 0062' 2800' goto l121
1017 ;main.c: 443: TRIP[INDEX] = 130;
1018 0063' 0800' movf _INDEX,w
1019 0064' 0700' addwf _INDEX,w
1020 0065' 3E00' addlw _TRIP^(0+256)
1021 0066' 0084 movwf 4
1022 0067' 1783 bsf 3,7
1023 0068' 3082 movlw 130
1024 0069' 2800' goto L3
1025 006A' l121
1026 ;main.c: 444: else if (INDEX == 4)
1027 006A' 0800' movf _INDEX,w
1028 006B' 3A04 xorlw 4
1029 006C' 1D03 btfss 3,2
1030 006D' 2800' goto l123
1031 ;main.c: 445: TRIP[INDEX] = 135;
1032 006E' 0800' movf _INDEX,w
1033 006F' 0700' addwf _INDEX,w
1034 0070' 3E00' addlw _TRIP^(0+256)
1035 0071' 0084 movwf 4
1036 0072' 1783 bsf 3,7
1037 0073' 3087 movlw 135
1038 0074' 2800' goto L3
1039 0075' l123
1040 ;main.c: 446: else if (INDEX == 6)
1041 0075' 0800' movf _INDEX,w
1042 0076' 3A06 xorlw 6
1043 0077' 1D03 btfss 3,2
1044 0078' 2800' goto l122
1045 ;main.c: 447: TRIP[INDEX] = 120;
1046 0079' 0800' movf _INDEX,w
1047 007A' 0700' addwf _INDEX,w
1048 007B' 3E00' addlw _TRIP^(0+256)
1049 007C' 0084 movwf 4
1050 007D' 1783 bsf 3,7
1051 007E' 3078 movlw 120
1052 007F' L3
1053 007F' 0080 movwf 0
1054 0080' 0A84 incf 4
1055 0081' 0180 clrf 0
1056 0082' l122
1057 ;main.c: 450: if (INDEX == 1)
1058 0082' 0B00' decfsz _INDEX,w
1059 0083' 2800' goto l127
1060 ;main.c: 451: TRIP[INDEX] = 165;
1061 0084' 0800' movf _INDEX,w
1062 0085' 0700' addwf _INDEX,w
1063 0086' 3E00' addlw _TRIP^(0+256)
1064 0087' 0084 movwf 4
1065 0088' 1783 bsf 3,7
1066 0089' 30A5 movlw 165
1067 008A' 2800' goto L4
1068 ;main.c: 453: } else if (INDEX != 0) {
1069 008B' l120
1070 008B' 0880' movf _INDEX
1071 008C' 1903 btfsc 3,2
1072 008D' 2800' goto l128
1073 ;main.c: 455: if (INDEX == 11)
1074 008E' 0800' movf _INDEX,w
1075 008F' 3A0B xorlw 11
1076 0090' 1D03 btfss 3,2
1077 0091' 2800' goto l129
1078 ;main.c: 456: TRIP[INDEX] = 110;
1079 0092' 0800' movf _INDEX,w
1080 0093' 0700' addwf _INDEX,w
1081 0094' 3E00' addlw _TRIP^(0+256)
1082 0095' 0084 movwf 4
1083 0096' 1783 bsf 3,7
1084 0097' 306E movlw 110
1085 0098' 0080 movwf 0
1086 0099' 0A84 incf 4
1087 009A' 0180 clrf 0
1088 009B' l129
1089 ;main.c: 457: if (INDEX == 12)
1090 009B' 0800' movf _INDEX,w
1091 009C' 3A0C xorlw 12
1092 009D' 1D03 btfss 3,2
1093 009E' 2800' goto l130
1094 ;main.c: 458: TRIP[INDEX] = 100;
1095 009F' 0800' movf _INDEX,w
1096 00A0' 0700' addwf _INDEX,w
1097 00A1' 3E00' addlw _TRIP^(0+256)
1098 00A2' 0084 movwf 4
1099 00A3' 1783 bsf 3,7
1100 00A4' 3064 movlw 100
1101 00A5' 0080 movwf 0
1102 00A6' 0A84 incf 4
1103 00A7' 0180 clrf 0
1104 00A8' l130
1105 ;main.c: 459: if (INDEX == 13)
1106 00A8' 0800' movf _INDEX,w
1107 00A9' 3A0D xorlw 13
1108 00AA' 1D03 btfss 3,2
1109 00AB' 2800' goto l131
1110 ;main.c: 460: TRIP[INDEX] = 110;
1111 00AC' 0800' movf _INDEX,w
1112 00AD' 0700' addwf _INDEX,w
1113 00AE' 3E00' addlw _TRIP^(0+256)
1114 00AF' 0084 movwf 4
1115 00B0' 1783 bsf 3,7
1116 00B1' 306E movlw 110
1117 00B2' 0080 movwf 0
1118 00B3' 0A84 incf 4
1119 00B4' 0180 clrf 0
1120 00B5' l131
1121 ;main.c: 461: if (INDEX == 14)
1122 00B5' 0800' movf _INDEX,w
1123 00B6' 3A0E xorlw 14
1124 00B7' 1D03 btfss 3,2
1125 00B8' 2800' goto l132
1126 ;main.c: 462: TRIP[INDEX] = 115;
1127 00B9' 0800' movf _INDEX,w
1128 00BA' 0700' addwf _INDEX,w
1129 00BB' 3E00' addlw _TRIP^(0+256)
1130 00BC' 0084 movwf 4
1131 00BD' 1783 bsf 3,7
1132 00BE' 3073 movlw 115
1133 00BF' 0080 movwf 0
1134 00C0' 0A84 incf 4
1135 00C1' 0180 clrf 0
1136 00C2' l132
1137 ;main.c: 463: if (INDEX == 15)
1138 00C2' 0800' movf _INDEX,w
1139 00C3' 3A0F xorlw 15
1140 00C4' 1D03 btfss 3,2
1141 00C5' 2800' goto l133
1142 ;main.c: 464: TRIP[INDEX] = 130;
1143 00C6' 0800' movf _INDEX,w
1144 00C7' 0700' addwf _INDEX,w
1145 00C8' 3E00' addlw _TRIP^(0+256)
1146 00C9' 0084 movwf 4
1147 00CA' 1783 bsf 3,7
1148 00CB' 3082 movlw 130
1149 00CC' 0080 movwf 0
1150 00CD' 0A84 incf 4
1151 00CE' 0180 clrf 0
1152 00CF' l133
1153 ;main.c: 465: if (INDEX == 16)
1154 00CF' 0800' movf _INDEX,w
1155 00D0' 3A10 xorlw 16
1156 00D1' 1D03 btfss 3,2
1157 00D2' 2800' goto l127
1158 ;main.c: 466: TRIP[INDEX] = 130;
1159 00D3' 0800' movf _INDEX,w
1160 00D4' 0700' addwf _INDEX,w
1161 00D5' 3E00' addlw _TRIP^(0+256)
1162 00D6' 0084 movwf 4
1163 00D7' 1783 bsf 3,7
1164 00D8' 3082 movlw 130
1165 00D9' L4
1166 00D9' 0080 movwf 0
1167 00DA' 0A84 incf 4
1168 00DB' 0180 clrf 0
1169 ;main.c: 468: } else {
1170 00DC' 2800' goto l127
1171 00DD' l128
1172 ;main.c: 470: TRIP[INDEX] = 1500;
1173 00DD' 0800' movf _INDEX,w
1174 00DE' 0700' addwf _INDEX,w
1175 00DF' 3E00' addlw _TRIP^(0+256)
1176 00E0' 0084 movwf 4
1177 00E1' 1783 bsf 3,7
1178 00E2' 30DC movlw 220
1179 00E3' 0080 movwf 0
1180 00E4' 0A84 incf 4
1181 00E5' 3005 movlw 5
1182 00E6' 0080 movwf 0
1183 00E7' l127
1184 00E7' 0A80' incf _INDEX
1185 00E8' l119
1186 00E8' 3011 movlw 17
1187 00E9' 0200' subwf _INDEX,w
1188 00EA' 1C03 btfss 3,0
1189 00EB' 2800' goto l116
1190 ;main.c: 471: }
1191 00EC' 30A0 movlw -96
1192 00ED' 0080' movwf _FIRST
1193 ;main.c: 483: OSCCON = 0x7F;
1194 00EE' 307F movlw 127
1195 00EF' 1683 bsf 3,5
1196 00F0' 008F movwf 15 ;volatile
1197 ;main.c: 485: VRCON = 0x87;
1198 00F1' 3087 movlw -121
1199 00F2' 0097 movwf 23
1200 ;main.c: 486: CM1CON0 = COMP1[0];
1201 00F3' 120A' 118A' 2000' fcall _COMP1
1202 00F6' 1283 bcf 3,5
1203 00F7' 1703 bsf 3,6
1204 00F8' 0087 movwf 7 ;volatile
1205 ;main.c: 487: CM2CON0 = COMP2[0];
1206 00F9' 120A' 118A' 2000' fcall _COMP2
+ 120A' 118A'
1207 00FE' 0088 movwf 8 ;volatile
1208 ;main.c: 488: INDEX = 0;
1209 00FF' 1303 bcf 3,6 ;carry unused
1210 0100' 0180' clrf _INDEX
1211 ;main.c: 489: CM2CON1 = 0x32;
1212 0101' 3032 movlw 50
1213 0102' 1703 bsf 3,6
1214 0103' 0089 movwf 9 ;volatile
1215 ;main.c: 491: ANSEL = 0x07;
1216 0104' 3007 movlw 7
1217 0105' 1683 bsf 3,5
1218 0106' 0088 movwf 8
1219 ;main.c: 492: ANSELH = 0x00;
1220 0107' 0189 clrf 9
1221 ;main.c: 494: SRCON = 0xF0;
1222 0108' 30F0 movlw -16
1223 0109' 0085 movwf 5 ;volatile
1224 ;main.c: 496: T1CON = 0x06;
1225 010A' 3006 movlw 6
1226 010B' 1283 bcf 3,5
1227 010C' 1303 bcf 3,6 ;carry unused
1228 010D' 0090 movwf 16
1229 ;main.c: 497: OPTION = 0x84;
1230 010E' 3084 movlw -124
1231 010F' 1683 bsf 3,5
1232 0110' 0081 movwf 1
1233 ;main.c: 499: RestartTimers();
1234 0111' 2000' fcall _RestartTimers
1235 ;main.c: 501: INTCON = 0;
1236 0112' 018B clrf 11 ;volatile
1237 ;main.c: 502: T0IE = 1;
1238 0113' 168B bsf 11,5
1239 ;main.c: 503: }
1240 0114' 0008 return ;W free
1241 0115' _INIT
1242 ;main.c: 314: void INIT(void) {
1243 0115' 303F movlw 63
1244 0116' 1683 bsf 3,5
1245 0117' 1303 bcf 3,6 ;carry unused
1246 0118' 0585 andwf 5 ;volatile
1247 ;main.c: 331: TRISC &= 0b00011101;
1248 0119' 301D movlw 29
1249 011A' 0587 andwf 7 ;volatile
1250 ;main.c: 332: TRISD &= 0b10000000;
1251 011B' 3080 movlw -128
1252 011C' 0588 andwf 8 ;volatile
1253 ;main.c: 333: TRISE &= 0b11111000;
1254 011D' 30F8 movlw -8
1255 011E' 0589 andwf 9 ;volatile
1256 ;main.c: 336: TRISB &= 0b11110000;
1257 011F' 30F0 movlw -16
1258 0120' 0586 andwf 6 ;volatile
1259 ;main.c: 339: TRISC &= 0b11111011;
1260 0121' 1107 bcf 7,2 ;volatile
1261 ;main.c: 342: TRISA &= 0b11011111;
1262 0122' 1285 bcf 5,5 ;volatile
1263 ;main.c: 343: TRISA |= 0b00000011;
1264 0123' 3003 movlw 3
1265 0124' 0485 iorwf 5 ;volatile
1266 ;main.c: 344: TRISC |= 0b00000001;
1267 0125' 1407 bsf 7,0 ;volatile
1268 ;main.c: 352: CapInit();
1269 0126' 2000' fcall _CapInit
1270 ;main.c: 353: SSPInit();
1
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?