Autor Tema: Soy nuevo--- Necesito un par de aclaraciones generales ---  (Leído 4109 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Danielo515

  • PIC10
  • *
  • Mensajes: 8
Soy nuevo--- Necesito un par de aclaraciones generales ---
« en: 11 de Febrero de 2009, 14:22:58 »
Ante todo, saludos. Llevo un tiempo en el mundo de la programación y siempre me ha llamado mucho programar para algo que no fuera el PC. Ahora me he decidido a dar el paso a los Pic, y estoy un poco Liado despues de leer mucha información y muy difusa.

Tengo un PIC 16F84A-04, y hasta ahora no he encontrado ningun prorgama de ejemplo para el.

He estado mirando varios lenguajes y compiladores, y he conseguido un compilador de Pic Basic Pro y el Micro Code Studio, pero lo único que he conseguido compilar ha sido para otros pics, si elijo el 15F84A como dispositivo me da bastantes Errores de compilación. Si hago un include 16F84A.inc me da errores de compilación en el include. Este es uno de los principales problemas que tengo pues es este lenguaje el que me gustaría utilizar.

También he probado el compilador de assembler de microchip y bueno, no he sido capaz de compilar ni un proyecto, me da errores de declaración de variables que no entiendo demasiado.

Otra cosa que me trae por el camino de la amargura es el programador. Tengo un programador que no recuerdo muy bien como llego a parar a mis manos hace unos años,  yo no tenía ni puta idea de lo que era hasta que el otro día recordé que lo tenía. Es un T-20. He buscado y he hallado configuraciones para el ICProg, pero no se si serán correctas o no. Este programador también es conocido como TE20 o son dos distintos? Si les sirve de ayuda el mío trae lo que parece una ranura para tarjetas (como de credito).

Y mi último y gran problema son los ejemplos. Cuando encuentro un esquema para un ejemplo, no encuentro su código, cuando encuentro el código viene sin esquema del circuito. Cuando enceuntro un esquema con código no es para mi modelo de chip... etc etc. ¿Saben de algún sito donde pueda encontrar un ejemplo completo para el 16F84A?

Muchas gracias de Antemano a todos.

Desconectado Danielo515

  • PIC10
  • *
  • Mensajes: 8
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #1 en: 11 de Febrero de 2009, 14:42:35 »
BIen, me acabo de enterar que el 16F84A está obsoleto y ha sido sustituido por el 16F628, chip para el cual por cierto, debo decir que sí he conseguido compilar un proyecto y generar un ex con Pic Basic Pro, y he encontrado más ejemplos para el.

Esoy pensando en comprarme este chip pero... ... ... ¿alguien sabe si es programable con el T-20 que he comentado antes? Muchas gracias.

Desconectado pibe

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 635
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #2 en: 11 de Febrero de 2009, 14:50:02 »
15f84? nunca oi hablar de él.

el 16f84 es el caballito de batalla de los pics. Aunque obsoleto hay MILES de programas pululando por la web.
El 16f628 es su hermanito mayor. Tiene oscilador interno, por lo cual no necesitas cristal externo y varias otras mejoras como UART etc etc.
Basic es fácil, yo programo en asembler y me cuesta moverme a otro lenguaje.
EL T20 no sé, yo uso el ICD2 de microchip, pero también me he armado distintos programadores que he visto por la web. El winpic acepta la mayoría de ellos.

Si tienes dudas con asembler no tienes mas que subir el programa y le echo una mirada.
Mi jefe mirando el prototipo que estoy creando: "Y eso va a funcionar?"

Desconectado septiembre_negro

  • PIC18
  • ****
  • Mensajes: 310
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #3 en: 11 de Febrero de 2009, 16:56:01 »
Por lo que comentas estas pasando por lo mismo que todos cuando comenzamos en esto de los pic .
A grandes rasgos puedo comentarte que cualquier programador serial o paralelo soporta los pic de la familia pic 16fxx .
La forma mas fácil de comenzar a programar es en Basic el problema que tu tienes ahora seguramente es un problema de archivos  en que carpeta esta el compilador, en que carpeta esta donde compilas etc .búscale por ahí aunque te recomiendo que te busques algún compilador de Basic que tenga el editor incluido como el protón o el mikrobasic

Desconectado Danielo515

  • PIC10
  • *
  • Mensajes: 8
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #4 en: 11 de Febrero de 2009, 17:27:47 »
MUchas gracias popr la acogida  :-/ siempre que uno ingresa en un nuevo foro tiene la duda de cuan vivo estará. Aunque la verdad es que siempre he tenido suerte y he ido a parar a foros con gente bastante maja.

Por supuesto estoy con muchas ganas de empezar y a veces el ansia me puede, pero es que necesito al menos compilar un programa. El mikrobasic es de pago por lo que veo.

El programa que intento compilar es tan sencillo como
Código: FreeBasic
  1. @ DEVICE PIC16F84,WDT_OFF,PWRT_ON,MCLR_ON,BOD_OFF,CPD_OFF,PROTECT_OFF
  2.  
  3. Define OSC 4
  4.  
  5. loop: High PORTB.0  ' Turn on LED
  6.       Pause 250     ' Delay for .25 seconds
  7.       Low PORTB.0   ' Turn off LED
  8.       Pause 250     ' Delay for .25 seconds
  9.       Goto loop     ' Go back to loop and blink LED forever
  10. End

En cuanto a los errores de compilación, pues son los siguientes

Citar
ERROR: Macro ASM? not found in macro file.
ERROR: Macro ENDASM? not found in macro file.
ERROR: Macro LABEL?L not found in macro file.
ERROR: Macro HIGH?T not found in macro file.
ERROR: Macro PAUSE?C not found in macro file.
ERROR: Macro LOW?T not found in macro file.
ERROR: Macro GOTO?L not found in macro file.
ERROR: Macro END? not found in macro file.

Es bueno saber las mejoras del 16F628. Entonces debo entender que los circuitos ganan en simplicidad. ¿Es mucho más caro? A ver si el próximo día puedo comprarlo.

Lo del programador me preocupa mucho,miraré a ver si el  winpic me da soporte para el. En  caso de que me deba comprar otro programador ¿cual me recomendarias? teniendo en cuenta que voy a tirar en principio por proyectos sencillitos y pics asequibles.

Un saludo y muchas gracias.

Desconectado Danielo515

  • PIC10
  • *
  • Mensajes: 8
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #5 en: 11 de Febrero de 2009, 18:07:41 »
Bueno, he conseguido un código que me compila con microbasic. El problema ahora que tengo es... .... ¡Que no se a que port b se refiere el código! por lo tanto no se a que patilla conectar el led. Aquí el código compilado en microbasic.

Código: [Seleccionar]
program LED_Blinking


    main:
    TRISB = 0                       ' configure pins of portb as output
    PORTB = %11111111              ' turn ON diodes on portb
    delay_ms(1000)                      ' wait for 1 second
    PORTB = %00000000              ' turn OFF diodes on portb
    delay_ms(1000)                      ' wait for 1 second
    goto main                               ' endless loop
   end.
Alguien sabe como funciona el isis del proteus? No he sido capaz de diseñar un circuito...

Muchas gracias.

Desconectado septiembre_negro

  • PIC18
  • ****
  • Mensajes: 310
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #6 en: 11 de Febrero de 2009, 19:11:33 »
Pues mira para comenzar yo te recomiendo cualquier programador paralelo son fáciles de armar y económicos, en este mismo foro hay  un sub foro de programadores.
Ahora con respecto al compilador pues  al menos  los más conocidos y por tanto de los que encuentras mas soporte son de pago ya sea en Basic o en c  pero siempre encontraras una demo de los mismos que para comenzar va bastante bien.
Si decides continuar con el microbasic en el foro tanbien  hay un sub foro dedicado al Basic donde encontraras mucha información y ejemplos ,aunque yo te recomiendo que comiences en proton el mikrobasic es mas parecido en su sintaxis a lo que seria visual Basic por lo tanto si no tienes experiencia en  programación  es mas duro de roer .
Por último tanbien hay un sub foro de simuladores como el isis  :mrgreen:

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #7 en: 12 de Febrero de 2009, 02:11:36 »
Hola Danielo, bienvenido al foro!

Por lo que leo en tu programa, en cualquier pin del puerto b puedes colocar tu led, con su resistencia, ya que el programa envia 8 unos y 8 ceros, es decir a todas las patitas del puerto b...

y para saber cuales son las patitas del puerto, bajate el datasheet de la pagina del fabricante www.microchip.com  :mrgreen:

Suerte!

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado pibe

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 635
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #8 en: 12 de Febrero de 2009, 05:04:10 »
Si vas a programar en basic y necesitas ayuda mejor te pueden ayudar si posteas en los foros de basic :)
Mi jefe mirando el prototipo que estoy creando: "Y eso va a funcionar?"

