Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

12/06/2011 #1


Micro SD y DS1305
Hola:

me estoy iniciando en el uso del protocolo SPI para el manejo de periféricos. En concreto me han propuesto controlar una micro SD y un RTC DS1305 con el compilador HI-TECH Picc 18.

En principio quiero desarrollar un programa muy sencillo. Por ejemplo, cuatro pulsadores: uno para leer de la micro SD, otro para escribir en micro SD, otro para leer del DS1305 y otro para escribir en DS1305.

Os agradecería muchísimo que me echáseis una mano con esto, pues me urge bastante.

Muchas gracias de antemano.
12/06/2011 #2

Avatar de Scooter

Lee los datasheets, el ds1305 es sencillo, si no me equivoco es el que usé en un proyecto.
La Sd es una tarea que tengo pendiente por falta de documentación, busca en el foro porque hay proyectos completos con pic. Por cierto que no se seguro si las micro SD soportan SPI
12/06/2011 #3


Hi-Tech...

yo me encontre algo en ccs, ni siquiera lo he abierto.... puede que les sirva...
es para un mmc.card... y no recuerdo ni siquiera si lo baje de aqui del foro o de otra parte...
Archivos Adjuntos
Tipo de Archivo: zip PIC_CCS_C_MMC_card.zip (1,8 KB (Kilobytes), 39 visitas)
12/06/2011 #4


ok! muchas gracias aunque este proyecto creo que no me va a servir demasiado.

Alguien más me puede ayudar por favor?¿
12/06/2011 #5


mira... ya encontré donde lo vi...
Lecto-grabador de tarjetas MMC, SD, MicroSD con PIC16F877A
esta grandesito el tema pero es algo muy solicitao...
12/06/2011 #6


wow! Esto tiene buena pinta, le echaré un vistazo.

Muchas gracias!!!!!
12/06/2011 #7

Avatar de george.manson.69

En Hi tech lo he realizado pase la libreria quye habia hecho otra persona en otro foro, lo pase a Hi tech for PIC18... he hice un proyecto simple proyecta imagenes guardadas en la memoria SD y los pasa a un GLCD para visualizar...

Saludos te paso todo el proyecto y codigo....

XD
Imágenes Adjuntas
Tipo de Archivo: jpg IMG0107A.jpg (86,5 KB (Kilobytes), 18 visitas)
Archivos Adjuntos
Tipo de Archivo: zip P5.2.zip (736,6 KB (Kilobytes), 27 visitas)
12/06/2011 #8


Gran aporte!!!

Muchas gracias!!! =)
24/06/2011 #9


Hola george.manson.69:

Estoy comprobando el funcionamiento de la microSD con la librería que me has pasado y parece que funciona todo correctamente . Sin embargo hay un detalle que no consigo comprender dentro de las subrutinas de lectura y escritura. Te remarco la línea en cuestión dentro de un recorte de la subrutina:


unsigned char SDCard_write_block(unsigned long Address,unsigned char *Buffer)
{

unsigned char Respuesta,ResTmp;
unsigned int i;

SDSelect();

// Se envia comando para escribir bloque de bytes.-

if(SDCard_send_command(CMD24,Address*512,&Respuesta)==0)
{
return(0);
}
else if(Respuesta!=0)
{
return(0);
}

.
.
.
.
.
.

En el envío del parámetro de la dirección del sector, ¿porqué se realiza esta operación?

Muchas gracias de antemano.

Saludos!!
24/06/2011 #10

Avatar de Scooter

Supongo que porque cada sector son 512 bytes
24/06/2011 #11


Sí, eso lo sabía y parece que tiene algo que ver, aunque no tengo claro si es esa la única razón de peso. En las hojas de características no viene especificado nada de como se organiza la memoria en sectores, sí es sabido que cada bloque contiene 512 bytes pero es complicado saber como se ha de almacenar sin más datos...
24/06/2011 #12

Avatar de Scooter

Por lo que se (poco) si pasas de formato puedes poner en cada sector lo que quieras (512bytes) si no o que tienes que hacer es un formato fat u otro conocido para que sea legible en un PC.
Me suena que están disponibles todas las librerías FAT para los PIC.
16/07/2011 #13


Hola George, no he logrado hacer funcionar tu ejemplo, el error que me da es el siguiente Error: undefined identifier "LATE0", estoy utilizando MPLAB v8.73 con HI TECH PIC18 v9.64,

¿me podrias ayudar por favor :(?

Por cierto soy nuevo en este tipo de programación probablemente es configuración del LMPAB

Gracias!
17/07/2011 #14


¿Qué PIC usas VeraBecker?
17/07/2011 #15


Hola Chesco!!, Utilizo el PIC18F4550, que es el que viene configurado en el proyecto, ¿a eso te referias?

Por cierto ya lo pude compilar, tuve que desinstalar el mplab por completo e instale otra version, y ademas tuve que poner referencias de los siguientes includes en archivos que desconocian algunas funciones del spi.

#include<spi.h>
#include<spi_read.c>
#include<spi_writ.c>
#include<spi_open.c>


........................
Pero ahora me arroja esto y no se si este correcto (lo de color rojo)

Advisory[1233] Employing 18F4550 errata work-arounds:
Advisory[1234] * Corrupted fast interrupt shadow registers

Memory Summary:
Program space used 1B4Ah ( 6986) of 8000h bytes ( 21.3%)
Data space used 47h ( 71) of 400h bytes ( 6.9%)
EEPROM space used 0h ( 0) of 100h bytes ( 0.0%)
ID Location space used 0h ( 0) of 8h nibbles ( 0.0%)
Configuration bits used 7h ( 7) of 7h words (100.0%)

Running this compiler in PRO mode, with Omniscient Code Generation enabled,
often produces code which is 60% smaller and at least 400% faster than in
Lite mode. The HI-TECH C PRO compiler output for this code could be
3865 bytes smaller and run 4 times faster.
See http://microchip.htsoft.com/portal/pic18_pro
for more information.

Loaded C:\PIC C\SD_GLCD\_salida\MCC.cof.

********** Build successful! **********
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.