Autor Tema: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}  (Leído 33882 veces)

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

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
Buenas! Por alli se comentaba la iniciativa de la gente de ponerse con hitech, y dado que yo tambien me he mudado de ccs, pues abro este post para que vayamos construyendo poco a poco el castillo.

- Aunque mplab es un IDE muy completo, os recomendaria (desde mi punto de vista claro) el hi-tide a aquellos que no se puedan emancipar facilmente del ccs (a mi el mplab me vuelve loco). Trae simulador y todo ya asique no problemmo... aunque no lo he probado.

-De donde conseguirlo? Pues nada, os bajais la licencia de estudiante o lo que sea. No creo que este foro sea el adecuado para promulgar descargas ilegales asi que, que cada cual haga lo que mejor le parezca.

-Una vez instalado Picc y Hi-Tide (primero el compi y luego el hi-tide si los instalamos por separado), ya podemos empezar a salsear. La carpeta "samples" trae un monton de ejemplos para ir cogiendo el truco.  Eso, en la carpeta del compilador osea  x:\archivos de programa\hitech software\picc-18\samples\ (yo uso picc18).

Convendria tambien que consiguierais el manual de referencia para buscar un poco. Bueno, yo tampoco he empezado a salsear demasiado pero cuando empiece a hacer ejemplos y asi, ya ire poniendo. La verdad este compilador me da bastante buena pinta. Ya se que mi post no ha aportado demasiado (jejej) pero bueno, que sirva de inauguracion al menos  :mrgreen:

Venga a programar, vengaaaaa

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #1 en: 12 de Abril de 2007, 09:41:48 »
 :-/ :-/ Aca estoy para iniciar con esto.  8)  Te acompaño para apoyarte en lo que pueda y me diras que hay que hacer.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #2 en: 12 de Abril de 2007, 12:01:04 »
Te apoyo con este post manex, dejame buscar unos ejemplitos que he estado haciendo y los cuelgo por aquí para ir dandole palo  :D

la migración que hablas es de los que vienen del CCS, ¿cierto?

si es así entonces la principal dificultad a vencer, es conocer el estandar ANSI C ya que el CCS se deslinda un poco de éste.

se puede empezar con un ejemplo super básico como encender un led, como se programa la word configuration y como se declara la frecuencia del cristal. esto sería parte del conocimiento de sus directivas necesarias para escribir un código.

dame un chance y lo subo.  :)

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

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #3 en: 12 de Abril de 2007, 12:10:30 »
eso eso eso....  :P

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #4 en: 12 de Abril de 2007, 19:50:19 »
Bueno, yo por mi parte, os dejo el manual del compi picc18 en pdf. Si el documento es considerado de uso res3rvad0 (osea, poco conveniente para los intereses de supervivencia del foro), carta blanca para que el debido mod borre sin mas aviso ni dilacion este post. Ahi queda eso.

Volviendo al tema, el manual es muy completo, y explica bastante bien las cosillas del ansiC, sintaxis, datos, etc etc... El 60% del doc es inutil pues habla que si del linker,del ensamblador, etc etc (digo inutil pero en terminos de que no sirve para aprender picc... los mas pros sabreis como usar esas funcionalidades).

Me estoy sintiendo bastante comodo por estos lares, demasiado comodo jej

http://www.megaupload.com/?d=BYEOSEWR

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #5 en: 12 de Abril de 2007, 19:53:00 »
amigo no se puede descargar... :? me dice que no esta disponible para descargarlo. Puedes intentar en http://rapidshare.com/

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #6 en: 13 de Abril de 2007, 05:58:59 »
Acabo de probar y me va perfectamente.

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #7 en: 13 de Abril de 2007, 10:43:55 »
manex_1987, Hoy si me permite descargar, pero cuando va por la mitad me dice que el servidor reinicio la comunicacion.  :?

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #8 en: 13 de Abril de 2007, 13:02:48 »
bueno ahí monto el primer ejemplillo para empezar a curiosear jeje

