Autor Tema: Se puede?  (Leído 2749 veces)

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

Desconectado blaguar

  • PIC10
  • *
  • Mensajes: 2
Se puede?
« en: 02 de Octubre de 2008, 19:18:29 »
Hola que tal, soy novato en esto de la programacion de pic y quisiera preguntarles una cosilla mmm
Se que se puede intercalar codigo asm es un programa escrito en C pero, ¿se puede meter o llamar a una libreria escrita es C para uso en ASM?

Pregunto esto pq en muchos casos encontrar un driver de por ejemplo una pantalla LCD es mas facil hallarla en C que no es ASM.
Si no fuese asi creo que esto seria un condicionante a atreverme a programar en C y no en ASM, aun que pese a que suene raro, puedo entender mejor el ASM que no el C supongo que es pq no di con el libro adecuado " Programacion de pic en C para tontos " 

Un saludo y muchas gracias!!

Desconectado Leon Pic

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3610
    • Impresiones en 3D
Re: Se puede?
« Respuesta #1 en: 02 de Octubre de 2008, 19:46:33 »
Hola blaguar. No se puede.

Es por eso que el lenguaje C, se a vuelto muy popular. Lo que tendrás que hacer, son las rutinas para cada cosa a controlar. O aprender el lenguaje C  :mrgreen:
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.

Desconectado blaguar

  • PIC10
  • *
  • Mensajes: 2
Re: Se puede?
« Respuesta #2 en: 02 de Octubre de 2008, 19:48:15 »
ok gracias por contestar, me intentare aplicar mas en C aver si m entra!!!  :-/

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Se puede?
« Respuesta #3 en: 02 de Octubre de 2008, 20:47:04 »
Hola.

No se puede linkear un programa completo, pero si se puede usar funciones compiladas en C para usarlas en ASM, se usan Unidades Multiples de Compilacion.

saludos
El papel lo aguanta todo

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Se puede?
« Respuesta #4 en: 02 de Octubre de 2008, 21:23:04 »
Hola, en teoria poder se pude, aunque no es lo mas recomendable. Primero deberias compilar unicamente los modulos en C y generar los respectivos obj, para llamar a las funciones desde ASM debes aprender el convenio de llamadas, como se pasan los parametros en el stack, quien limpia el mismo y por donde se produce el retorno de la misma. Una vez realizado esto deberias linkear a mano definiendo los segmentos respectivos a cada area del programa ( BSS, DATA, CONST, ROM, etc, etc ).
Pero te comente antes, si recien empezas hacelo con C que despues de start-up es tan potente como ASM.

Saludos !

Desconectado Leon Pic

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3610
    • Impresiones en 3D
Re: Se puede?
« Respuesta #5 en: 05 de Octubre de 2008, 22:05:50 »
Por lo que yo entendí, lo que quiere hacer, es insertar en el código asm, una parte del lenguaje C, como se hace en C cuando se inserta códigos de asm   :shock: :D

Pero la opción que te dan, es totalemente válido. Lo que enrealidad se hace, es traducir el lenguaje C a asm, llevándolo primero a compilarlo en hex, para luego utilizar un programita que te arma el asm a partir del archivo hex.
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.


 

anything