Copiar palavra do LCD para uma variavel

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Copiar palavra do LCD para uma variavel

Mensagempor buiz » 24 Mar 2010 11:07

Olá a todos,

Estou desenvolvendo um projeto no qual eu precisarei incluir o nome do cliente em cada um dos equipamentos, mas não quero ficar alterando o programa e gravando individualmente.

Para isso estou pensando em criar um campo de programação dentro do meu firmware fixo, onde eu possa escrever letra a letra no LCD usando as teclas do equipamento como se fosse num celular.

E após o nome estar completo transferir ele para uma variavel e salvar.

Mas minha duvida é, como copiar informações direto do LCD para uma variavel.

Exemplo eu escrevo: MARCOS no LCD

e atribuo isso a uma unica variavel e salvo na eeprom.

Alguem tem alguma ideia

Estou programando em C.
Avatar do usuário
buiz
Byte
 
Mensagens: 165
Registrado em: 20 Out 2006 14:59
Localização: Cachoeira do Sul - RS

Mensagempor buiz » 24 Mar 2010 11:13

Resumindo:

Seria tipo copiar tudo o que esta na linha 1 do LCD para uma variavel e o que esta na linha 2 para outra variavel.
Avatar do usuário
buiz
Byte
 
Mensagens: 165
Registrado em: 20 Out 2006 14:59
Localização: Cachoeira do Sul - RS

Mensagempor dreher » 24 Mar 2010 11:18

Não seria melhor ir escrevendo isso diretamente em uma string, e ir exibindo a string no lcd?
ai depois da escrita a variavel ja tem o valor que está no LCD
dreher
Byte
 
Mensagens: 489
Registrado em: 12 Out 2006 11:10
Localização: Blumenau - SC

Mensagempor buiz » 24 Mar 2010 11:38

Ok,

Mas isso se eu estivesse fazendo via serial? Correto?

O problema é que as vezes tenho que alterar isso no local da instalação diretamente no equipamento, ai que eu me perdi em como fazer para ir escrevendo esta string aos poucos passo a passo.
Avatar do usuário
buiz
Byte
 
Mensagens: 165
Registrado em: 20 Out 2006 14:59
Localização: Cachoeira do Sul - RS

Mensagempor MOR_AL » 24 Mar 2010 12:03

No seu firmware reserve um espaço de memória (variável string) com o número de, digamos 10 caracteres. Faça uma rotina que ao ir digitando no seu aparelho, estes caracteres seriam inseridos no LCD. Da string para o LCD.
Claro que teria como avançar e retroceder o cursor etc.
Eu entendi que foi isso que o Dreher informou.
MOR_AL
"Para o triunfo do mal só é preciso que os bons homens não façam nada." Edmund Burke.
"Nunca discutas com pessoas estúpidas. Elas irão te arrastar ao nível delas e vencê-lo por possuir mais experiência em ser ignorante". Mark Twain
Avatar do usuário
MOR_AL
Dword
 
Mensagens: 2934
Registrado em: 19 Out 2006 09:38
Localização: Mangaratiba - RJ

Mensagempor buiz » 24 Mar 2010 12:53

Dreher e Mor_al

A rotina de compor a string utilizando cursor ja esta concluida.

Ja é possivel formar a palavra que eu quiser até 30 caracteres em uma linha.

Agora: como formar esta string adicinando um caracter de cada vez que estou em duvida.

A rotina que eu criei disponho um caracter por vez dislocando uma casa no eixo X.

Como ja ir atribuindo estes caracteres para uma string.

Exemplo:

Eu entro com

C
A
S
A

Um caracter por vez,

Agora;

C + A + S + A

igual a String: CASA

Ai está a minha duvida, e esta minha string terá que ser formada de no minimo 30 caracteres.

C1+C2+C3+........C30.
Avatar do usuário
buiz
Byte
 
Mensagens: 165
Registrado em: 20 Out 2006 14:59
Localização: Cachoeira do Sul - RS

Mensagempor dreher » 24 Mar 2010 13:28

tens que fazer assim:
(em "C")

Código: Selecionar todos
char nome_do_cliente[30];
char indexador, tecla;

indexador=0;

while (1)
{
    tecla=rotina_que_le_o_teclado();
    if (tecla é valida)
    {
         nome_do_cliente[indexador]=tecla;
         indexador++;
         lcd_out(1,1,nome_do_cliente);
    }
    if (indexador>=30 | tecla=cancelar) break;
}


No final voce tera a variavel nome_do_cliente com o valor que está no lcd
dreher
Byte
 
Mensagens: 489
Registrado em: 12 Out 2006 11:10
Localização: Blumenau - SC

Mensagempor buiz » 24 Mar 2010 16:01

Valeu Dreher,

Deu certo, apliquei ao meu programa e acertei alguns detelhes e funcionou beleza.

Obrigado pela dica.

E obrigado ao Mor_al tambem!

Um abraço.
Avatar do usuário
buiz
Byte
 
Mensagens: 165
Registrado em: 20 Out 2006 14:59
Localização: Cachoeira do Sul - RS


Voltar para PIC

Quem está online

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

cron

x