- se trata de "togglear" el pin RB0 del 16F877. frecuencia del cristal = 4Mhz
y retardo de 1 ms entre cambio

Código: C
  1. #include        <pic.h>
  2.  
  3. #define XTAL_FREQ       4MHZ  
  4. #include        "delay.c"  // necesario para llamar a DelayMs
  5.  
  6. __CONFIG(0x3F71);
  7.  
  8. void main(){
  9. TRISB=0x0; // PORTB <- salida
  10.  
  11.         while(1){   // bucle eterno
  12.                 PORTB=0x1;   // RB0 <- 1
  13.                 DelayMs(1);   // retardo 1 mS
  14.                 PORTB=0x0; // RB0 <- 0
  15.                 DelayMs(1);
  16.         }
  17. }


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

Desconectado metalm

  • PIC10
  • *
  • Mensajes: 39
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #9 en: 17 de Abril de 2007, 16:46:01 »
Hola como estan, yo siempre use HT pic para pic16 y IAR para pic18 hasta que empece a usar CCS... luego de que tuve un par de problemas con la funcion de interrupcion y el puerto serie, migré directamente a HTpic 18 ya que me parece un compilador serio y en cual poder confiar...

Lo que me atrajo principalmente del CCS es la posibilidad de utilizar el PRINTF para comunicarse con el puerto serie, el manejo automatico de una pata para "enable" (RS485) y el uso de printf para llamar funciones de 8 bits, como por ejemplo una funcion que escribe un caracter en el LCD (llamada _escribir en mi programa) la cual me permitia escribir "printf(_escribir, "mensaje")" y simplificaba mucho las cosas.

Otras cosas que me interesaron y hasta me parecian indispensables, son las funciones de delay integradas, las operaciones con BITS (bit test, bit set, etc) y las rutinas para RS232 por software.

Despues del problema que tuve decidi desligarme de tantas cosas buenas y empezar a trabajar en serio jaja
Lo que no me gusta del HT pic es que no tiene todas esas funciones que ayudan al programador  :( :( pero buen... si les sirve de algo les dejo los strings que uso para acceder a la configuracion del micro, igual que como se hacia con el preprocessor "FUSES":

#include <pic18.h>

// CONFIGURATION BITS:
__CONFIG(1, HSPLL & FCMDIS & IESODIS);
__CONFIG(2, PWRTEN & BORDIS & WDTPS128 & WDTDIS);
__CONFIG(3, MCLRDIS & PBANDIS & LPT1DIS);
__CONFIG(4, STVRDIS & DEBUGDIS & LVPDIS & XINSTDIS);
__CONFIG(5, CPALL);
__CONFIG(7, TRPALL);


La funcion de __CONFIG (con doble guion bajo al principio) permite acceder a los registros de configuracion (1, 2, etc)
Las opciones dentro de cada registro se pueden encadenar con AND (como se ve en el ejemplo) y para saber cuales son estas opciones, simplemente hay que fijarse abajo de todo en el archivo de INCLUDE de cada micro (en este caso, pic18f4620.h)

El header file que debe ser incluido si o si para acceder a esta funcion es "pic18.h"

Bueno, es mi primer mensaje, espero que les sirva y espero me puedan dar una mano tambien que se me esta poniendo complicado el laburo!!!

saludos,
Diego.
« Última modificación: 19 de Abril de 2007, 20:47:07 por metalm »

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #10 en: 18 de Abril de 2007, 17:16:25 »
Hola metalm y bienvenido al foro. muy agradecido por tu aporte

recien empiezo a usar el hitech y viendo el include al pic18.h, supongo que el compilador selecciona el micro que yo quiero mirandolo en el IDE MPlab (el que se escogió) , porque no se de donde podrá saber cual de todos es.


te podremos ayudar en cualquier duda que tengas siempre que el tiempo y los conocimientos nos lo permita.  :)
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado omix

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 244
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #11 en: 19 de Abril de 2007, 14:57:55 »
Hola metalm y bienvenido al foro. muy agradecido por tu aporte

recien empiezo a usar el hitech y viendo el include al pic18.h, supongo que el compilador selecciona el micro que yo quiero mirandolo en el IDE MPlab (el que se escogió) , porque no se de donde podrá saber cual de todos es.


te podremos ayudar en cualquier duda que tengas siempre que el tiempo y los conocimientos nos lo permita.  :)
Hola, si tienes el compilador integrado en el mplab, si que puede que ocurra eso que dices (lo desconozco pues yo compilo en linea de comandos mediante un fichero .bat), pero en todo caso la opcion para especificar el micro es con el nombre del micro, por ejemplo PICC18.exe -18F8720 para el caso de versiones del compilador 8.xx o PICC18.exe --CHIP=18F8720 para el caso de versiones del compilador 9.5x o superiores.