Desconectado 13pic

  • PIC10
  • *
  • Mensajes: 26
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #9 en: 12 de Febrero de 2009, 06:37:47 »
en primer lugar ola
bueno, el pic 16f84a no a sido substituido (me compre 2 el otro dia)
y recomendarte que si eres nuevo programando pics empieces con c, es mas sencillo y con el programa que uso me ayuda a corregir los errores (luego te digo el nombre) y si quieres te puedo pasar un programa que e hecho con c para encender y apagar un led de ejemplo  :)

Desconectado septiembre_negro

  • PIC18
  • ****
  • Mensajes: 310
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #10 en: 12 de Febrero de 2009, 16:31:38 »
Aquí cabe hacer dos precisiones la primera en f84 efectivamente se sigue vendiendo pero no es la mejor opción ya que es mas caro y tiene menos recursos que el  628 la razón del que el f 84 sea mas utilizado y por ende mas caro es precisamente  que al no contar con   puertos analógicos, uart, i2c, cpi, pmw, usb etc. no te lias tanto en la  configuración del mismo cosa que se agradece cuando recién comienzas
Ahora con respecto al lenguaje de programación depende mucho de la capacidad de cada quien para aprender y de si se tienes conocimientos previos en programación o no pero para comenzar siento que en mejor Basic en c tendrías que liarte con  conceptos como funciones, procedimientos,punteros,anvito de las variables, etc .
Aunque  al final lo mejor es que pruebes varios lenguajes, varios compiladores asta que encuentres el que mejor te acomode esto no tiene desperdicio ya que lo que aprendas en el camino te cera de mucha utilidad. 

