Hola a todos, tengo un inconveniente con una matrix de 8x64 (aclaro que la matriz muestra un led encendido teniendo un "1" en la fila, y un "0" en la columna), hago los siguiente:
configuro el pic para funcionar con un cristal externo a 20 MHz, activo todos los pines como I/O digitales, pongo el porta y el portb como salidas, y luego declaro ocho variables (del tipo byte*8 ) para cada fila,
var byte*8 fila0= 0xFFFFFFFFFFFFFFF --con todos los bits con valor uno
var bit f00 at fila0:0 -- f00 es el bit menos significativo de fila0, lo uso para ir
--leyendo e ingresando los valores a la matriz
--declaro otra variable "auxiliar" para no perder la información de fila0 al
--desplazarla para su lectura
var byte*8 auxiliar0= 0xFFFFFFFFFFFFFFF --con todos los bits con valor uno
var bit f00 at fila0:0
f00=1
y luego dirijo el programa a la parte de escritura de la matriz. Mi inconveniente es que, la matriz comienza mostrando todos los leds encendidos, y, como explique anteriormente, tendría que mostrar todos los leds apagados.
El compilador me da esta advertencia:
constant does not fit in UNIVERSAL (en la imagen adjunta hay un pantallazo)
respecto de cada variable byte*8 que declaro. No sé qué es lo que estoy haciendo mal, es decir he utilizado el mismo programa para una matriz de 8x32, y una de 8x8 y me funcionan bien (cuando comienza a correr todos los leds están apagados hasta que va entrando el texto), solo he cambiando para la de 8x8 variables del tipo byte (8 bits), y para la de 8x32 variables del dword (32 bits).
Bueno, después de que comienza a correr el programa en la matriz (y se muestran todos los leds encendidos al mismo tiempo

), al cabo de unos segundos aparece un espacio en blanco (leds apagados), y el texto cargado se desplaza sin ningún inconveniente.
Espero que alguien me pueda dar una mano con esto.
Desde ya gracias.
P.D.=no pongo ningún esquemático porque como dije antes, después de unos segundos, la matriz funciona como espero. Si alguien cree que sea el hard, lo subo para que lo vean.
Saludos.
