Autor Tema: CCS y Hi-Tech C  (Leído 2792 veces)

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

Desconectado raus

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 121
CCS y Hi-Tech C
« en: 04 de Septiembre de 2006, 08:49:26 »
Buenas!!

Me estoy iniciando en la programación en C para los PIC y aun no tengo mucha idea...  :?  Supongo que sera de dominio general, pero ¿Qué diferencia existe entre CCS C y Hi-Tech C?¿Son compatibles? La mayoria de los ejemplos que he visto están escritos con CCs, pero en la página de Microchip, buscando info sobre la comunicación usb de la serie 18F los ejemplos que aparecen están escritos con Hi-Tech C y quisiera saber si son aplicables a CCs o si no tienen nada que ver.

Muchas gracias por vuestra ayuda  :-)
Visita mi blog sobre tecnología y marketing:
http://franciscobenito.es

Desconectado vszener

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2395
Re: CCS y Hi-Tech C
« Respuesta #1 en: 04 de Septiembre de 2006, 09:33:08 »
Un codigo escrito con el compilador Hi-Tech no te servirá si lo compilas con CCS, lo único similar son las sentencias de control y definición de variables, por lo demas nada, lo que puedes es adaptar el codigo para un compilador u otro.


Suerte!!! :wink:
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado Dancrazy

  • PIC16
  • ***
  • Mensajes: 134
Re: CCS y Hi-Tech C
« Respuesta #2 en: 11 de Octubre de 2006, 12:24:10 »
he programado mucho en CCS y nada en hi-tech, pero tengo amigos que lo han hecho en este último compilador

Fijate, un compilador es un programa que ofrece instrucciones de alto nivel, que en realidad son paquetes de secuencias en asembler. cuando compilas, tus instrucciones, predefinidas por el que hizo el compilador se transformas en rutinas de asembler que ejecutan tu programa... por eso un compilador no entiende a otro...

Hi tech, me han dicho, (no me consta) es menos prefabricado, es un poquito mas profundo y por tanto tienes mas control del dispositivo... es como un automovil sincronico (y por tanto es mas complejo de manejar, pero tienes mas control)...

CCS es la facilidad en persona, los comandos lo hacen todo y son sencillos esta todo preprogramado, (aunque tienes la posibilidad de insertar bloques en asembler entre el codigo)  es como un automovil automatico (o hidromatico) donde pasas de Parking a Drive y el resto es acelerar y frenar...
Daniel 
Caracas, Venezuela 

-----------------

Desconectado afp

  • PIC10
  • *
  • Mensajes: 4
Re: CCS y Hi-Tech C
« Respuesta #3 en: 12 de Octubre de 2006, 10:05:56 »
Hola :

Yo no hace mucho que he empezado.Estoy utilizando  el pic 16f877.
Primero empezé en ensamblador y luego en C con el compilador de Hi-Tech. Hasta ahora he usado
hi-tech y por lo que he visto programado en CCS, es más cómodo que el hitech.

En Hi-tech, configuro los registros para activar las interrupciones, igual que en ensamblador. Y no utlizo
tampoco librerias definidas en el compilador , por ejemplo para hacer retardos.Aunque se podrían usar.
Y a la hora de escribir código, me parece que es más similar al de C.
Es cuestión de gustos.... 

Aqui te paso un ejemplillo para Hi-tech.

//
//Programa que realiza una cuenta de 8 bits (0-255) y la muestra por el puerto PORTD.
//Se ha tenido en cuenta una temporizacion entre las cuentas, para que se pueda visualizar.
//
//--------------------------------------Variables y funciones globales-----------------------------------
#include <pic1687x.h>

unsigned char tiempo,cuenta;

//---------------------------------------Funcion principal-----------------------------------------------

void main (void) {

      TRISD=0x00;
      OPTION=0x87;
      INTCON=0xD0;
      TMR0=0x3D;        //   timer0=0x3d=61=50ms   
      PORTD=0x00;
      tiempo=25;
      cuenta=0;

   while(1);      
}//void

//------------------------------------------------------------------------------------------------------

void interrupt temporizar (void) {

   if (T0IF) {
          T0IF=0;
          TMR0=60;
          tiempo--;
                   
            if (tiempo==0) {

               tiempo=15; //multiplico *15 el valor de confi del TMR0
               cuenta++;   
            }

            if (cuenta==256) { //Es el limite de la cuenta.
               cuenta=0;
            }   
           }
   PORTD=cuenta;   
}

Saludos y suerte


 

anything