Autor Tema: Chips FAT16 y FAT32 de DosonChip  (Leído 3481 veces)

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

Desconectado bitpic

  • PIC18
  • ****
  • Mensajes: 402
    • BitPIC
Chips FAT16 y FAT32 de DosonChip
« en: 14 de Febrero de 2007, 12:26:42 »
Hola a todos,

Estoy haciendo un proyecto donde gestiono memorias SD a traves del chip de DosonChip (para quien no lo conozca http://chipdos.com/ ).

En principio pensaba que seria una buena manera de no tener que liarme haciendo un libreria para la gestion de esta tarjeta, ya que con este chip resulta facil hacerlo.

El problema esta en que una vez que me llego el chip y me puse a probar cosas con el, me he dado cuenta de que tiene algunos fallos o cadencias un poco importantes y queria saber si es solo cosa mia o si hay alguien que lo haya probado y tambien se haya dado cuenta.

Los fallos o cadencias que he visto son los siguientes:

- Permite crear carpetas nuevas, pero no permite crear archivos nuevos, con lo cual yo me pregunto, ¿para que quiero una carpeta nueva si no la puedo llenar con algo?

- Si tu creas un archivo vacio con el PC dentro de la memoria SD y luego intentas escribir dentro a traves de este chip, no te deja hacerlo a menos que por lo menos hayas puesto dentro del archivo una linea, aunque sea en blanco, lo que seria un ENTER, INTRO, D13, H0D, o como queramos llamarlo.

- Una vez estas escribiendo si pones un salto de linea para escribir en una linea nueva (D13, H0D, INTRO,ENTER....) hace oidos sordos. Escribe todo lo que le pongas en la misma linea, con lo cual el archivo resultante queda un poco desastroso.

No he mirado mas cosas porque he acabado un poco extresado con el y lo tengo un poco de lado, pero me gustaria saber vuestras opiniones sobre este chip.  :( :( :(

Un saludo a todos.
« Última modificación: 14 de Febrero de 2007, 12:30:38 por bitpic »
BitPIC

Desconectado joscar66

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 116
Re: Chips FAT16 y FAT32 de DosonChip
« Respuesta #1 en: 21 de Febrero de 2007, 00:18:18 »
Hola amigo

Cuentame más acerca de tu experiencia. Estoy en visperas de comprar un modulo de esos y me gustaria estar seguro .
De la misma manera invito a los foristas que han utilizado el chip, expongan sus opiniones y experiencias al respecto
Esfuércense por ser mejor cada día...
¡Saludos desde COLOMBIA!

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2211
Re: Chips FAT16 y FAT32 de DosonChip
« Respuesta #2 en: 21 de Febrero de 2007, 00:34:01 »
Hola, yo trabajo con uAlfat:

http://ghielectronics.com/


No tiene ninguno de los problemas de los que comentas bitpic. La única pega que le encuentro es que la enumeración de los archivos no es alfabética sino por fechas... A parte de esto funciona bien, además puedes controlar dispositivos usb en modo host si le añades un MAX3421E... ah! y es bastante más barato que el "DosonChip"...

Espero que sirva de algo mi experiencia :-).

Saludos!

Se me olvidaba...


- Una vez estas escribiendo si pones un salto de linea para escribir en una linea nueva (D13, H0D, INTRO,ENTER....) hace oidos sordos. Escribe todo lo que le pongas en la misma linea, con lo cual el archivo resultante queda un poco desastroso.


Esto tiene pinta de que no envias bien la orden... en Windows es CR+LF (0xD y 0xA, respectivamente, en ASCII).
« Última modificación: 21 de Febrero de 2007, 00:37:49 por manwenwe »
Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -

Desconectado j0s1c0

  • PIC10
  • *
  • Mensajes: 1
Re: Chips FAT16 y FAT32 de DosonChip
« Respuesta #3 en: 24 de Febrero de 2009, 09:36:07 »
Hola, estoy intentando escribir en una microSD desde un PIC, el 18F2550. Para ello uso  una uALFAT OEM Board with TransFlash Micro SD Connector:
http://www.ghielectronics.com/details.php?id=1&sid=102.
De ahí se pueden obtener las librerías y el manual de las mismas.

La conexión la hago según el esquemático que el fabricante pone en la web: http://www.ghielectronics.com/download/uALFAT/uALFAT-TF_SCH.pdf.

Segú este esquema, conecto:

UART_TX a RC7 ( Rx del PIC )
UART_RX a RC6 ( Tx del PIC )
I2C_SC no conectado
I2C_SDA no conectado
SPI_SCK no conectado
SPI_MISO/RTS no conectado
SPI_MOSI/CTS a GND
SPI_SSEL# a GND
RESET# a VCC
GND
VCC
SD_SCK/WAKE/BL# a GND
VBAT a VCC

SPI_SSEL# y SPI_SCK están conectados a GND para configurar la comunicación mediante la UART.

La comunicación con el PIC la hago por UART, a 9600 baudios ( velocidad por defecto de uALFAT ).

Para comenzar, trato de inicializar la SD. Para ello, sigo las instrucciones del fabricante http://www.ghielectronics.com/download/uALFAT/uALFAT%20Manual.pdf.

Ahí se explica cómo realizar las distintas funciones para funcionar con uALFAT, por si fuese necesario modificar las librerías descargadas.

Para inicializar, hay que escribir “I\r” en la uALFAT:
Código: [Seleccionar]
int8 GHI_InitializeSD(void)
{
   GHI_PutC('I');
   GHI_PutC('\r');
   return GHI_GetResult();
}
Esto devuelve un código, que debería ser de la forma “!xx<CR>”, donde “xx” es el código de error. Para mandarle el valor a uALFAT uso la siguiente función:
Código: [Seleccionar]
void GHI_PutC(int8 ch)
{
   putc(ch);
}
El código de error se obtiene con la siguiente función:
Código: [Seleccionar]
int8 GHI_GetResult(void)
{
   int8 result;
   int8 c = 0;

// Solo debug Fuerzo el vaciado del buffer

   while ( c != '!' ) //  Voy a forzar que se quede colgado, pero veo todo lo que me envía hasta que deja de enviar
   {
      c=GHI_GetC();
      printf(usb_cdc_putc,"%c\r",(char)c);
   }

   /* Comentado solo para debug

   c=GHI_GetC();

   if( c=='!')// the command has returned the results
   {
      result=ASCIItoNibble(GHI_GetC())<<4;
      result|=ASCIItoNibble(GHI_GetC());
      if(GHI_GetC()!='\r') // data MUST end with <CR>
         return ERROR_UNEXPECTED_VALUE;
      // everything went well
      return result;
    */
   return ERROR_UNEXPECTED_VALUE;
}
Para capturar el valor uso:
Código: [Seleccionar]
int8 GHI_GetC(void)
{
   int8 a = 1;
   
   while(!kbhit()); // Esto lo hago para forzar la espera ( solo para debug )
   a = getc();
   
   return a;
}
Esto es lo que se obtiene por el hyperterminal:
 
“b0 32 33 22 c8 ff 00”

O lo que es lo mismo  “°23"Èÿ.”

Realmente debería recibir esto “21 00 0d”

He probado a cambiar la velocidad de 9600 a 19200 en el PIC y lee lo mismo, sin embargo 115200 da un resultado distinto ( un string de recepción más largo y con caracteres ascii extendidos )

Si alguien puede ayudarme se lo agradecería.

Desde ya muchas gracias
« Última modificación: 24 de Febrero de 2009, 14:02:09 por j0s1c0 »

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5538
    • Picmania by Redraven
Re: Chips FAT16 y FAT32 de DosonChip
« Respuesta #4 en: 27 de Julio de 2009, 15:04:02 »
¿Sabe alguno de ustedes donde se compra este chipset en España, si tiene distribuidor por aquí?
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania