variables de 2 bytes microchip

En C no tienes ningún problema, hasta operacioens en coma flotante...en ensamblador más chungo, puedes hacerte una función que opere con las variables (de 2 o más bytes) wue esten en una dirección fija de memoria, pero tendrñas que llevar tu la cuenta de los acarreos ye eso, bueno, tú no, la función ;). Es decir primero cargas esos registros con los datos a operar, y después llamas a tu función para operar en esos registros... Lo malo es que tienes que escribir una función para cada operación, o si quieres puedes ecribirlas en C, compilar, y copiar el código en emsambladro que genera el compilador de C, que a mi personalmente me gusta mucho, quiicir, estoy muy satisfecho con el compilador de Hi-Tech, y comprobando el código que genera he aprendido muchos truquillos (ni que decir tiene que soy un principiante... )

Reply to
Fleming
Loading thread data ...

Las librerías de funciones y código preescrito de PCW, son muy interesantes, y además el entorno es para Windows. He probado ambos, y me quedo con PCW, sin dudarlo.

Reply to
Cangrejo Moruno

Hola a todos:

Tengo una duda: Es posible trabajar directamente con variables de 2 bytes en la gama media o alta de microchip ? (16F627 , 16F876...) Me refiero a si hay alguna(s) pseudo-instruccion(es) o algun "truco" que permita realizar operaciones booleanas o aritmeticas.

Un cordial saludo.

P.Rubio

Reply to
P.Rubio

Para hacer lo que comentabas en el post original:

Te sirve cualquier compilador de C. No vas a tener ningún problema, el de CCS es un compilador mucho más extendido, y como dice Cangrejo Moruno, este compilador trae cantidad de funciones y librerías preescritas, que personalmente yo no utilizo porque al final acabo perdiendo mucho más tiempo averiguando como implementarla en mi código para que no de errores y funcionen correctamente.

Reply to
Fleming

Gracias Fleming, probare lo del C,aunque no tengo el Hi-Tech sino el PCW supongo el resultado sera similar.

Un saludo.

"Fleming" escribió en el mensaje news:440b1523$ snipped-for-privacy@newsgate.x-privat.org...

media

no,

emsambladro

el

soy

Reply to
P.Rubio

Yo creo que la decision de usar C o asm no se puede basar en la necesidad de usar variables de 16 bits, o más.

Lo del C se puede mirar de varias formas:

Tienes un programa tan sencillo que te sobra espacio en el PIC, pues usas C y acabas más rápido.

Tienes un programa tan complejo que te sientes incapaz de manejarlo en asm, pues usas C y pagas por un PIC con mucha más memoria que si usases asm.

Pero lo de las variables de 16 bits, es como todo en el asm, requiere su trabajo, pero no tanto como otras cosas, puedes hacer una macro con dos o cuatro instrucciones asm y todo solucionado. El flag de acarreo sirve para eso, sumar y restar numeros de la longitud que quieras es trivial en asm. El problema esta en las multiplicaciones y divisiones, hay que hacer virguerias con el limitado juego de instrucciones del PIC.

Reply to
Nolo Pongo

Con que busques un poco por Google, con pic math routines, se encuentran rutinas a patadas. Estas son para 32 bit:

formatting link

Y en las notas de aplicaciópn AN 617, de Microchip, tienes infinidad de rutinas y ejemplos:

formatting link

Reply to
Cangrejo Moruno

Muchas gracias a todos por vuestras respuestas.

Un cordial saludo.

P. Rubio

"P.Rubio" escribió en el mensaje news:duf2rr$37u$ snipped-for-privacy@caladan.landsraad.net...

o
Reply to
P.Rubio

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.