Un saludo.


Desconectado metalm

  • PIC10
  • *
  • Mensajes: 39
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #12 en: 19 de Abril de 2007, 22:19:38 »
Hola denuevo!

Estoy haciendo un programa que tiene que mostrar una pantalla de leds, y como utiliza tonos de gris, el micro lo tengo que aprovechar al maximo.

Probé compilar el programa con el HT-PIC refrescando los leds al maximo (al tiempo de instruccion, en 40 mhz) y se llegaba a notar el parpadeo. El tiempo que tardaba en completar el ciclo de PWM (por software) era como de 24 ms y para que se vea bien deben ser alrededor de 15 ms por ciclo.

Ya estaba intentando en meterme en el assembler, pero como no se (y para probar a ver que pasaba), decidí trasladar el programa al CCS (yo utilizo la version PCWH 3.222) y noté un resultado infinitamente mejor en la cantidad de instrucciones del assembler y en la velocidad!! este nuevo programa tardaba 5 ms en completar el ciclo, y el mismo programa lo hizo en 100 instrucciones de assembler, cuando el de HT lo generaba en 250....

La duda es, será que como yo utilizo este compilador mediante el IDE del MPLAB no tengo habilitada la optimización al máximo? Porque con el HT-pic que usaba para mid-range (pic 12, pic16) yo podía setear la optimización al máximo ya que este tenía una interfaz gráfica al menos...

Cuando lo tenga disponible posteo este programa si es de su interes.

gracias por todo!
Diego.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #13 en: 20 de Abril de 2007, 11:24:34 »
si he visto la opción de optimización del hitech en MPlab, y creo haber visto 2 tipos: una era la tipica optimización y la otra se refería a la forma de mostrar el código en asm (dejame revisar).

pero en este caso ya debería estar al máximo por defecto, no puede ser que genere tanto código. esa parte no la he detallado.

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

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
Re: Introduccion-Migracion a HITECH-PICC {Ejemplos,comentarios,preguntas...}
« Respuesta #14 en: 21 de Abril de 2007, 07:16:20 »
Una pregunta:

Para enviar cositas en printf al rs232, es verdad que hay que definir las funciones "getch" y "putch"? Esque lo he visto en algun lugar pero prefiero que la experiencia lo corrobore. Aparte de que hay que configurar el puerto serie y todo eso jejeje.

Sabeis, propongo que hagamos entre todos una libreria de funciones basicas para el PICC18. Entre DEFINEs (definir macros, por ejemplo para inicializar el puerto serie, el I2C, etcetera) y funciones y subrutinas (getch,putch,i2c,memorias...) podriamos hacer un gran "funciones.C" para que no tengamos que envidiar nada al CCS. Porque es que la verdad, el PICC18 trae muchisimos includes que parecen bastante inutiles.

A fin de cuentas, propongo sintetizar lo util de todos esos includes, y añadirles nuestras propias funciones. eeproms,lcds,lcds graficos, lo que se nos ocurra. Mejor para todos asi.

un saludo!


 

anything