Comenzando con SDCC
5 participantes
Página 1 de 1.
Comenzando con SDCC
Hola!
Una de las dos o tres cosas que me obligan a mantener una maquina con Windows es el compilador CCS. Necesito migrar a SDCC para dejar de una vez por todas esa maquina apagada
Como les debe haber pasado a todos, encuentro con que hay muy poca documentacion sobre este compilador, y el PDF "oficial" tampoco es la gran cosa.
Estoy tratando de encontrar la forma de lidiar con la definicion de los "fuses", pero no encuentro nada concreto.
¿Alguien tiene un link que pueda darme alguna pista?
Gracias!
Una de las dos o tres cosas que me obligan a mantener una maquina con Windows es el compilador CCS. Necesito migrar a SDCC para dejar de una vez por todas esa maquina apagada
Como les debe haber pasado a todos, encuentro con que hay muy poca documentacion sobre este compilador, y el PDF "oficial" tampoco es la gran cosa.
Estoy tratando de encontrar la forma de lidiar con la definicion de los "fuses", pero no encuentro nada concreto.
¿Alguien tiene un link que pueda darme alguna pista?
Gracias!
arielpalazzesi- Nuevo Usuario
- Mensajes : 3
Fecha de inscripción : 11/02/2010
Re: Comenzando con SDCC
Hola arielpalazzesi.
En Piklab, en Menú/Herramientas/Generador_de_configuración , te genera automaticamente la linea que debes añadir, solo eliges el modelo de PiC, el compilador y le dás a "copiar al portapapeles" , luego lo pegas en tu programa.
De todas formas un ejemplo:
Otro:
Otro:
Otro para 18F
Saludos.
En Piklab, en Menú/Herramientas/Generador_de_configuración , te genera automaticamente la linea que debes añadir, solo eliges el modelo de PiC, el compilador y le dás a "copiar al portapapeles" , luego lo pegas en tu programa.
De todas formas un ejemplo:
- Código:
#include
/* Setup chip configuration */
typedef unsigned int word;
word at 0x2007 CONFIG = _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_OFF & _ER_OSC_CLKOUT & _MCLRE_ON & _LVP_OFF;
Otro:
- Código:
#include //Adaptar a pic utilizado
//------Bits de configuración: adapte los parámetros a su necesidad-------
//------------------------------------------------------------------------
typedef unsigned int word;
word at 0x2007 CONFIG = _HS_OSC & _WDT_OFF & _PWRTE_ON & _BODEN_OFF & _LVP_OFF & _CPD_OFF & _DEBUG_OFF & _CP_OFF;
Otro:
- Código:
#include
// Configurations
typedef unsigned int config;
config at 0x2007 __CONFIG = _HS_OSC & _PWRTE_ON & _BODEN_OFF & _WDT_OFF & _LVP_OFF;
Otro para 18F
- Código:
#include
// Configurations
code char at __CONFIG1H conf1 = _OSC_HS_PLL_1H & _OSCS_ON_1H; // Select HS PLL OSC
code char at __CONFIG2L conf2 = _PUT_ON_2L;
code char at __CONFIG2H conf3 = _WDT_OFF_2H; // Disable WDT
code char at __CONFIG4L conf4 = _LVP_OFF_4L; // Disable LVP
Saludos.
Última edición por Pikitin el Jue 11 Feb 2010 - 22:04, editado 1 vez
Re: Comenzando con SDCC
Muchas gracias!
Habia visto esa ventaja del PIKLab. Pasa que no lo estoy usando, uso un editor de texto, a lo macho! Ja ja ja ja ja!
Igual, es util para deducir algo.
Otra cosa que me fue de ayuda es mirar los archivos ".h" que instala para cada PIC. Ahi figuran todos los fuses permitidos.
Gracias!
Habia visto esa ventaja del PIKLab. Pasa que no lo estoy usando, uso un editor de texto, a lo macho! Ja ja ja ja ja!
Igual, es util para deducir algo.
Otra cosa que me fue de ayuda es mirar los archivos ".h" que instala para cada PIC. Ahi figuran todos los fuses permitidos.
Gracias!
arielpalazzesi- Nuevo Usuario
- Mensajes : 3
Fecha de inscripción : 11/02/2010
Re: Comenzando con SDCC
Yo estoy en las mismas, sigo con CCS :S.
Solo como comentario, recordar que el CCS de Win puede usarse sin problemas en Linux, si no te llega a funcionar el IDE, puedes hacerlo por línea de comandos.
Solo como comentario, recordar que el CCS de Win puede usarse sin problemas en Linux, si no te llega a funcionar el IDE, puedes hacerlo por línea de comandos.
Re: Comenzando con SDCC
Geo escribió:Yo estoy en las mismas, sigo con CCS :S.
Solo como comentario, recordar que el CCS de Win puede usarse sin problemas en Linux, si no te llega a funcionar el IDE, puedes hacerlo por línea de comandos.
Hola!
A no desanimarse, que de a poco vamos a ir tomandole la mano.
El tema de usar SDCC tambien pasa por el tema legal, no solo por la "incompatibilidad" con Linux.
Puede parecer poco importante, pero para mucha gente no lo es.
arielpalazzesi- Nuevo Usuario
- Mensajes : 3
Fecha de inscripción : 11/02/2010
Re: Comenzando con SDCC
Mi experiencia con SDCC es bastante buena, estoy deacuerdo que no hay mucha informacion en la red, acerca especialmente de ejemplos , Pero existen algunas Como Felixls en su blog que se encuentra algunos proyectos realizados en SDCC o Algunas librerias que estan en este foro,desarrolladas por Geo y otros mas.
Basicamente debes saber lo basico del Mundo C Ansi y ya tienes parte de SDCC el resto es Complementarlo con los conocimientos acerca de los PIC (Como por ejemplo nombres de los registros de cada PIC. estos estan definidos en #include <pic16f84a.h>)
Por Ejemplo aqui hay un contardor de 0 a 9 con display de 7 segmento.
Yo pienso que es una buena opcional este compilador .
atte.
RiSanti
Basicamente debes saber lo basico del Mundo C Ansi y ya tienes parte de SDCC el resto es Complementarlo con los conocimientos acerca de los PIC (Como por ejemplo nombres de los registros de cada PIC. estos estan definidos en #include <pic16f84a.h>)
Por Ejemplo aqui hay un contardor de 0 a 9 con display de 7 segmento.
- Código:
/*************************************************************************** */
/* Contador7seg.c Diciembre 26-12-2008 */
/*---------------------------------------------------------------------------*/
/* Ejemplo Contador de 0 a 9 con Display de 7 Seg */
/*---------------------------------------------------------------------------*/
/* Ricardo Santibañez */
/*---------------------------------------------------------------------------*/
/* Desarrolado con SDCC, LICENCIA GPL ñ */
/*****************************************************************************/
#include <pic16f84a.h>
#include <delay.h>
typedef unsigned int word;
word at 0x2007 CONFIG = _XT_OSC & _WDT_OFF & _PWRTE_OFF & _CP_OFF;
unsigned int display[10] ={0x01,0xcf,0x12,0x06,0x4c,0x24,0x20,0x0f,0x00,0x0c} ;//Definicion de Numeros en Display 7 Seg
char i=0;
// Funcion Principal del Programa, Contador de 0 a 9, segun cambios en RA0
void main()
{
TRISB=0; //Configurar Puerto b como Salidas
TRISA=1; //Configurar Puerta.0 como entrada y el resto salida
while(1)
{
PORTB=display[i];
if (RA0==0)
{
delay_ms(200); // Lamado a Funcion delay_ms includa en libreria delay.h, tiempo aprox 200ms,evitar rebotes
if (RA0==0) //if Ra0 es 0 durante 200ms, significa que fue probocada por un rebote
{
i++; //Incremento valor de contador
if (i==10){ i=0;} // Si valor el igual a 10 reseteo cuenta
while(RA0==0); // Salir solo cuando suelte pulsador en RAO
}
}
}
}
Yo pienso que es una buena opcional este compilador .
atte.
RiSanti
Comenzando con SDCC
Buscando un tutorial para el sdcc encontre tutorial mas ejemplos con el pic16f876a en http://www.iearobotics.com muy bueno para poder empezar con este compilador.
En windows ya habia utilizado para hacer mis pruebas con un bootloader pero no en linux en esta pagina también encontraran como utilizar un bootloader bajo linux.
En windows ya habia utilizado para hacer mis pruebas con un bootloader pero no en linux en esta pagina también encontraran como utilizar un bootloader bajo linux.
edwinlc- Nuevo Usuario
- Mensajes : 1
Fecha de inscripción : 17/12/2009
Temas similares
» SDCC - NF....
» SDCC USB libreria
» Uso de punteros en SDCC
» Equivalencias CCS a SDCC
» SDCC PIC16F84A
» SDCC USB libreria
» Uso de punteros en SDCC
» Equivalencias CCS a SDCC
» SDCC PIC16F84A
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.