sábado, 29 de agosto de 2015

Script para caixa PATOLA CR-096

Para poder fazer a fixação dos push-buttons na caixa CR-096 precisei de desenhar a referência da posição dos botões, mas os desenhos no site da Patola não possuem nenhuma medida da caixa montada, apenas das partes e várias dessas medidas tomam como referência as dimensões externas da caixa.  Por isso precisei desenhar as peças no sketchup, sobrepor as janelas dos botões e descontar a espessura da caixa, mantendo as medidas do 'outline' da placa em múltiplos de décimos de polegada.
Usando o Sketchup para desenhar e tomar as medidas

A partir dos desenhos tomei as medidas e criei o script para gerar o script que desenha a placa.

# Caixa Patola CR-096 - Danjovic 2015
# http://www.patola.com.br/index.php?route=product/product&product_id=254


#Ajusta Grid
Grid mm 1 off;
Set Wire_Bend 0;
#Outline
Layer Dimension;
Wire 0  (-39.37 -26.77) (39.37 26.77) (-39.37 -26.77);
#Furos
Hole 2.6 (-10.5 0);  # furo principal
Hole 2.6 (17.5 22.5);
Hole 2.6 (17.5 -22.5);
#detalhes
Layer vRestrict;
Circle (-10.5 0)  (-10.5 2.5);   # torre principal
Circle (17.5 22.5)  (17.5 25);   # torre 1
Circle (17.5 -22.5)  (17.5 -25); # torre 2

#referencias de montagem
layer tDocu
Circle (35.5 -22.5) (35.5 -24);  #led
Circle (11.5 9.5) (11.5 11.5);   #botao 1
Circle (11.5 -9.5) (11.5 -11.5); #botao 2

wire (10 2) (25 17) (10 2);
wire (10 -2) (25 -17) (10 -2);

#Restaura Grid
Grid Last;
Window Fit;


Depois de executado temos o desenho da placa.

Placa gerada pelo script

Aproveitei e criei uma biblioteca eagle e coloquei junto com o script numa pasta do dropbox. Coloquei junto a placa PB-083 do post anterior

sexta-feira, 28 de agosto de 2015

Pinguino com alguns extras (2)

Fiz uma ligeira modificação na placa do Pinguino porque o header para RS232 não estava permitindo encaixar o PICKIT direto no conector ICSP. Por isso foi necessário retirar os dois pinos N.C. Aproveitei e corrigi a figura com a pinagem do conector para refletir as modificações, bem como incluir a pinagem sequencial do conector (1 a 22) e reordenar os botões e leds BT1-3 e LED1-3 para ficarem numa ordem coerente com os pinos do PIC.


Pinagem e componentes da placa

Também desenhei o diagrama no Eagle para facilitar o trabalho com a placa

Diagrama do Pinguino

O diagrama encontra-se disponível neste em formato eagle e pdf (link para dropbox).

quinta-feira, 27 de agosto de 2015

Ensaio para joystick (2)


Escrevi e simulei as rotinas para ler os potenciômetros e transformar os sinais analógicos dos potenciômetros dos eixos X e Y nas 4 posições básicas dos controles direcionais. O código atual implementa uma 'dead zone' em torno do meio do curso dos potenciômetros mas isso pode ser melhorado.

Também escrevi e simulei as rotinas para transformar os sinais analógicos em sinais temporizados nos pinos dos controles direcionais. O Loop ficou com exatos 12us por iteração que casa exatamente com a temporização do MSX. Um detalhe é que gero temporização para os sinais de forma recíproca, ou seja, se o eixo X está no início do curso a temporização do pino UP dura muito pouco e a do pino DOWN dura exatamente o complemento do pino left. Em números, se a leitura do paddle (0) resultasse em 45, a do paddle(1) resultaria em 210, que é exatamente o complemento para 255.

A primeira parte do funcionamento ( como joystick normal) eu já testei no proto-board usando o PIC16F688 como plataforma.

Testes iniciais de conversão do sinal do joystick




quarta-feira, 26 de agosto de 2015

Ensaio para joystick

Aproveitando uma sucata de controle de playstation estou montando um joystick analógico numa caixa Patola CR-096.


Tenho alguns planos para ele, um pouco distintos, mas vou concluir primeiro a montagem mecânica, que é o crítico no projeto, depois decido se ele vai virar um dispositivo USB para o PC ou um 'atari compatível' para os clássicos ou um híbrido (digital/paddles) para o MSX.


Ressuscitando um TK85 (8)

Continuando com a montagem do teclado, hoje terminei de colocar os push-buttons na placa

Com todas as chaves montadas o teclado ganhou forma

Deu trabalho,pois são 40 chaves e para cada uma é necessário conferir a posição e deve se ter cuidado de instalar todas as chaves apontadas para a mesma direção para que todos os contatos normalmente abertos fiquem voltados para o mesmo lado.


Todas as chaves apontam para o mesmo lado
  Deu trabalho, mas foi necessário.


