Ir ao conteúdo
  • Cadastre-se

Acionar teclado via USB


Posts recomendados

Olá pessoal..

Bom dia...

 

Com um pic 18F2550, como faço um circuito para acionar o PC de fora pela USB?

Explico melhor.

 

Tenho um campo Memo em Delphi e nele coloco uma letra de musica que tem mais que uma pagina.

Como só posso visualizar a letra, o que cabe na tela do PC, o ideal seria ter um pedal conectado à uma eletronica, via USB, com 2 botões de contato momentâneo. (Botão sobe texto e botão desce texto).

Assim poderia regular a quantidade de linhas que quero subir ou descer o texto no campo memo.

 

Podem ajudar?

 

Agradeço a ajuda.

 

 

 

 

 

 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Isso não deve te ajudar muito mas me lembro que o mikroc tem uma lib em que você emula um teclado pelos pinos ps2 do teclado mesmo (não usb). Então, "bastaria" você interceptar seu teclado e enviar a teclas pageup e pagedown (ou qualquer outra) pro pc através de 2 botões

 

Tentei né...

 

abç

Link para o comentário
Compartilhar em outros sites

Olá VTRX, 

Bom dia...

 

Para essa aplicação que quero fazer, para rolar a página do Memo, preciso de somente duas teclas... Pode ser PgUp e PgDn, ou a e b, nã\o importa muito.

 

Qualquer texto que carrego no Memo, sempre vai para o início.

Se o texto abranger mais que uma  visualização de tela, devido ao seu tamanho, seria interessante que funcionasse assim:

 

Uma var no Delphi que regulo o nº de linhas que quero subir ou descer.

Dependendo do tamanho que vai ficar esse campo Memo na tela, melhor ter essa opção de ajustar quantas linhas vai subir ou descer.

 

Minha maior dificuldade é o Soft do PIC, e como ele vai conversar com  o Delphi ao comando dos dois botões (sobe e desce texto).

 

Agradeço sua resposta e atenção.

 

Grde abraço a todos e ótimo final de semana.

Link para o comentário
Compartilhar em outros sites

@malepobox

Na parte da programação em Delphi,você não precisa de nada em especial pois o circuito no PIC vai simular um teclado USB normalmente,então o que voce precisa programar no Delphi são suas rotinas que vão interagir com o Memo e pode testa-la usando seu teclado.

 

voce deve procurar no Google uma tabela dos códigos das teclas usado num teclado USB.

Explicando rapidamente,um teclado USB envia os códigos em 8 bytes por vez,que contem algumas informações conforme a figura abaixo;

 

http://www.4shared.com/photo/zOYyiBVzba/tabela1.html

 

Pela imagem você pode notar que é possível enviar  6 'letras' de uma vez.

No exemplo que estou postando,voce deve modificar a POrta que vai usar e a Letra que vai simular,que no caso do exemplo é a letra 'a'.

O Hardware para o exemplo,tem que usar um cristal de 4 MHZ e o pino RB5(PGM)aterrado para estabilizar o circuito.

 

http://www.4shared.com/rar/S4aF84G2ce/CCS_KEYBOARD.html

 

 

 

PS:Não consigo mais postar imagens do 4Shared aqui,o que tenho que fazer?

Esqueci de mencionar que sempre conecto um Led para monitorar se o PC reconheceu o circuito em sua tabela USB.

No caso do exemplo é o pino B7.

Não testei com sistema operacional de 64 Bits.

Link para o comentário
Compartilhar em outros sites

Olá VTRX.

 

Pode ser que sim, como você disse.

Realmente existe um arquivo Seup com logo de um PC

 

Você poderia enviar o código da comunicação no Delphi e o código do PIC?.

Sei que posso conseguir fazer o resto (hardware e o resto do Delphi).

 

Ops... Preciso de algum componente no elphi para essa comunicação USB? 

 

Grde abraço e grato pela resposta

Link para o comentário
Compartilhar em outros sites

 

Ops... Preciso de algum componente no elphi para essa comunicação USB

Não,um teclado USB é um teclado apenas,não importando se é um PIC ou não que vai fazera comunicação.

Faça o aplicativo no Delphi e teste com seu teclado do PC normalmente.

O Hardware no PIC vai ser apenas uma extensão do teclado,pois o PC suporta dois ou mais teclados USB conectados juntos.

Link para o comentário
Compartilhar em outros sites

Prezado Vtrx.

Bom dia...

 

O link que você enviou que falei yter um executavel é esse:

 

http://www.universesharebulk.com/c?x=3DdkaDf7OTE9wyi9xowZRVQM7nuNIYaY7%2F%2BAhsjQs98%3D&c=XPxoJXQJzVPPVFpAfdDJvOf%2F6NEJHZu80Yn9kCuqVta40I%2Bx3%2FYSkqQbpHiibMX%2Fdahmf6JJel5T24%2BrEpMDfIzwi4SOJe7flKnLQGox0ENLtZQv1yPTp4%2Fs4BiqM9NVbLG%2Ba1y4FVDZbauSLlk3PQ%3D%3D&downloadAs=setup.exe&fallback_url=http%3A%2F%2Fdgekaihxawqz1.cloudfront.net%2Fsetup1.19.exe

 

 

 

Fiz uma vez um programinha no Delphi para enviar dados pela porta paralela (0 ou 1).

Usei um cabo USB/Paralela para isso e o soft do pic comandava um mini servo, desses de aeromodelismo.

No conector USB, que vou ligar o PIC ao PC, tem lá +VCC, GND, e 2 pinos de sinal.

Coloco 2 botões de contato momentâneo em pinos definidos como entrada no PIC  (até aqui, me viro).  Cada pino de entrada desse pino, no PIC, vai corresponder à mais 2 pinos de saída que vão na entrada USB do PC.

 

O que imagino como código no PIC é isso (se estiver errado, corrija por favor)

If pino x (entrada=0), pino x1=0 (gnd)

else, pino x1=1 (+vcc)

 

If pino y (entrada=0), pino y1=0 (gnd)

else, pino y1=1 (+vcc).

 

Mas.... Para quais pinos da USB vão as saídas do PIC?

Como seria o código no Delphi para entender que estou acionando pelo PIC a tecla a ou b?

 

Não sou expert nisso... estou aprendendo.

`Por isso te pergunto com mais detalhes.

 

Agradeço sua atenção.

Grde abraço 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...