Buffer da RS232.

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Mensagempor fabim » 20 Mai 2008 17:34

use um SDcard..
de uns 2 giga byte.

Ele trabalha com comunicação sincrona SPI e vai té 20mhz.

Poucos sabem mais o SD card pode trabalhar não apenas com blocos de 512 bytes para leitura e escrita.

Todos os SD aceitam uma forma de gravação e leitura chamada de multi bloco ou multi seção.

Por exemplo.
Mando o comando pra ele saber que vou gravar em mult bloco e não em blocos de 512 bytes, ja apontando para o endereço 0X00000001

Feito isso eu posso ir jogando os bytes sem parar até encher os 2Gbyte, quando acabar a gravação eu falo pro SD que não vou mais gravar em multi seção.

Pronto vamos mandar os dados para o PC.

Mando o comando de "LEITURA" em mult seção.
Apontando o endereço 0X00000001.
leio SPI e mando para o PC
leio SPI e mando para o PC
faço isso 2000 000 000 de vz´s.
Quando acabar eu falo pro SDcard que não vou mais ler em multi seção.

volto la pra cima e fico em um looping.

tendeu ?

Fabim
Mano, ve só.
Sou responsável pelo que escrevo!!! E não pelo que você entende !!!
fabim
Dword
 
Mensagens: 5001
Registrado em: 16 Out 2006 10:18
Localização: aqui uái!!!?

Mensagempor fabio_pic » 20 Mai 2008 18:28

Agora as coisas estão se esclarecendo mas geralmente as memórias deste tipo "ROM, EEPROM ..." não têm o tempo de escrita muito alto? Na ordem de alguns milisegundos?

Outra pergunta... Essa forma de utilizar o cartão SD pode é aquela do help do MikroC para cartões MMC?

Abraços,
Fábio.
fabio_pic
Nibble
 
Mensagens: 81
Registrado em: 03 Set 2007 09:04
Localização: Rio de Janeiro

Mensagempor vtrx » 20 Mai 2008 19:40

Voce não conseguira gravar direto no BD com essa velocidade,eu mesmo ja fiz algo assim e o BD não consegue.
Grave os dados recebidos em um arquivo .hex no windows e depois do arquivo completo passe para o BD.
Se voce estiver querendo salvar byte a byte,desmembre o arquivo gravado e salve em bytes.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2240
Registrado em: 20 Abr 2008 21:01

Mensagempor Maurício » 20 Mai 2008 21:05

fabio_pic escreveu:O pic que estou utilizando é o 16F874;
Programando em C;

A idéia de fazer o buffer no PC ao invés de fazê-lo no PIC é bastante interessante... De qualquer forma, alguém já usou a memória 62256?


Salve, Fábio.

A 62256 tem 15 linhas de endereço (A0..A14), 3 de controle e bus de dados de 8 bits.

Com os endereços o que se faz é travar o LSB(A0..A7) em um latche de 8 bits.

Colocar o MSB no bus e habilitar a memória e o tipo da operação: leitura ou escrita.
Se for operação de leitura, a memória envia o conteúdo do endereço através do bus de I/O.
Se for escrita, o dado tem que estar presente no bus antes da operação de escrita.
Se a memória estiver desabilitada, o bus de I/O entra em tri-state.
Pra controlar a memória diretamente, vc vai precisar de 26 pinos.

http://www.datasheetcatalog.net/pt/data ... 2256.shtml

Este documento tem o que vc precisa. É só substituir o MCU.

http://www.google.com/url?sa=t&ct=res&c ... svRaynCl8Q


[]'s
"Não leve a vida tão à sério, afinal, nenhum de nós sairá vivo, dela!"
Avatar do usuário
Maurício
Word
 
Mensagens: 678
Registrado em: 14 Out 2006 17:23
Localização: São Paulo - SP

Mensagempor fabim » 20 Mai 2008 23:13

mikroe disponibiliza apenas fat.
O mikropascal versão 6 tinha uma coisa muito chique que tiraram da liby.

Voce achava o arquivo, perguntava o tamanho dele, e tinha um comando que li byte to byte..

Agora as novas versões apenas buffer de 512 bytes, se tiver isso tudo disponivel da pra usar o problema é o tempo que ele leva para gravar 512 bytes=
tempo de execução pro pic ir serializando os bytes + tempo para tratar os bytes.
Tem um cara vendendo osciloscopio de 5MSPS X o bits usando SD crd sandisk das novas versões com bus trabalhando com clock de até 40mhz.

Fabim
Mano, ve só.
Sou responsável pelo que escrevo!!! E não pelo que você entende !!!
fabim
Dword
 
Mensagens: 5001
Registrado em: 16 Out 2006 10:18
Localização: aqui uái!!!?

Mensagempor ze » 21 Mai 2008 08:02

a idéia do sd card é boa pro caso de poder gravar tudo e avaliar depois. os pcs atuais têm leitor. e eu nem sabia que era tão simples manipular!!
veja:
http://www2.eletronica.org/hack-s-dicas ... embarcados
não precisei (ainda) fazer nada com eles, mas a dica é boa.
Pro seu caso, se não quiser pular pro pic24 (+ram) a 62256 pode ser 1 solução msm. Mas creio que o envio de pacotes só da ram do pic seja + eficaz.
Eficiente ou eficaz: que diferença faz (! e ?)

abrç
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Mensagempor fabio_pic » 21 Mai 2008 09:07

Então acho que a primeira solução a ser testada é a "bufferização" dos dados no PC e colocar os dados no BD com uma velocidade mais baixa suficiente.

Depois iniciarei os testes com o 18F4550 que tem mais memória, depois com o 62256 e se tudo der certo testar o cartão SD. Com o material que a galera disponibilizou é suficiente.

É muita novidade ao mesmo tempo.

Abraços a todos,
Fábio.
fabio_pic
Nibble
 
Mensagens: 81
Registrado em: 03 Set 2007 09:04
Localização: Rio de Janeiro

Anterior

Voltar para PIC

Quem está online

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

cron

x