desktop

Encontrar error de compilación con MPLAB

Impresionante como cambió el panorama.
Nadie medianamente cuerdo programa en assembler en la actualidad, y si necesitás agregar algo de código assembler en un programa en C, el propio compilador se encarga de gestionarlo. Pero nó, no esperés encontrar gente que programe en assembler por ya casi han desaparecido....igual que los dinosaurios.
 
:unsure:
:unsure: :unsure: :unsure: :ROFLMAO: :ROFLMAO:

Me valía mucho para hacer pequeños programas, como contadores de display de 7 segmentos.
 
Yo ya soy dinosaurio jaja, pero es cierto que ya es raro un programador en asm

:unsure:
:unsure: :unsure: :unsure: :ROFLMAO: :ROFLMAO:

Me valía mucho para hacer pequeños programas, como contadores de display de 7 segmentos.
Con los años cambió, puesto que más facil y al grano es usar lenguajes de alto nivel que son en cierta forma, prácticos y/o compresibles, a ello le suma la aún fama, el usar módulos y armar todo como rompecabezas.

Asm queda como para los que requieren precisión, recuerdo las épocas en las que contaba cada instrucción, cada microsegundo jaja, pero actualmente no vale mucho la pena.

Edit,
Puedes probar en versiones de los años 2019-2020, donde aun existía el clásico compilador dentro del nuevo MPLABX.
 

Adjuntos

  • MPASMtoPICAS_v0.9b.pdf
    730.5 KB · Visitas: 3
Última edición:
Yo ya soy dinosaurio jaja, pero es cierto que ya es raro un programador en asm
El asunto es que un lenguaje de alto nivel te permite multiplicar x10 o más la velocidad de desarrollo y acceder al uso de código desarrollado por terceros, y eso te permite resolver un problema en una muy pequeña fracción del tiempo necesario para hacerlo en assembler.
 
Y libros para programar los PIC18Fxxx por ejemplo del lenguaje C con el MPLAB más moderno que hay.

Si tanto que usan el lenguaje C para casi todo. ¿Por qué no hay libros modernos sobre ello?

Se traduce a que no hay interés.

Porque....

Los autores están enfocado hacer otros libros sobre Arduino y Raspberry Pico, con C/C++ y Python. Encima el Python, nunca me ha gustado ese lenguaje. También se dedican hacer libros sobre Visual Studio con C#.

Será cuestión de épocas, Microchip tiene que espabilar.
 
Si tanto que usan el lenguaje C para casi todo. ¿Por qué no hay libros modernos sobre ello?

Se traduce a que no hay interés.
Esa será TU traducción, que por cierto es bastante mala. El lenguaje C es un estándar desde hace 50 años y el libro de Kernighan & Ritchie es todo lo que hace falta para aprenderlo y conocerlo. El lenguaje C es exactamente el mismo desde su creación, aunque hay estándares mas modernos que agregan algunas cositas bastante menores...
No sé que esperás encontrar en un libro "moderno" del lenguaje C que no esté en el libro de sus creadores...
 
Esa será TU traducción, que por cierto es bastante mala. El lenguaje C es un estándar desde hace 50 años y el libro de Kernighan & Ritchie es todo lo que hace falta para aprenderlo y conocerlo. El lenguaje C es exactamente el mismo desde su creación, aunque hay estándares mas modernos que agregan algunas cositas bastante menores...
No sé que esperás encontrar en un libro "moderno" del lenguaje C que no esté en el libro de sus creadores...
Lo comento de otra manera.

¿Por qué no se centran en hacer libros de los PIC con le lenguaje C del MPLAB X hoy en día?

¿Se entiende mejor lo que quería decir antes? ;)
 
Lo comento de otra manera.

¿Por qué no se centran en hacer libros de los PIC con le lenguaje C del MPLAB X hoy en día?

¿Se entiende mejor lo que quería decir antes? ;)
No, no lo entiendo 🤷‍♂️
El C es un lenguaje de alto nivel, no hay que hacer nada raro para lograr un programa 100% funcional. Yo he programado PICs en C solo sabiendo el lenguaje y buscando en las bibliotecas lo que me hacía falta. Todo el hardware interno del PIC está oculto bajo una capa de software (en forma de funciones, variables y constantes) que te abstrae de todos los detalles. Claro que tenes que estudiar lo que hacen esas funciones para entender como vas a hacer operar el hardware y saber cuando te alcanza con eso y cuando nó, pero eso es lo mismo que ocurre en cualquier lenguaje de alto nivel.
Ahora, si esperás libros con problemas ya resueltos ...ahí ya no sé si hay libros o a alguien le interesa hacerlos por que la dependencia del hardware es muy alta y la utilidad sería muuuuy limitada.
 
Es fácil. Que hagan libros para aprender a programar PIC, aunque sea los PIC18F, o mejor aún, los PIC32. Da igual el tipo de PIC, simplemente, para los nuevos aprendan a programar PIC con el lenguaje C, algo de electrónica y ya está.
 
Debe estar lleno de libros en C para PIC, de hecho una simple búsqueda en google te permite encontrar esto:



Tu problema es que no te movés del español y eso mas que nada en electrónica (o cualquier cosa relacionado con la tecnología) te limita muchísimo.

Como ya dije antes, para alguien que recién empieza con C en sistemas embebidos, no vale la pena que pierda el tiempo con PIC/AVR/8051/etc, es mejor que vaya directo a un ARM o la alternativa que está tomando vuelo que es RISC-V.

Y la persona que ya tiene conocimientos en C previos en sistemas embebidos, más que aprender a programar C específicamente para PIC, debe aprender/saber a leer hojas de datos de cualquier microcontrolador y saber que registros debe tocar para conseguir sus objetivos. El resto de cosas raras propias de una familia de uC, como definiciones o funciones propias que se pueden encontrar en el compilador/código, es cuestión de buscarlas y sobre todo ver ejemplos de otras personas.

Ejemplo, para ARM lo mejor que podés hacer es usar las sdk que te recomienda el fabricante, en su momento cuando usé la familia de NXP, te recomendaban el LPCopen. Para aprender a usar las librerías del LPCOpen, no necesitás ningún libro, simplemente de las sdk buscas un ejemplo del uso del periférico que querés usar y te basas en eso. Hoy en día, la programación es esto, basarte en sdks que vienen con ejemplos de uso y llevarlo a tus necesidades. Esto ahorra mucho tiempo de desarrollo, tal como mencionó el dr. arriba.
 
Última edición:
Atrás
Arriba