Hola!
void glcd_pixelA(int8 x, int8 y, int1 color)
#ifdef FAST_GLCD
{
int8 *p;
int16 temp;
temp = y/8;
temp *= 64;
temp += x;
if(x > 63)
{
p = displayData.right + temp - 64;
}
else
{
p = displayData.left + temp;
}
if(color)
{
bit_set(*p, y%8);
}
else
{
bit_clear(*p, y%8);
}
}
Bueno, os comento, es una rutina de GLCD. La cuestion es, que funciona bien cuando pongo glcd_pixelA(20,20,1) , y si hago x=20 e y=20, y luego pongo glcd_pixelA(x,y,1) tambien funciona.
Pero si pongo un bucle FOR cambiando los valores de x e y, e invocando la funcion cada vez, no funciona.
x=20;
for(y=1;y<=20;y++)
{
glcd_pixel(x,y,1);
}
Cuestion de punteros? No tengo ni idea. Espero que podais ayudar. Un saludo!