Em seguida foi a vez de fazer as ligações e para isso me orientei por uma figura da membrana do teclado do ZX Spectrum (que é igual à do TK-90 e do TK-85). Para facilitar a montagem eu espelhei a imagem e imprimi numa folha de papel.
Mapa para a fiação da matriz do teclado.

Dois conectores fêmea foram soldados na placa nas posições as mais alinhadas possível com os conectores para o teclado na placa do TK-85

O TK-85 ainda está com a placa do TEK
Depois disso começou a soldagem dos fios seguindo o mapa. Usei fio vermelho para as linhas (A8..A15) e fio verde para as colunas (D0..D4).
Fiação da matriz do teclado está pronta
 Essa também deu bastante trabalho.

Soldagem da matriz do teclado.
o próximo passo vai ser montar dois cabos com 5 e 8 vias e testar o funcionamento.






segunda-feira, 24 de agosto de 2015

Ressuscitando um TK85 (7)

Como o 9º encontro de usuários de TK está se aproximando, resolvi deixar meu TK-85 ressuscitado em forma para levá-lo ao encontro.

Comecei a trabalhar num gabinete para ele, baseado na caixa PB-900 da Patola. Esta caixa tem espaço suficiente para caber a placa do TK-85 (vide post anterior) e mais alguns extras como uma fonte de alimentação. r   

Caixa PB-900. Fonte: www.patola.com.br
Apesar da caixa ter uma face perfeita para se colocar um teclado, eu fiquei tentado a deixar instalado o protótipo do TeK e colocar um conector PS/2 na parte de trás do gabinete, mas numa visita a uma loja online de componente eletrônicos encontrei uma chave muito barata e resolvi comprar 40 para fazer um teclado.
Chavinha 8x8mm sem trava
Como a furação destas chaves é alinhada a uma grade de dimensões imperiais (polegadas) a escolha natural da placa para sustentar as chaves foi uma placa padrão com ilhas, de 10x30cm ou algo assim que tinha disponível em minha oficina.

A primeira idéia foi dispor as chaves numa grade de 10 x 4 mas os primeiros ensaios numa folha de papel não ficaram legais. Resolvi então deixar as teclas numa disposição mais natural e para isso imprimi uma cópia do teclado do TK-85 ajustada para as dimensões da placa da caixa PB-900.
Infelizmente não deu para usar uma cópia 1:1 do teclado do TK, pois as teclas dele estão dispostas numa grade em milímetros.

Teclado do TK-85 ajustado ao 'faceplate' da caixa PB-900
 O próximo passo foi encaixar as teclas na placa de forma que a posição batesse com a da folha impressa com as teclas do TK-85, tomando o cuidado de manter o mesmo espaçamento entre elas.

Posição das teclas ajustadas para o 'gabarito' do TK-85.
 Depois de encaixadas, eu fiz uma marca com caneta de retroprojetor do lado de baixo da placa, bem no centro da posição de cada chavinha.

Teclas na disposição final.
Depois disso recortei a placa para caber dentro do gabinete e conferi a altura das chaves em relação à tampa da caixa para ver se seria necessário utilizar algum espaçador. Por sorte não foi preciso pois a parte superior do corpo da se chave se alinha exatamente com a parte inferior da tampa.

Até parece que essa chavinha foi feita para esta caixa.
 Em seguida furei as laterais da placa de forma a se encaixarem nas furções da tampa e prendi com parafusos. Daí eu levei esse 'sanduíche' à furadeira de bancada e com uma broca de 100 eu marquei todos os 40 furos.
Furando a referência para as chavinhas.

Tampa frontal com a furação guia, alinhada pela placa de circuito impresso.
 Depois de fazer a furação das guias eu aumentei todos os furos utilizando uma broca de 5,5mm que se mostrou adequada para deixar passar o pescoço das chavinhas.

A folha de papel é para não riscar a face da tampa plástica

Tampa plástica com toda a furação.
 Depois de terminar a furação da caixa dei uma conferida para ver se tudo estava em ordem.
Conferindo o trabalho
 Em seguida comecei a soldar as chaves uma a uma, tomando o cuidado de deixar todas com a mesma orientação, uma vez que são chaves 2 polos e 2 posições

Primeira chave soldada

Segunda chave soldada

Quatro chaves soldadas.
Quando cheguei nas 8 chaves a bateria da máquina acabou e eu fui consultar o relógio. Já era tarde!! Amanhã tem mais!

domingo, 23 de agosto de 2015

Pinguino com alguns extras

 Montei uma placa de protótipos para PIC baseada no Pinguino 2550 porém com alguns extras
  • Header ICSP
  • Header RS232
  • 3 botões
  • 3 LEDs
  • Jumper para modo RUN
 O conector para ligações externas possui os pinos na ordem do Pinguino , ou seja I/O0 a I/O17 e conta com 2 pinos de GND e um pino de +5V. A placa tem espaço para colocar um regulador de 3,3V e o conector de saída tem um pino reservado para esta tensão.

Placa Pinguino com extras

"Macarrão" debaixo da placa
Pinagem da placa

A placa já está rodando com o bootloader do Pinguino.

IDE do Pinguino: Programa carregado com sucesso