![]() |
![]() |
![]() |
|
|
|||||||
| Micro Controllers Discuss all aspects of micro controllers - building them, coding them, etc. All controllers are welcome - PIC, BASIC, Z8 Encore!, etc. |
|
|
Thread Tools | Display Modes |
|
|
(permalink) |
|
I am having problems with this program always giving me errors and i would like some help with this. It is written for a PIC[/b]
MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 1 LOC OBJECT CODE LINE SOURCE TEXT VALUE Warning[205]: Found directive in column 1. (TITLE) 00001 TITLE "Card Reader" 00002 00003 LIST C=120, b=4 00004 LIST P=12C509 00005 00006 ERRORLEVEL -305 ; Suppress "Using default 00007 Warning[207]: Found label after column 1. (INDF) 00000000 00008 INDF EQU 0x00 Warning[207]: Found label after column 1. (TMR0) 00000001 00009 TMR0 EQU 0x01 Warning[207]: Found label after column 1. (Pc) 00000002 00010 Pc EQU 0x02 Warning[207]: Found label after column 1. (STATUS) 00000003 00011 STATUS EQU 0x03 Warning[207]: Found label after column 1. (FSR) 00000004 00012 FSR EQU 0x04 Warning[207]: Found label after column 1. (OSCCAL) 00000005 00013 OSCCAL EQU 0x05 Warning[207]: Found label after column 1. (GPIO) 00000006 00014 GPIO EQU 0x06 ; lower 5 bits only 00015 00016 00017 00000000 00018 GP0 EQU 0x00 00000001 00019 GP1 EQU 0x01 00000002 00020 GP2 EQU 0x02 ; Shared with T0CKI 00000003 00021 GP3 EQU 0x03 ; Always input, shared with MCLR, Vpp 00000004 00022 GP4 EQU 0x04 ; Shared with OSC2 00000005 00023 GP5 EQU 0x05 ; Shared with OSC1, clkin 00024 00025 00026 Warning[207]: Found label after column 1. (C) 00000000 00027 C EQU 0x00 ; Carry flag Warning[207]: Found label after column 1. (DC) 00000001 00028 DC EQU 0x01 ; Digit carry flag Warning[207]: Found label after column 1. (Z) 00000002 00029 Z EQU 0x02 ; Zero flag Warning[207]: Found label after column 1. (PD) 00000003 00030 PD EQU 0x03 ; Power down flag Warning[207]: Found label after column 1. (TO) 00000004 00031 TO EQU 0x04 ; WDT timeout flag Warning[207]: Found label after column 1. (PA0) 00000005 00032 PA0 EQU 0x05 ; Program page select Warning[207]: Found label after column 1. (GPWUF) 00000007 00033 GPWUF EQU 0x07 ; GPIO reset bit 00034 00035 Warning[207]: Found label after column 1. (RP0) 00000005 00036 RP0 EQU 0x05 ; Register page select 00037 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 2 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00038 00039 Warning[207]: Found label after column 1. (LSB) 00000000 00040 LSB EQU 0x00 Warning[207]: Found label after column 1. (MSB) 00000007 00041 MSB EQU 0x07 00042 00043 00044 #DEFINE IFSET BTFSC 00045 #DEFINE IFCLR BTFSS 00046 00047 #DEFINE IFZ SKPNZ 00048 #DEFINE IFNZ SKPZ 00049 #DEFINE IFC SKPNC 00050 #DEFINE IFNC SKPC 00051 00052 #DEFINE SKPSET BTFSS 00053 #DEFINE SKPCLR BTFSC 00054 Warning[207]: Found label after column 1. (start_code) Error[128] : Missing argument(s) 00055 start_code EQU ; Start Sentinel bit pattern, 00056 00057 Warning[207]: Found label after column 1. (end_code) Error[128] : Missing argument(s) 00058 end_code EQU ; End Sentinel bit pattern, 00059 00060 00061 Warning[207]: Found label after column 1. (buf_ptr) 00000007 00062 buf_ptr EQU 0x07 ; card data buffer pointer (nibbles) Warning[207]: Found label after column 1. (num_chr) 00000008 00063 num_chr EQU 0x08 ; Number of characters read from card Warning[207]: Found label after column 1. (count) 00000009 00064 count EQU 0x09 ; General 8 bit counter Warning[207]: Found label after column 1. (flag) 0000000A 00065 flag EQU 0x0A ; Control flags Warning[207]: Found label after column 1. (char_buf) 0000000B 00066 char_buf EQU 0x0B ; Character buffer, input and serial output Warning[207]: Found label after column 1. (parityLRC) 0000000C 00067 parityLRC EQU 0x0C ; Parity/LRC workspace Warning[207]: Found label after column 1. (temp) 0000000D 00068 temp EQU 0x0D ; Temporary workspace 00069 00070 Warning[207]: Found label after column 1. (lo_mem) 00000010 00071 lo_mem EQU 0x10 ; Memory buffer start address: 00072 00073 Warning[207]: Found label after column 1. (hi_mem) 00000033 00074 hi_mem EQU 0x33 ; Memory buffer end 00075 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 3 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00076 00077 00078 00079 if lo_mem > 0x1F 00080 00081 ERROR "Buffer start address (lo_mem) must be in Bank 0" 00082 00083 endif 00084 00085 if hi_mem > 0x1F && hi_mem < 0x30 00086 00087 ERROR "Buffer end address (hi_mem) must be in upper half of Bank 1" 00088 00089 endif 00090 00091 if hi_mem <= 0x1F 00092 00093 buf_sz EQU ((hi_mem - lo_mem) + 1) * 2 00094 00095 else 00096 Warning[207]: Found label after column 1. (buf_sz) 00000028 00097 buf_sz EQU ((hi_mem - lo_mem) - .15) * 2 00098 00099 endif 00100 00101 Warning[207]: Found label after column 1. (found_start) 00000000 00102 found_start EQU 0 Warning[207]: Found label after column 1. (found_end) 00000001 00103 found_end EQU 1 Warning[207]: Found label after column 1. (bad_parity) 00000002 00104 bad_parity EQU 2 Warning[207]: Found label after column 1. (bad_LRC) 00000003 00105 bad_LRC EQU 3 Warning[207]: Found label after column 1. (buf_end) 00000004 00106 buf_end EQU 4 Warning[207]: Found label after column 1. (read_buf) 00000005 00107 read_buf EQU 5 00108 00109 00110 Warning[207]: Found label after column 1. (ser_out) 00000000 00111 ser_out EQU GP0 ; serial TxD pin to host Warning[207]: Found label after column 1. (card) 00000001 00112 card EQU GP1 ; ^CLD signal (low when card present) Warning[207]: Found label after column 1. (clock) 00000002 00113 clock EQU GP2 ; ^RCL signal (low when data valid) Warning[207]: Found label after column 1. (signal) 00000003 00114 signal EQU GP3 ; ^RDT signal from magstripe 00115 Warning[207]: Found label after column 1. (invert_tx) 00000000 00116 invert_tx EQU 0 ; 0 = Idle (logical 1) is 0V MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 4 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00117 0000 00118 ORG 0x00 0000 0025 00119 MOVWF OSCCAL 00120 0001 0A31 00121 GOTO start 00122 Warning[207]: Found label after column 1. (send_char) 0002 00123 send_char 00124 00125 0002 002B 00126 MOVWF char_buf ; Store the character code (in W) 00127 00128 0003 0C0A 00129 MOVLW .10 ; Set the number of bits (including 0004 0029 00130 MOVWF count ; start and stop bits) in count 00131 0005 0403 00132 CLRC ; Clear carry because the start bit 00133 00134 Warning[207]: Found label after column 1. (bit_loop) 0006 00135 bit_loop 0006 0703 00136 IFNC ; serial pin logic 0 00137 if invert_tx 00138 BCF GPIO,ser_out 00139 else 0007 0506 00140 BSF GPIO,ser_out 00141 endif 00142 0008 0603 00143 IFC ; serial pin logic 1 00144 if invert_tx 00145 BSF GPIO,ser_out 00146 else 0009 0406 00147 BCF GPIO,ser_out 00148 endif 00149 000A 090F 00150 CALL bit_delay ; Make up the bit time to 833us 00151 000B 032B 00152 RRF char_buf ; Roll LSB of char_buf into carry, 00153 00154 00155 000C 02E9 00156 DECFSZ count ; Loop until all bits have been 000D 0A06 00157 GOTO bit_loop ; shifted out. 00158 000E 0800 00159 RETLW 0 00160 00161 Warning[207]: Found label after column 1. (bit_delay) 000F 00162 bit_delay 00163 00164 000F 0C34 00165 MOVLW .52 ; Initialise temp 0010 002D 00166 MOVWF temp MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 5 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00167 0011 0C01 00168 MOVLW .1 ; Put 1 in W for incrementing temp 00169 0012 0A13 00170 GOTO $+1 ; Waste 2 cycles 0013 0000 00171 NOP ; Waste 1 cycle 00172 00173 Warning[207]: Found label after column 1. (delay_loop) 0014 00174 delay_loop 0014 01ED 00175 ADDWF temp ; Increment temp 1 0015 0703 00176 IFNC ; Did it overflow? 1 0016 0A14 00177 GOTO delay_loop ; No: go round again 2 00178 00179 00180 0017 0800 00181 RETLW 0 ; Yes: return 00182 00183 00184 Warning[207]: Found label after column 1. (get_put_char) 0018 00185 get_put_char 00186 00187 0018 0307 00188 RRF buf_ptr,W ; load W with buf_ptr/2. Carry 00189 0019 0024 00190 MOVWF FSR ; and use the FSR to point to it 00191 00192 00193 001A 0C10 00194 MOVLW lo_mem ; add the buffer start address 001B 01E4 00195 ADDWF FSR ; to get the physical address to 00196 00197 001C 06A4 00198 IFSET FSR,RP0 ; Check for overflow into the 001D 0584 00199 BSF FSR ,4 ; second register page and set 00200 00201 00202 001E 06AA 00203 IFSET flag,read_buf ; check whether this is a read 001F 0A26 00204 GOTO get_char ; or write operation 00205 Warning[207]: Found label after column 1. (put_char) 0020 00206 put_char 0020 020B 00207 MOVF char_buf,W ; Move the character (in high 00208 00209 0021 0707 00210 IFCLR buf_ptr,LSB ; except if LSB of buf_ptr is 0 0022 038B 00211 SWAPF char_buf,W ; then the destination is an even 00212 00213 00214 0023 0120 00215 IORWF INDF ; since the buffer was cleared 00216 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 6 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00217 0024 0C29 00218 MOVLW buf_sz + 1 ; set limit for put operation 00219 00220 0025 0A2C 00221 GOTO get_put_done 00222 Warning[207]: Found label after column 1. (get_char) 0026 00223 get_char 0026 0200 00224 MOVF INDF,W ; Fetch data from buffer to W 00225 0027 0607 00226 IFSET buf_ptr,LSB ; if LSB of buf_ptr is set the 0028 0380 00227 SWAPF INDF,W ; desired character is an odd 00228 00229 0029 0E0F 00230 ANDLW 0x0F ; mask off upper nibble 00231 002A 002B 00232 MOVWF char_buf ; move it to the character buffer 00233 002B 0208 00234 MOVF num_chr,W ; set limit for get operation 00235 00236 00237 Warning[207]: Found label after column 1. (get_put_done) 002C 00238 get_put_done 002C 02A7 00239 INCF buf_ptr ; increment memory pointer. 00240 002D 0187 00241 XORWF buf_ptr,W ; check if this was the last 00242 00243 002E 0643 00244 IFZ ; if it was, 002F 058A 00245 BSF flag,buf_end ; then set a flag 00246 0030 0800 00247 RETLW 0 00248 00249 00250 00251 Warning[207]: Found label after column 1. (start) 0031 00252 start 0031 0063 00253 CLRF STATUS 00254 Error[113] : Symbol not previously defined (B11000000) 0032 0C00 00255 MOVLW B11000000 ; Disable GPIO pull-ups and wake 00256 0033 0002 00257 OPTION 00258 Error[113] : Symbol not previously defined (B00001110) 0034 0C00 00259 MOVLW B00001110 ; Set GPIO <1:3> as inputs... 0035 0006 00260 TRIS GPIO ; Note: GP3 is always input 00261 0036 0066 00262 CLRF GPIO ; GPIO outputs all 0 00263 00264 if invert_tx MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 7 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00265 BSF GPIO,ser_out ; except for invert_tx condition 00266 endif 00267 00268 00269 00270 0037 0C07 00271 MOVLW 0x07 ; Load start address (0x07) into 0038 0024 00272 MOVWF FSR ; the FSR 00273 Warning[207]: Found label after column 1. (clrloop) 0039 00274 clrloop 0039 0060 00275 CLRF INDF ; Clear the RAM location FSR is 00276 00277 003A 02A4 00278 INCF FSR ; Increment FSR to next location 00279 003B 0204 00280 MOVF FSR,W ; Check if FSR is pointing past 003C 0FD0 00281 XORLW 0x10 | 0xC0 ; its end point. Remember MSBs 00282 00283 003D 0743 00284 IFNZ ; If counter was not 0x10 003E 0A39 00285 GOTO clrloop ; then loop again 00286 Warning[207]: Found label after column 1. (main_loop) 003F 00287 main_loop 00288 00289 003F 0C10 00290 MOVLW lo_mem ; Fetch buffer start address 0040 0024 00291 MOVWF FSR 00292 Warning[207]: Found label after column 1. (clr_buf) Error[122] : Illegal opcode (_loop) 00293 clr_buf _loop 0041 0060 00294 CLRF INDF 00295 0042 02A4 00296 INCF FSR 00297 0043 06A4 00298 IFSET FSR,RP0 ; If FSR points to register page 1 0044 0584 00299 BSF FSR,4 ; set bit 4 to move into 0x3n 00300 00301 0045 0204 00302 MOVF FSR,W ; Check for buffer end address. 0046 0FF4 00303 XORLW (hi_mem + 1) | 0xC0 00304 0047 0743 00305 IFNZ ; If not end then loop around Error[113] : Symbol not previously defined (clr_buf_loop) 0048 0A00 00306 GOTO clr_buf_loop 00307 0049 0067 00308 CLRF buf_ptr ; Initialise buffer pointer to 0 00309 004A 0C28 00310 MOVLW buf_sz ; Initialise the number of 004B 0028 00311 MOVWF num_chr ; characters read to the maximum 00312 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 8 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00313 Error[113] : Symbol not previously defined (start_code) 004C 0C00 00314 MOVLW start_code ; Initialise the LRC to the start 004D 002C 00315 MOVWF parityLRC ; sentinel code. 00316 004E 006A 00317 CLRF flag ; Initialise control flags to 004F 056A 00318 BSF flag ,bad_LRC ; zero then set the bad_LRC 00319 00320 00321 Error[113] : Symbol not previously defined (R) 0050 0C00 00322 MOVLW R ; Send "Ready" from serial port 0051 0902 00323 CALL send_char 00324 Error[113] : Symbol not previously defined (e) 0052 0C00 00325 MOVLW e 0053 0902 00326 CALL send_char 00327 Error[113] : Symbol not previously defined (a) 0054 0C00 00328 MOVLW a 0055 0902 00329 CALL send_char 00330 Error[113] : Symbol not previously defined (d) 0056 0C00 00331 MOVLW d 0057 0902 00332 CALL send_char 00333 Error[113] : Symbol not previously defined (y) 0058 0C00 00334 MOVLW y 0059 0902 00335 CALL send_char 00336 00337 005A 0C0D 00338 MOVLW .13 ; Send CR LF from serial port 005B 0902 00339 CALL send_char 00340 005C 0C0A 00341 MOVLW .10 005D 0902 00342 CALL send_char 00343 005E 006B 00344 CLRF char_buf ; Clear character input buffer 00345 Warning[207]: Found label after column 1. (wait_card) 005F 00346 wait_card 005F 0626 00347 IFSET GPIO,card ; Check ^CARD line 0060 0A5F 00348 GOTO wait_card ; if its high then keep waiting 00349 00350 00351 00352 Warning[207]: Found label after column 1. (wt_clk_lo) 0061 00353 wt_clk_lo 0061 0646 00354 IFSET GPIO,clock ; Check ^CLK line 0062 0A61 00355 GOTO wt_clk_lo ; If its high then keep waiting 00356 00357 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 9 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE Warning[207]: Found label after column 1. (chk_data) 0063 00358 chk_data 0063 0666 00359 IFSET GPIO,signal ; Check ^DATA 0064 0A69 00360 GOTO data_0 ; If its high, data bit is 0 00361 Warning[207]: Found label after column 1. (data_1) 0065 00362 data_1 0065 0503 00363 BSF STATUS,C ; Otherwise its low so data bit 00364 00365 0066 0C80 00366 MOVLW 0x80 ; and toggle parity bit in 0067 01AC 00367 XORWF parityLRC ; parityLRC register 00368 0068 0703 00369 BTFSS STATUS,C ; Use that fact that carry is 00370 00371 Warning[207]: Found label after column 1. (data_0) 0069 00372 data_0 0069 0403 00373 BCF STATUS,C ; bit is 0, so clear carry 00374 Warning[207]: Found label after column 1. (store_bit) 006A 00375 store_bit 006A 032B 00376 RRF char_buf ; shift data bit in carry flag 00377 006B 0603 00378 IFC ; So, check the carry flag 006C 0A7C 00379 GOTO got_char 00380 006D 060A 00381 IFSET flag,found_start; Has the start code been seen? 006E 0A79 00382 GOTO wt_clk_hi ; Yes, so wait for ^CLK to go 00383 00384 00385 Error[113] : Symbol not previously defined (B11111000) 006F 0C00 00386 MOVLW B11111000 ; The start code is five bits 00387 0070 016B 00388 ANDWF char_buf ; bits in the buffer (which are 00389 Error[113] : Symbol not previously defined (start_code) 0071 0C00 00390 MOVLW start_code ; and compare start_code 0072 018B 00391 XORWF char_buf,W ; to the buffer 00392 0073 0743 00393 IFNZ ; Is it the start code? 0074 0A79 00394 GOTO wt_clk_hi ; No, so wait for ^CLK to go high 00395 0075 050A 00396 BSF flag,found_start; Yes, so set a flag 00397 00398 Warning[207]: Found label after column 1. (next_char) 0076 00399 next_char 0076 04EC 00400 BCF parityLRC,MSB ; clear the parity flag, 00401 0077 006B 00402 CLRF char_buf ; clear the input buffer, 00403 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 10 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 0078 058B 00404 BSF char_buf,4 ; and set a sentinel bit 00405 00406 00407 Warning[207]: Found label after column 1. (wt_clk_hi) 0079 00408 wt_clk_hi 0079 0746 00409 IFCLR GPIO,clock ; Check ^CLK line 007A 0A79 00410 GOTO wt_clk_hi ; Keep waiting whilst its low 00411 007B 0A61 00412 GOTO wt_clk_lo ; Then go and wait for it to be 00413 Warning[207]: Found label after column 1. (got_char) 007C 00414 got_char 00415 007C 07EC 00416 IFCLR parityLRC,MSB ; If parity bit is 0 007D 054A 00417 BSF flag,bad_parity ; set the parity error flag 00418 007E 020B 00419 MOVF char_buf,W ; Copy char_buf to W 007F 01AC 00420 XORWF parityLRC ; XOR with the parityLRC register 00421 0080 072A 00422 IFCLR flag,found_end ; yet been seen then this is 0081 0A89 00423 GOTO not_LRC ; not the LRC, so store it 00424 0082 020C 00425 MOVF parityLRC,W ; Otherwise it was the LRC, so Error[113] : Symbol not previously defined (b01111000) 0083 0E00 00426 ANDLW b01111000 ; get the LRC check from the 00427 0084 0643 00428 IFZ ; If it is zero then the LRC was 0085 046A 00429 BCF flag,bad_LRC ; okay so clear the bad_LRC flag 00430 0086 0207 00431 MOVF buf_ptr,W ; Copy the value of buffer pointer 0087 0028 00432 MOVWF num_chr ; to num_chr 00433 0088 0A95 00434 GOTO dump_buffer ; and dump it out 00435 00436 Warning[207]: Found label after column 1. (not_LRC) 0089 00437 not_LRC Error[113] : Symbol not previously defined (end_code) 0089 0C00 00438 MOVLW end_code ; Is this the end sentinel? 008A 018B 00439 XORWF char_buf,W 00440 008B 0643 00441 IFZ ; If so, the next character is 008C 052A 00442 BSF flag,found_end ; the LRC, so set a flag 00443 008D 0643 00444 IFZ 008E 0A76 00445 GOTO next_char ; and dont bother storing it 00446 008F 036B 00447 RLF char_buf ; discard parity by shifting it 00448 0090 0CF0 00449 MOVLW 0xF0 ; mask off the lower nibble 0091 016B 00450 ANDWF char_buf 00451 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 11 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 0092 0918 00452 CALL get_put_char ; and store the character 0093 078A 00453 IFCLR flag,buf_end ; Is the buffer full? 0094 0A76 00454 GOTO next_char ; no, so get the next character 00455 00456 Warning[207]: Found label after column 1. (dump_buffer) 0095 00457 dump_buffer 0095 0067 00458 CLRF buf_ptr ; Load buffer pointer with 0 00459 0096 05AA 00460 BSF flag,read_buf ; Set the flag to read mode 0097 048A 00461 BCF flag,buf_end ; Clear the buf_end flag 00462 Warning[207]: Found label after column 1. (loop_buffer) 0098 00463 loop_buffer 0098 0918 00464 CALL get_put_char ; Get character from buffer 00465 0099 0C30 00466 MOVLW .48 ; convert to ASCII by adding 48 009A 01CB 00467 ADDWF char_buf, W ; and put the result in W 00468 009B 0902 00469 CALL send_char ; and send the character 00470 009C 078A 00471 IFCLR flag,buf_end ; have we emptied the buffer? 009D 0A98 00472 GOTO loop_buffer ; No, so loop around Error[108] : Illegal character (") 009D 0A98 00473 " 00474 Error[113] : Symbol not previously defined (.) 009E 0C00 00475 MOVLW . ; Load ASCII "." into W 00476 009F 064A 00477 IFSET flag,bad_parity ; If parity was ever bad Error[113] : Symbol not previously defined (P) 00A0 0C00 00478 MOVLW P ; load ASCII "P" into W instead 00479 00A1 0902 00480 CALL send_char ; then send the character 00481 Error[113] : Symbol not previously defined (.) 00A2 0C00 00482 MOVLW . ; Load ASCII "." into W again 00483 00A3 066A 00484 IFSET flag,bad_LRC ; If LRC was bad Error[113] : Symbol not previously defined (L) 00A4 0C00 00485 MOVLW L ; load ASCII L into W instead 00486 00A5 0902 00487 CALL send_char ; and send the character 00488 00A6 0C0D 00489 MOVLW .13 ; Send CR LF from serial port 00A7 0902 00490 CALL send_char 00491 00A8 0C0A 00492 MOVLW .10 00A9 0902 00493 CALL send_char 00494 00AA 0A3F 00495 GOTO main_loop ; Back to the beginning and wait 00496 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 12 Card Reader LOC OBJECT CODE LINE SOURCE TEXT VALUE 00497 00498 00499 END MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 13 Card Reader SYMBOL TABLE LABEL VALUE C 00000000 DC 00000001 FSR 00000004 GP0 00000000 GP1 00000001 GP2 00000002 GP3 00000003 GP4 00000004 GP5 00000005 GPIO 00000006 GPWUF 00000007 IFC SKPNC IFCLR BTFSS IFNC SKPC IFNZ SKPZ IFSET BTFSC IFZ SKPNZ INDF 00000000 LSB 00000000 MSB 00000007 OSCCAL 00000005 PA0 00000005 PD 00000003 Pc 00000002 RP0 00000005 SKPCLR BTFSC SKPSET BTFSS STATUS 00000003 TMR0 00000001 TO 00000004 Z 00000002 __12C509 00000001 bad_LRC 00000003 bad_parity 00000002 bit_delay 0000000F bit_loop 00000006 buf_end 00000004 buf_ptr 00000007 buf_sz 00000028 card 00000001 char_buf 0000000B chk_data 00000063 clock 00000002 clrloop 00000039 count 00000009 data_0 00000069 data_1 00000065 delay_loop 00000014 dump_buffer 00000095 flag 0000000A found_end 00000001 found_start 00000000 get_char 00000026 MPASM 03.70 Released TK2.ASM 5-16-2004 3:28:02 PAGE 14 Card Reader SYMBOL TABLE LABEL VALUE get_put_char 00000018 get_put_done 0000002C got_char 0000007C hi_mem 00000033 invert_tx 00000000 lo_mem 00000010 loop_buffer 00000098 main_loop 0000003F next_char 00000076 not_LRC 00000089 num_chr 00000008 parityLRC 0000000C put_char 00000020 read_buf 00000005 send_char 00000002 ser_out 00000000 signal 00000003 start 00000031 store_bit 0000006A temp 0000000D wait_card 0000005F wt_clk_hi 00000079 wt_clk_lo 00000061 MEMORY USAGE MAP ('X' = Used, '-' = Unused) 0000 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX 0040 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX 0080 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXX----- ---------------- All other memory blocks unused. Program Memory Words Used: 171 Program Memory Words Free: 853 Errors : 21 Warnings : 65 reported, 0 suppressed Messages : 0 reported, 14 suppressed |
|
|
|
|
|
|
(permalink) |
|
Most of the errors look to be in your formatting of your source file, simply read what they say!.
'Found label after column 1' is pretty obvious, labels should be in the first column (left hand side). Again 'Found directive in column 1. (TITLE)' is obvious as well, directives shouldn't be in the first column. |
|
|
|
|
|
|
(permalink) |
|
Maybe you forgot to include the file "PIC12C509.INC".
Insert the ff. code after the line "LIST P=12C509" Code:
LIST P=12C509
include "PIC12C509.INC"
P.S. Make use of the "Code" button when inserting program source code in your posting. You may also attach the listing.
__________________
"Having to do with Motion Control" |
|
|
|
|