SD Card FAT CCS

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Re: SD Card FAT CCS

Mensagempor hemasc » 13 Set 2013 16:38

senhores, depois de tantos puxões de orelha, foi encontrado meu problema por não compilar... mas ainda não fiz os testes em gravar e ler no SD Card, assim que o fizer, coloco aqui...
eu usei o driver fat.c direto... deveria ter usado o ex_fat.c
peço desculpas pela falta de atenção...

B-EAGLE, obrigado, eu já estou fuçando nos exemplos do fatfs do site que vc me passou...

tcpipchip, eu formato pelo windows

zé, obrigado pelas dicas, mas os projetos do meu cliente, são todos em CCS, estou de mãos amarradas, pois sempre faço implementações... e como vc mencionou, foquei em solucionar o erro da compilação... próximo passo, vou testar a leitura e escrita
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Re: SD Card FAT CCS

Mensagempor tcpipchip » 13 Set 2013 16:48

Instalei o CCS C e peguei o exemplo ex_fat e compilei para o PIC18F63JXX e rodou no PROTEUS. Peguei uma imagem mas nao sei se é fat32 ou fat16.

TCPIPCHIP
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: SD Card FAT CCS

Mensagempor hemasc » 13 Set 2013 16:54

tcpipchip, notei que no driver fat.c tem isso:

/// Define your FAT type here ///
//#define FAT16
#define FAT32

só que quando eu defini FAT16, não compilou... deu um erro..

#ifdef FAT32
if(write_fat(Next_Free_Clust, 0x0FFFFFFF) == EOF)
return EOF;
#else // FAT16
if(write_fat(Next_Free_Cluster, 0xFFFF) == EOF)
return EOF;

aí mudei a palavra de cluster para Clust... e compilou... estranho... poderia testar aí no seu CCS?

me desculpe a falta de conhecimento... mas no seu comentário, o que vc chama de imagem?
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Re: SD Card FAT CCS

Mensagempor tcpipchip » 13 Set 2013 18:07

Assim que tiver tempo farei isto...imagem do PROTEUS do MMC/SD CARD.

Se eu nao responder...me cobre na mensagem PVT.

TCPIPCHIP
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: SD Card FAT CCS

Mensagempor tcpipchip » 15 Set 2013 22:20

compilou em 16 e 32 bits.
Rodou no Proteus. Mas consegui apenas uma imagem de 12 bits.
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: SD Card FAT CCS

Mensagempor hemasc » 18 Set 2013 16:15

tcpipchip, estou tentando mexer no ex_fat.c
estou tentando debugar...
poderia me orientar quais comandos devo usar para escrever no sd card e depois ler o que foi escrito?
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Re: SD Card FAT CCS

Mensagempor tcpipchip » 19 Set 2013 12:17

olha, quem pode ajudar bem é JF e Fabim. Eu lembro que 3 anos atras eles estavam estudando bit a bit como funciona FAT.
O que eu sei é apenas resultdo de aulas de alocacao de arquivos em sistemas operacionais....que vi em 1989 :(
------------------------------------------
http://www.youtube.com/tcpipchip
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Re: SD Card FAT CCS

Mensagempor hemasc » 19 Set 2013 12:31

então, tentei entender qual parte do programa, no ex_fat.c, é usada para ler e escrever dados... mas estou apanhando
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Re: SD Card FAT CCS

Mensagempor hemasc » 20 Set 2013 15:30

senhores, estava fazendo teste em um hardware novo e notei algo muito estranho.

quando executo output_high(MMCSD_PIN_SELECT); //porta D7 do 18F87k90.... a tensão de alimentação de 3,3V vai para próximo de 0.3V com ou sem o SD Card...

quando executo output_low(MMCSD_PIN_SELECT); //porta D7 do 18F87k90.... com SD Card vai para 3,8V e sem vai para 3.2V

já medi continuidade mas não encontrei nenhum curto... alguém poderia me auxiliar?

meu esquema elétrico é parecido com este, só muda o regular
http://dl.dropboxusercontent.com/u/3490 ... squema.png
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Re: SD Card FAT CCS

Mensagempor RobL » 20 Set 2013 15:59

Coloque todas as portas como entrada menos a D7. Faça D7 ficar alta e veja o resultado. Se ficou normal, há um curto entre D7 e uma das portas que está baixa (trilhas do impresso).
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Re: SD Card FAT CCS

Mensagempor hemasc » 20 Set 2013 16:17

RobL, eu estava medindo curto entre os pinos e me esqueci do GND... ou seja, tava na cara que o D7 tava em curto com o GND.... obrigado
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Re: SD Card FAT CCS

Mensagempor hemasc » 28 Out 2013 09:15

Pessoal, acabei esquecendo de postar meus resultados aqui.
Como eu não tinha espaço no microcontrolador para implementar o SD Card com FAT16, tive que fazer o SD Card apenas como uma memória.

incluí e defini as seguintes configurações

cpp code
#include <stdlib.h> // for atoi32

#use fast_io(c)
#define MMCSD_PIN_SCL PIN_D6 //o
#define MMCSD_PIN_SDI PIN_D5 //i
#define MMCSD_PIN_SDO PIN_D4 //o
#define MMCSD_PIN_SELECT PIN_D7 //o
#include <mmcsd.c>

void main()
{
mmcsd_init(); //inicializo o SD
while(1)
{
mmcsd_write_byte(end, variavel); //comando para escrever no SD Card

mmcsd_read_byte(end, &value); ///comando para ler no SD Card
variavel = value;
}
}
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Re: SD Card FAT CCS

Mensagempor hemasc » 31 Out 2013 14:43

Pessoal, como fazer para identificar que o SD Card não está conectado?

Eu estava fazendo um debug e juro, o PIC lia valores do SD Card mas o mesmo não estava conectado.

Fiquei totalmente perdido, pois se eu retirar o cartão, depois de uns 20 min de funcionamento o equipamento trava.

Tentei criar uma função que ao PIC ler o vazio (sem SD Card) ele sempre me daria valores iguais, mas o fdp continua lendo valores aleatórios e pior, valores que supostamente teriam sido gravados no SD Card.

Ai dei uma estudada no arquivo mmcsd.h e notei um buffer enorme... por isso ainda funciona sem o SD Card.

Mas como eu faria para saber se o equipamento está sem o SD Card? Pois aí crio uma função para não ler o cartão e acender um led indicando a falta do cartão.
hemasc
Nibble
 
Mensagens: 80
Registrado em: 26 Fev 2007 08:59
Localização: Campinas - SP

Anterior

Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron

x