terça-feira, 30 de janeiro de 2007

Reta final do projeto de "hardware"

O Hardware do protótipo 2 está em fase final de testes. Falta ainda testar duas modificações, relacionada aos sinais "RCK" do 74HCT595 e "LD165" do 74HCT165, pois há um pequeno erro de conceito que passou batido durante o projeto do prototipo2.

Eu criei sinais pra desabilitar o "reset" do gerador automático de clock nos eventos de leitura e de escrita na porta SPI, mas me esqueci de que os sinais que acionam o 74HCT595 e o 74HCT165 ficaram DEPOIS do circuito de desabilitação, ou seja depois dos flip-flops sincronizadores. Assim, não é possível nem ler o byte que foi transferido anteriormente, nem carregar um novo byte para ser transferido depois.
Quanto ao sinal "LD165", que vai para o 74HC165, é fácil de resolver, pois basta conectar este sinao à linha /WR0, ou seja, antes do flip-flop. Já o sinal "RCK595" temque ser tirado de um outro ponto, pois este é invertido em relação ao sinal /RD0. Assim este sinal vai ser retirado do evento do STOP do gerador de clock automatico (pino 8 do contador 393).

Com estas configurações vai ser possível o funcionamento como se fosse um "hardware" SPI tradicional, ou seja

OUT (porta dados), valor
serialização automática do valor
e em seguida IN (porta de dados)

O circuito atual pode ser visto abaixo, já com as modificações incorporadas.


clique na imagem para ampliar

4 comentários:

Luciano disse...

Daniel! Não pergunta como e cheguei aqui no seu blog, mas a história é longa! :)

Uma pergunta que não quer calar, como um blog tão interessante com um projeto mais interessante ainda não tem um comentário se quer de visitantes?

Meu caro, meus parabéns!

Luciano/msxpró :)

Danjovic disse...

Salve Luciano. Muito obrigado...

O Blog está servindo por enquanto mais como um diário do projeto. Pra não gerar expectativas, eu decidi não divulgar enquanto não tivesse algo funcional, pois nem sempre a gente consegue terminar todas as coisas que começa.

Mas o trabalho continua.

[]s

Alexandre Souza, o Tabajara disse...

Ei Danjovic, parabens pelo seu trabalho!!! Mas uma curiosidade: Porque voce nao usa um microcontrolador ao inves desse batalhao de ttl?

A proposito: Voce faz essas plaquinhas face-simples no Eagle? Usa roteamento automatico ou manual? Quer dar umas dicas pra colocar la no taba labs? :oD

Danjovic disse...

Salve Alexandre.

Eu pensei de início em usar um microcontrolador, mas para sincronizá-lo com um Z80 a 8MHz, eu precisaria de responder em apenas 312nS, ou então inserir "wait states". Como um dos objetivos é transferir dados à máxima velocidade possível do Z80, eu preferi deixar o microcontrolador de lado por enquanto. Além disso os chips usados são fáceis de se encontrar e são baratos.

Eu roteio manualmente as placas, usando o Eagle mesmo, mas se o projeto é mais complexo, eu costumo fazer antes alguns rascunhos em papel, pra decidir a melhor localização dos componentes.