Autor Tema: Novato con problema de programación  (Leído 2401 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado FRAN2023

  • PIC10
  • *
  • Mensajes: 11
Novato con problema de programación
« en: 15 de Mayo de 2007, 06:59:54 »
Hola!

Soy un estudiante español de ingeniería electrónica y he comenzado un proyecto en el que usaré un PIC. La programación será en ensamblador y tengo el MPAB IDE 7.41. El problema es que cuando escribo cualquier programa me da un error en la linea que hay debajo de la instrucción END (y no hay nada escrito), y en el resto de las lineas me sale un warning. El error me sale incluso en programas copiados de libros que sé con seguridad que están bien.

Si alguien tiene alguna solución o puede ayudarme se lo agradeceria mucho.

Gracias y un saludo!!

Desconectado el_legal

  • PIC12
  • **
  • Mensajes: 65
    • LINAP SRL
Re: Novato con problema de programación
« Respuesta #1 en: 15 de Mayo de 2007, 07:33:28 »
Hola: fijate que el nombre de tu programa, más la ruta de acceso no sean tan larga. A mi una vez me pasaba algo asi, y para solucionarlo tube que copiar el programa en el escritorio de la pc.

espero que sea es inconbeniente. asi lo puedes solucianar.
Un saludo.
Luciano.
"Si alguno quiere ser el primero, que se haga el último de todos y el servidor de todos."
 Mc 9.35

Desconectado FRAN2023

  • PIC10
  • *
  • Mensajes: 11
Re: Novato con problema de programación
« Respuesta #2 en: 15 de Mayo de 2007, 11:52:16 »
Gracias pero me sigue saliendo error y no se como evitarlo.

Es el error[173] y en el resto de las lineas tienen el warning[207], seguiré intentando encontrar solución.

Desconectado sander

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 624
Re: Novato con problema de programación
« Respuesta #3 en: 15 de Mayo de 2007, 13:25:47 »
FRAN2023 el error 173 te dice que la longitud del path y el nombre del archivo .asm exceden los 62 caracteres, esta una limitacion del mpasm , por lo que debes reducir el tamaño de tu archivo

saludos
La electrónica es el arte de manipular señales eléctricas que transportan información
Jan Davidse

Visita mi blog
Visita mi canal de youtube

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Novato con problema de programación
« Respuesta #4 en: 15 de Mayo de 2007, 13:39:38 »
FRAN2023 el error 173 te dice que la longitud del path y el nombre del archivo .asm exceden los 62 caracteres, esta una limitacion del mpasm , por lo que debes reducir el tamaño de tu archivo

saludos

Debes reducir el tamaño de la RUTA a tu archivo(ej. mové tu archivo "ProgramaReloj.asm" desde "C:\Mis Proyectos Personales\Electronica IV\Reloj\Programa\asm\Temporal\"  a  "C:\ProgramaReloj\")

Con respecto a la advertencia 207, significa:

207 Found label after column 1.
A label was found after column one, which is often due to a misspelled opcode.

Pegá el código para que podamos ver mejor cómo asesorarte.

Saludos.
« Última modificación: 15 de Mayo de 2007, 13:43:01 por BrunoF »
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado MGLSOFT

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: Novato con problema de programación
« Respuesta #5 en: 15 de Mayo de 2007, 14:45:11 »
Eso o hacer carpetas en el raiz de la carpeta donde esta el MPlab... :mrgreen: :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado FRAN2023

  • PIC10
  • *
  • Mensajes: 11
Re: Novato con problema de programación
« Respuesta #6 en: 15 de Mayo de 2007, 19:34:58 »
Gracias, el error 173 ya lo he solucionado, teniais razón. He cambiado la carpeta donde lo guardaba y problema resuelto. Lo que no entiendo es porque me sale el warning 207 en todas las lineas.
Es un ejemplo muy simpe, pero me pasa con todos los programas. El programa es un contador:
                
                                w                   EQU      0
      f      EQU      1
   
;***************Igualdades de la UCP y del Mapa de memoria************

      PORTA   EQU      05h
      PORTB   EQU      06h
      TRISA   EQU      85h
      TRISB   EQU      86h   
      STATUS   EQU      03h
      RP0      EQU      05h
   
;**************Sección de Código reset****************************

            ORG      00h
            GOTO                   Inicializa
         
            ORG      05h
         
;**************Sección Inicializa*********************************   

                     Inicializa                   BSF      STATUS,RP0
            CLRF                   TRISB   
            BCF      STATUS,RP0
            CLRF                   PORTB
            
;**************Sección Bucle*****************************************
                     
                     Bucle      INCF   PORTB,f
            GOTO   Bucle
            END

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Novato con problema de programación
« Respuesta #7 en: 15 de Mayo de 2007, 22:32:18 »
Hay algo que se llama tabulación. Recuerdo que muchos lenguajes eran sumamente estrictos con respecto a esto(como el queridísimo Cobol).

Tiene que ver con los espacios(ya sean tabulaciones o simplemente espacios) que pongas delante de cada línea.
Por ejemplo:

ORG EQU 0x05

debe ir con un <TAB> delante: es decir:
     ORG EQU 0x05

Las instrucciones tambien:

     INCF PORTA,F
     MOVF PORTB,W


Pero no así, por ejemplo, las etiquetas(labels)

INICIO
        MOVLW  0x05
        ....
LOOP
        GOTO    $

En ese caso, INICIO y LOOP son etiquetas y no llevan tabulación por delante. Esto permite al MPASM diferenciar entre qué significado puede tener cada cosa que escribas.

En tu programa, la siguiente puede ser una TABULACION correcta.

  • Es una MUY buena costumbre usar la tecla <TAB> para crear las "columnas" y no la <barra espaciadora> ya que dificulta la alineación y posterior modificación.


Código: ASM
  1. w               EQU     0
  2. f               EQU     1
  3. ;***************Igualdades de la UCP y del Mapa de memoria************
  4.  
  5. PORTA           EQU     05h
  6. PORTB           EQU     06h
  7. TRISA           EQU     85h
  8. TRISB           EQU     86h  
  9. STATUS          EQU     03h
  10. RP0             EQU     05h
  11.    
  12. ;**************Sección de Código reset****************************
  13.  
  14.                 ORG     00h
  15.                 GOTO    Inicializa
  16.          
  17.                 ORG     05h
  18.          
  19. ;**************Sección Inicializa*********************************  
  20.  
  21. Inicializa      BSF     STATUS,RP0
  22.                 CLRF    TRISB  
  23.                 BCF     STATUS,RP0
  24.                 CLRF    PORTB
  25.  
  26. ;**************Sección Bucle*****************************************
  27.                      
  28. Bucle           INCF    PORTB,f
  29.                 GOTO    Bucle
  30.  
  31.                 END

¿Se comprende?

Muchos creen que el mayor desafío es crear código funcional.
Yo creo que aún mayor a ese es, pasado cierto tiempo, poder volver a leer tu programa y lograr comprenderlo sin tener que volver a estudiar minuciosamente todo. Muchas veces hace falta modificar parte de algun programa en el futuro y es una costumbre casi IMPERIOSA respetar ciertas "convenciones" y ser ordenado y detallado a la hora de programar y comentar un algoritmo.

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Novato con problema de programación
« Respuesta #8 en: 16 de Mayo de 2007, 15:12:50 »
yo a las etiquetas del call les pongo dos puntos : y las estiquetas de los goto las dejo así

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado FRAN2023

  • PIC10
  • *
  • Mensajes: 11
Re: Novato con problema de programación
« Respuesta #9 en: 21 de Mayo de 2007, 13:11:07 »
Muchas gracias a todos!! Teniais razón en todo y ya estoy haciendo mis propios programillas poco a poco, sois unos craks!!

El proyecto que tengo que realizar se basa en comunicar un sensor de radiación solar con un programa informático (seguramente en Visual Basic). Si alguien sabe donde puedo encontrar información, algún tutorial o alguna página que me pueda ayudar os lo agredecería.

Saludos!

Desconectado sander

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 624
Re: Novato con problema de programación
« Respuesta #10 en: 21 de Mayo de 2007, 18:33:15 »
Para lo del visual basic podrias dar un vistazo a la seccion de programacion en visual basic del foro

http://www.todopic.com.ar/foros/index.php?board=27.0

saludos
La electrónica es el arte de manipular señales eléctricas que transportan información
Jan Davidse

Visita mi blog
Visita mi canal de youtube


 

anything