asembler build problem

Rasprava o PIC mikrokontrolerima, PIC projekti i drugo vezano za PIC-eve...

Moderators: pedja089, stojke369, [eDo], trax

Post Reply
golub
Pocetnik na forumu
Pocetnik na forumu
Posts: 29
Joined: 16-11-2014, 11:58

asembler build problem

Post by golub »

pozdrav, imam led matrix 8x16 i program napisan u asembleru. Sve to skinuto sa sajta:
http://www.manelsoft.com/projects/pic16 ... splay.aspx i do sada sam se sa tim uspesno igrao promenim tekst recimo na srecna nova godina i tako slicno. E sad ove gofine sam resio da docrtam smajli ispred teksta i naravno napisao ga kao 3C 42 A9 85 85 A9 42 3C ali kad u mplabu odem na quickbuild iybaci gresku RUN.ASM 129 : Symbol not previously defined (A9h). Na interenetu sam nalazio da verzija mplaba moze da pravio problem pa sam i to menjao.
Prilazem asm kod pa ako neko ima volje da pogleda

Unapred hvala
Attachments
1.rar
kod u asembleru
(1.48 KiB) Downloaded 354 times
Dzenny_assembly
Napredujem
Napredujem
Posts: 118
Joined: 11-09-2014, 04:03

Re: asembler build problem

Post by Dzenny_assembly »

Ako ti može prevesti kod koji je autor pisao a nakon nekih promijena koje izvršiš ne može, onda
si negdje pogriješio tj imaš sintaksnu grešku. Grešku tipa "Symbol not previously defined" izbaca samo iz jednog razloga jer ti ime nekog bita, registra, podprograma ili rutine nije predhodno definisano.
Sutra u toku dana ču probati prevesti kod na svom računaru pa ti javljam...
Dzenny_assembly
Napredujem
Napredujem
Posts: 118
Joined: 11-09-2014, 04:03

Re: asembler build problem

Post by Dzenny_assembly »

Preveo sam program. Greška je što se za ispis brojeva mogu koristiti samo brojevi ali ne i slova.
Medžutim Hexadecimalni brojevi koriste i slova koja neče izazvati grešku ako je broj prije njih. Kod
tebe je bila greška jer si na dva mijesta unio slovo prije broja. Problem je što prevodioc čim "vidi" slovo
prije broja ustanovi da se radi o nekoj rutini ili podprogramu a s obzirom da nije našao ništa pod tim
imenom izbaca grešku.

Hexadecimalne brojeve ispisuj na sljedeči nači H'A9'
Decimalne na ovaj .169
Binarne na ovaj B'10101001'

Evo ti ispravljeni kod koji je u mene preveden...

Code: Select all

PROCESSOR	PIC16F84A
INCLUDE		<P16F84A.INC>
RADIX		HEX
CBLOCK	20h
;*******************************
; 16 LED Charactor Moving Design
;Using Pic16F84A
;Shifting Led's using two CD4017 
;Written By 4S5 AS
;2008-03-19
;http://www.manelsoft.com/projects/pic16f84a_matrix_led_display.aspx
;*******************************

;********************  PIC 16F84A RUNNING LED DESIGN    *************************


DEL
C0
C1
C2
C3
C4
C5
C6
C7
C8
C9
C10
C11
C12
C13
C14
C15
C16
C17
C18
C19
DEL1
TEMP 
TIME
ENDC

#DEFINE CLK1		PORTA,2; Connect  Clock pin of First CD4017 
#DEFINE CLK2		PORTA,1; Connect  Clock pin of Second CD4017 
#DEFINE CLR		PORTA,0; Connect  Reset pin of First and Second CD4017 

ORG	0000h
BCF	STATUS,RP0
GOTO	MAIN

RESET	BSF	CLR
	GOTO 	$+.1
	BCF	 CLR
	RETURN

DELAY	MOVWF 	PORTB
	BCF	CLK1
	DECFSZ	DEL,1
	GOTO	$-.1
	CLRF 	PORTB
	BSF	CLK1	
	RETURN

DELAY2	MOVWF 	PORTB
	BCF	CLK2	
	DECFSZ	DEL,1
	GOTO	$-.1
	CLRF 	PORTB
	BSF	CLK2
	RETURN

;********   FIRST  DISPLAY UNIT **************
SHOW		CALL 	RESET
		BSF CLK1
		MOVF	C0,0
		CALL DELAY
		MOVF	C1,0
		CALL DELAY
		MOVF	C2,0
		CALL DELAY
		MOVF	C3,0
		CALL DELAY
		MOVF	C4,0
		CALL DELAY
		MOVF	C5,0
		CALL DELAY
		MOVF	C6,0
		CALL DELAY
		MOVF	C7,0
		CALL DELAY
		MOVF	C8,0
		CALL DELAY
		MOVF	C9,0
		CALL	RESET
		
		
;********   SECOND  DISPLAY UNIT**************

		BSF CLK2
		MOVF	C10,0
		CALL DELAY2
		MOVF	C11,0
		CALL DELAY2
		MOVF	C12,0
		CALL DELAY2
		MOVF	C13,0
		CALL DELAY2
		MOVF	C14,0
		CALL DELAY2
		MOVF	C15,0
		CALL DELAY2
		MOVF	C16,0
		CALL        DELAY2
		MOVF	C17,0
		CALL DELAY2
		MOVF	C18,0
		CALL DELAY2
		CALL	RESET
		CLRF PORTB
		RETURN

;********************  PIC 16F84A RUNNING LED DESIGN    *************************

