Ver Mensaje Individual
Antiguo 12/05/2007, 13:17   #221
jubamo 
Usuario PREMIUM+
 
Avatar de jubamo
 
Fecha de ingreso: 15/ago/2006
Mensajes: 420
jubamo es como un diamante en brutojubamo es como un diamante en brutojubamo es como un diamante en brutojubamo es como un diamante en bruto
Aquí hay un parche (creo que es para la V4.5) que le introduce una nueva función para retardo en las rutinas de la flash, pero como es de nanoseg se puede hacer una llamada cada vez que saque algo por el puerto paralelo y así vaya más despacio.

http://wiki.openwrt.org/OpenWrtDocs/...ggler.patch.gz

En el caso de una maquina rápida y no te funcione bién se puede probar a intercalar en la función clockin, antes de cada lectura o escritura en puerto paralelo.

static unsigned char clockin(int tms, int tdi)
{
unsigned char data;

tms = tms ? 1 : 0;
tdi = tdi ? 1 : 0;

if(wiggler) data = (1 << WTDO) | (0 << WTCK) | (tms << WTMS) | (tdi << WTDI) | (1 << WTRST_N);
else data = (1 << TDO) | (0 << TCK) | (tms << TMS) | (tdi << TDI);
#ifdef WINDOWS_VERSION // ---- Compiler Specific Code ----
{ tdelay(0, 20); //esta es la llamada, se pueden probar otros valores.
_outp(0x378, data);
}


ESTA ES LA FUNCION
void tdelay(int secs, int nsecs)
{
struct timespec delay;
delay.tv_sec = secs;
delay.tv_nsec = nsecs;
nanosleep(&delay, NULL);
}

He probado lo de los retardos y no es este mi problema, parece que es de adaptación de niveles de tensión, pue utilizo el Jtag de resistencias.

Última edición por jubamo; 12/05/2007 a las 18:36.
jubamo está desconectado
Respuesta rápida a este mensaje
Subir