Autor Tema: data serial no entra en un solo banco de ram  (Leído 1247 veces)

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

Desconectado psicowifi

  • PIC12
  • **
  • Mensajes: 56
data serial no entra en un solo banco de ram
« en: 09 de Diciembre de 2009, 23:31:21 »
A ver quien me da una mano a ver que puedo solucionar....
Tengo una entrada serial rs232 usando serin2 por un pin del pic y un array declarado en el banco2 de ram de 80 bytes pero el string que entra es demasiado extenso a demas que es variable no siempre tiene la misma longitud y quiero detectar cuando se llega en bufer de esos 80 bytes y registrar la data siguiente en otra variable de array declarada pero en el banco3. uso un 16f877 de 20 mhz.
 mii problema radica en que no se como detectar que ya se lleno el array 1 y hacer que el resto de la data entre en el array 2 hasta que complete .

los dato varian no son fijos solo tienen un digito de inicio y uno de final ejemplo.

@este es el string que entra por el pin del pic y que puede llegar a tener hasta 130 caracteres&
se inicia siemppre con @ y termina con &
detecto el @ sin problemas pero como hago para detectar el & si el array1 solo tiene 80 caracteres quien me da una mano

ejemplo del codigo.

a var byte[80] bank2
b var byte[50] bank3
rx var porta.0
tx var porta.1
serin2 rx,84,[wait("@") str a\80\"&", b\50\"&"]
serout2 rx,84,[str a\80, b\50, 13,10]

end

se registra la primera linea pero al llenarse no sigue entrando la data que falta al segundo array que se podria hacer una idea por favor...

gracias....


 

anything