TABLE  ADDWF 	PCL,1         ;Add W to Program Counter
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED	
             RETLW 3Ch    ;smajli
             RETLW 42h
             RETLW H'A9'
             RETLW 85h
             RETLW 85h
	         RETLW H'A9'  
	         RETLW 42h
             RETLW 3Ch
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 3Eh ; S
             RETLW 41h
             RETLW 41h
             RETLW 41h
	         RETLW 22h
	RETLW 00h  ;  BLANK  LED		
    RETLW 00h  ;  BLANK  LED
             RETLW 3Fh ; R
             RETLW 48h
	         RETLW 48h
	         RETLW 48h
             RETLW 30h 
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 3Eh ; E
             RETLW 49h
	         RETLW 49h
	         RETLW 49h 
             RETLW 41h  
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 20h ; ć
             RETLW 6Fh
	         RETLW 28h  
	         RETLW 28h 
             RETLW 08h
             RETLW 07h
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 7Fh ; N
	         RETLW 08h  
	         RETLW 08h 	
             RETLW 08h 
             RETLW 7Fh
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 3Fh ; A
             RETLW 48h  
	         RETLW 48h
	         RETLW 48h 	
             RETLW 3Fh 
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 7Fh ; N
	         RETLW 08h  
	         RETLW 08h 	
             RETLW 08h 
             RETLW 7Fh
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 3Eh ;O
             RETLW 41h	
	         RETLW 41h
	         RETLW 41h
             RETLW 3Eh
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 3Eh ; V
             RETLW 49h
	         RETLW 49h 
	         RETLW 49h
             RETLW 3Eh
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 3Fh ;A
             RETLW 48h
	         RETLW 48h 
	         RETLW 48h
	         RETLW 3Fh
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 21h ;2
             RETLW 43h
	         RETLW 45h 
	         RETLW 49h	           
             RETLW 31h
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED
             RETLW 3Eh    ;0
             RETLW 41h
             RETLW 41h
             RETLW 41h
             RETLW 3Eh
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED	
             RETLW 08h    ;1
             RETLW 10h
             RETLW 21h
             RETLW 7Fh
             RETLW 01h
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED
	         RETLW 36h    ;6 
             RETLW 49h    
             RETLW 49h
             RETLW 49h
             RETLW 26h
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED
             RETLW 08h    ;-
             RETLW 08h
             RETLW 08h
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
	         RETLW 60h  ;T
	         RETLW 41h  
             RETLW 7Fh   
             RETLW 41h
             RETLW 60h
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
	         RETLW 3Fh  ;A
	         RETLW 48h
	         RETLW 48h
             RETLW 48h 
             RETLW 3Fh
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
	         RETLW 3Fh  ; G
	         RETLW 40h
             RETLW 40h    
             RETLW 40h
             RETLW 40h
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
	         RETLW 3Eh  ; O
	         RETLW 41h
             RETLW 41h  
             RETLW 41h
             RETLW 3Eh
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
	         RETLW 01h  ; D
	         RETLW 3Fh
             RETLW 41h
	         RETLW 41h
	         RETLW 41h
             RETLW 3Fh  
             RETLW 01h
    RETLW 00h  ;  BLANK  LED
    RETLW 00h  ;  BLANK  LED
             RETLW 01h  ;.
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED  
             RETLW 3Ch    ;smajli
             RETLW 42h
             RETLW 9Ah
             RETLW 85h
             RETLW 85h
	         RETLW 9Ah  
	         RETLW 42h
             RETLW 3Ch
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED
	RETLW 00h  ;  BLANK  LED
             RETLW 0FFh
             RETURN

;****************************************************

MOVE		MOVF	C1,0
		MOVWF	C19
		MOVF	C2,0
		MOVWF	C1
		MOVF	C3,0
		MOVWF	C2
		MOVF	C4,0
		MOVWF	C3
		MOVF	C5,0
		MOVWF	C4
		MOVF	C6,0
		MOVWF	C5
		MOVF	C7,0
		MOVWF	C6
		MOVF	C8,0
		MOVWF	C7
		MOVF	C9,0
		MOVWF	C8
		MOVF	C10,0
		MOVWF	C9
		MOVF	C11,0
		MOVWF	C10
		MOVF	C12,0
		MOVWF	C11
		MOVF	C13,0
		MOVWF	C12
		MOVF	C14,0
		MOVWF	C13
		MOVF	C15,0
		MOVWF	C14
		MOVF	C16,0
		MOVWF	C15
		MOVF	C17,0
		MOVWF	C16
		MOVF	C18,0
		MOVWF	C17
		MOVF	C19,0
		MOVWF	C18
		RETURN



REGISTER	MOVLW	0CH
	MOVWF	FSR
	CLRF	 INDF
	INCF	FSR,1
	MOVF	FSR,0
	BCF 	STATUS,Z
	XORLW	50H
	BTFSS  STATUS,Z
	GOTO	$-.6
	RETURN


MAIN	BSF	STATUS,RP0;B1
	CLRF	TRISB
	CLRF	TRISA
	BCF	STATUS,RP0
	CALL	REGISTER
RUN  	CALL MOVE
	INCF	TEMP,1
	MOVF	TEMP,0
	CALL TABLE 
	MOVWF	C10
	XORLW	0FFH
	BTFSC	 STATUS,Z
	GOTO	REGISTER
	MOVLW  .10
                            MOVWF	DEL1
	CALL 	SHOW
	DECFSZ	DEL1,1
	GOTO	$-.2
	GOTO RUN

DATA	3FF1H
GOTO	MAIN

END



golub
Pocetnik na forumu
Pocetnik na forumu
Posts: 29
Joined: 16-11-2014, 11:58

Re: asembler build problem

Post by golub »

To je to, hvala puno na utrosenom vremenu
:D
Dzenny_assembly
Napredujem
Napredujem
Posts: 118
Joined: 11-09-2014, 04:03

Re: asembler build problem

Post by Dzenny_assembly »

Pozz
Post Reply