Desconectado Danielo515

  • PIC10
  • *
  • Mensajes: 8
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #11 en: 12 de Febrero de 2009, 20:03:06 »
Muchas gracias a todos por sus contestaciones. Efectivamente ya tengo experiencia de programación, sobre todo en videojuegos, me manejo con varios lenguajes mezcla de c y pascal y c/c++. El basic, nunca me gustó muco su sintaxis (la del ordenador), pero en este caso la prefiero al ensamblador.

Hoy me he decidido a  montar mi primer ciruito en pic, y... no ha funcionado, ja ja ja, aunque eso era exactamente lo que me esperaba.  Lo que no se ahora es cual era el problema, si la programación del pic o el propio circuito. Apunto a que un poco las dos cosas ya que en el circuito no he puesto ni los dos condensadores en el cristal (he leido que no hacía falta, y como no lo tengo...) y el reset lo he conectado a los 5v con una resistencia de 10 k y a masa sin nada. A ver si les posteo una foto.

¿Que forma tengo de verificar si el programa se ha grabado en el pic? le he dado a verificar y me dice que se ha copiado bien, y le doy a leer del pic y presuntamente me lee lo que ponía antes de darle a grabar. Estoy usando el ICPROG como ya he dicho. Pero a veces sin tener ningun pic, también me verifica bien, así que me hace sospechar.

Muchas gracias amigos.

Desconectado septiembre_negro

  • PIC18
  • ****
  • Mensajes: 310
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #12 en: 13 de Febrero de 2009, 00:41:31 »
Pues la mejor manera de comprobar que  grabo es que el pic haga lo que se supone debe hacer  :mrgreen: :mrgreen: en el  sof de grabación  es así como se realiza  dandole verificar y que te diga ok
Así mismo lees el pic y en el buffer te debe entregar la misma información que tienes cuando le das a grabar.
Lo que me párese extraño es que te diga que todo esta bien sin pic. Ármate un programador paralelo la verdad que por puerto serie a mi no me dan buena espina
Suerte

Desconectado pibe

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 635
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #13 en: 13 de Febrero de 2009, 05:15:17 »
Cuando un programa no funciona utiliza el truco del almendruco: enciende un led.
Primero apenas acabas de setear los puertos, si enciende sigues bajando el encendido del led en el programa hasta que no encienda.
Mi jefe mirando el prototipo que estoy creando: "Y eso va a funcionar?"

Desconectado Danielo515

  • PIC10
  • *
  • Mensajes: 8
Re: Soy nuevo--- Necesito un par de aclaraciones generales ---
« Respuesta #14 en: 13 de Febrero de 2009, 09:08:23 »
Cuando un programa no funciona utiliza el truco del almendruco: enciende un led.
Primero apenas acabas de setear los puertos, si enciende sigues bajando el encendido del led en el programa hasta que no encienda.

Disculpa, no entendí esto.  Te refieres a un led en el pic o en el programador? El programa de prueba es de encender un led, así que si ni eso funciona, no entiendo que cosa más básica puedo hacer  :P



Lo de verificar, como ya he dicho, siempre me dice que lo verificó bien. Si le doy a leer, en vista de ensamblador (porque ne vista hexadecimal no me aclaro) si que lee lo que se supone que ponía cuando cargué el .hex a grabar, de lo que deduzco que el pic está bien grabado, por lo que no se si a lo mejor el problema es el programa en sí. Lo suyo sería hacer una simulación no? Pero no me aclaro de como hacer funcionar el (proteus es el del las simulaciones? si no es ese nombre, es muy parecido) ¿alguien tiene algún manual de como hacer simulaciones? Navegaré por el foro a ver de todos modos


Y una vez más, muchas gracias a todos.


 

anything