ciaa / firmware_v1

Firmware de la CIAA
http://www.proyecto-ciaa.com.ar
126 stars 120 forks source link

Problemas en arranque cuando se usa el oscilador a XT (CIAA NXP y EDU CIAA NXP) #459

Open jcecconi opened 7 years ago

jcecconi commented 7 years ago

Descripción: Cuando la placa se pone a funcionar con el código de arranque de lpcopen, el mismo a veces es errático. Hay que resetearlo varias veces para que funcione porque parece quedarse colgada

Causa: Por un problema de HW, el cristal que se ha colocado es incorrecto.

Solución: Utilizandola en modo IRC (Internal RC) y dejandolo en ese modo funciona sin problemas, tal como loa hace lpcopen. Si se necesita usarlo a XT (para mnejo de USB por ejemplo) , es necesario recurrir a una demora adicional luego de habilitar el XT para permitir que el oscilador arranque y se estabilice. Esta demora adicional se debería implementar aumentando el delay del valor original de 500 (lpcopen) a 5000 (ajustar en cada HW, colocar de más sólo demora unos mS el arranque inicial sin mayores inconvenientes aumentando la posibilidad de éxito)

https://github.com/ciaa/Firmware/blob/master/externals/drivers/cortexM4/lpc43xx/src/sysinit_18xx_43xx.c#L110

Referencia: Ver issue de HW "Problemas en arranque cuando se usa el oscilador a XT (CIAA NXP y EDU CIAA NXP)", con explicación más detallada y oscilogramas Ver solución implementada en FW de inicialización de Board en FW v2