Programar micros en linux

Ir abajo

Programar micros en linux

Mensaje por Lalo el Vie 1 Feb 2013 - 14:01

Buenos días gente del foro, quiero hacer una pregunta... como están programando los microcontroladores en linux..
particularmente uso debian wheezy y el piklab ya no se encuentra en repositorios, traté de instalar el piklab 0.16.2, pero me tiró varios problemas... además me dijeron que había un problema con las librerias de sdcc, puede ser? bueno muchas gracias por su tiempo.
Un saludo

Lalo
Participante
Participante

Mensajes : 12
Fecha de inscripción : 03/03/2009
Edad : 39
Localización : Oberá

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por maigke el Mar 5 Feb 2013 - 5:23

bueno de acuerdo a este comentario (http://ask.debian.net/questions/are-non-free-packages-removed-from-sid-too), el hecho de que SDCC incluyera los non-free, hace que el paquete no sea apto para ser lanzado, de hecho y como comentas aqui (http://pic-linux.forosactivos.net/t417-problema-con-sdcc-y-piklab#2589) sdcc en whezze Wheezy Laughing no incluye los non-free. tal como puedes ver en la salida de mi consola
Código:

root@debian:/usr/share/sdcc/include# ls
asm      ds400      hc08    math.h    sdcc-lib.h  stddef.h  string.h      z180
assert.h  ds80c390.h  iso646.h    mcs51    setjmp.h    stdint.h  time.h
ctype.h  errno.h    limits.h    pic14    stdarg.h    stdio.h  tinibios.h
ds390      float.h    malloc.h    pic16    stdbool.h  stdlib.h  typeof.h
root@debian:/usr/share/sdcc/include# cd pic16/


creo que lo mas adecuado en este caso no es instalar SDCC desde los repositorios, sino que hacer via web en http://sdcc.sourceforge.net/

bueno voy a ver que pasa por este medio y te comunico.


Última edición por maigke el Mar 5 Feb 2013 - 6:31, editado 1 vez (Razón : error de dedos)
avatar
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 40
Localización : Mexico

Volver arriba Ir abajo

Instalación SDCC en debian Wheezy - dirty install

Mensaje por maigke el Mar 5 Feb 2013 - 6:30

Instrucciones para instalar sdcc 3.2 en Wheezy (Importante - Esta instalación la hice en una Vbox)

Descarga sdcc del sitio web
http://sourceforge.net/projects/sdcc/files/latest/download?source=files

descomprime el archivo descargado y veras una nueva carpeta llamada sdcc, la cual contiene la siguiente estructura

sdcc-- (bin INSTALL.txt README.txt share)

la carpeta bin la vas a pegar en /usr/bin y la carpeta share en
/usr/share, para hacer lo indicado, inicia primero como superusuario

ejemplo:
Código:

miguel@debian:~/Descargas/sdcc$ su  (<-aqui se encuentra el descomprimido)
Contraseña:
root@debian:/home/miguel/Descargas/sdcc# ls
bin  INSTALL.txt  README.txt  share
ahora vamos a copiar por partes tal como te comenté arriba
Código:

root@debian:/home/miguel/Descargas/sdcc# cd share/
root@debian:/home/miguel/Descargas/sdcc/share# cp -r * /usr/share/
root@debian:/home/miguel/Descargas/sdcc/share# cd ..
root@debian:/home/miguel/Descargas/sdcc# cd bin/
root@debian:/home/miguel/Descargas/sdcc/bin# cp -r * /usr/bin/
root@debian:/home/miguel/Descargas/sdcc/bin# exit
listo, con esto ya debe quedar instalado sdcc, una cosa mas
antes de hacer esto, primero instale sdcc desde los repos
por las cuestiones de las dependencias, y no lo desinstalé
y pues bien, para probar se ejecuta así primero

Código:

miguel@debian:~/Descargas/sdcc$ sdcc -v
SDCC : mcs51/gbz80/z80/z180/r2k/r3ka/ds390/pic16/pic14/TININative/ds400/hc08/s08 3.2.0 #8008 (Jul  6 2012) (Linux)
y luego copie y pegue el ejemplo que viene aquí
http://pic-linux.forosactivos.net/t5-lcd-44780-4-bits-para-pic16f-driver-y-ejemplo

y para compilarlo se ejecuta en linea de comandos así:
Código:

miguel@debian:~/Descargas/sdcc/bin$ sdcc -mpic14 -p16f877  --use-non-free ej1.c
lcd_sdcc_sgr.h:105: syntax error: token -> 'sublw' ; column 9
esto me daba un error, pero es a causa de la versión del compilador
se arregla colocando dos guiones bajos en la linea 105
del archivo lcd_sdcc_sgr.h
Código:

miguel@debian:~/Descargas/sdcc/bin$ nano lcd_sdcc_sgr.h

Código:

void pausa( unsigned char a )
{    a;                //tiempo = (4a + 1)µs a>=2, para 4MHz
    __asm                // "a" ya está en w,lleva dos guiones
    sublw 1
    bucle:
    addlw 1
    btfss STATUS,0
    goto bucle
    __endasm;
}
salimos de nano con ctrl + x

y ahora tecleamos

Código:

miguel@debian:~/Descargas/sdcc/bin$ sdcc -mpic14 -p16f877  --use-non-free ej1.c
message: using default linker script "/usr/share/gputils/lkr/16f877.lkr"
verificamos y vemos el archivo .hex creado

Código:

miguel@debian:~/Descargas/sdcc/bin$ ls -l
total 8584
-rwxr-xr-x 1 miguel miguel    6531 jul  6  2012 as2gbmap
-rw-r--r-- 1 miguel miguel  21645 feb  5 00:04 ej1.asm
-rw-r--r-- 1 miguel miguel    1463 feb  5 00:00 ej1.c
-rw-r--r-- 1 miguel miguel  13824 feb  5 00:04 ej1.cod
-rw-r--r-- 1 miguel miguel    4544 feb  5 00:04 ej1.hex
-rw-r--r-- 1 miguel miguel  72531 feb  5 00:04 ej1.lst
-rw-r--r-- 1 miguel miguel  17456 feb  5 00:04 ej1.o
-rw-r--r-- 1 miguel miguel    7247 feb  5 00:04 lcd_sdcc_sgr.h
bueno con esto podrás empezar a programar micros pic
en SDCC aunque sea de momento la solución en linea de comandos

saludos cordiales
y seguire viendo como se hace andar el piklab en debian whezze.
avatar
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 40
Localización : Mexico

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por Lalo el Mar 5 Feb 2013 - 21:20

Muchas gracias maigke por tu respuesta, voy a seguir los pasos que me describís y te cuento que tal me va.. saludos

Lalo
Participante
Participante

Mensajes : 12
Fecha de inscripción : 03/03/2009
Edad : 39
Localización : Oberá

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por maigke el Miér 6 Feb 2013 - 19:01

Sale pues!, si te sale, cuentanos por favor! y edita como solved el hilo
muchas gracias!
avatar
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 40
Localización : Mexico

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por Lalo el Sáb 9 Feb 2013 - 20:38

Bueno comento como me fue, no me funcionó...no se en que le estaré errando pero sigo sin poder siquiera compilar, alguien tiene un manual de sdcc, como para iniciar?

Lalo
Participante
Participante

Mensajes : 12
Fecha de inscripción : 03/03/2009
Edad : 39
Localización : Oberá

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por maigke el Dom 10 Feb 2013 - 1:31

puedes poner las salidas de la consola. saludos
avatar
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 40
Localización : Mexico

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por Lalo el Lun 11 Feb 2013 - 15:15

El archivo creado tiene q ser .h o .c?

Lalo
Participante
Participante

Mensajes : 12
Fecha de inscripción : 03/03/2009
Edad : 39
Localización : Oberá

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por Lalo el Lun 11 Feb 2013 - 16:34

sdcc -mpic14 -p16f877 --use-non-free ej1.c
at 1: error 4: 'fopen' failed on file 'ej1.c'
O bien
at 1: error 4: 'fopen' failed on file 'lcd_sdcc_sgr.c'
Son los errores que me tira la consola

Lalo
Participante
Participante

Mensajes : 12
Fecha de inscripción : 03/03/2009
Edad : 39
Localización : Oberá

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por maigke el Sáb 16 Feb 2013 - 5:22

por lo que leo, el compilador no encuentra el archivo ej1.c y el archivo lcd_sdcc_sgr.c

cuando ejecutas el sdcc en consola, lo haces donde estan los archivos ej1.c y lcd_sdcc_sgr.c?

pon ambos en la misma carpeta, ejecuta el comando pwd
avatar
maigke
Asiduo del Foro
Asiduo del Foro

Mensajes : 210
Fecha de inscripción : 12/04/2009
Edad : 40
Localización : Mexico

Volver arriba Ir abajo

Re: Programar micros en linux

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.