E no feriado que passou além de assistir toda a primeira temporada de "Mr. Robot" (série sobre um maluco que insere uma Raspberry Pi num controle de temperatura), tive uma ideia para usar a EPROM PLD, mas que não foi muito pra frente. Geralmente eu não escrevo sobre projetos que não deram (muito) certo, mas como esse tem uma característica de funcionar no simulador e não na vida real resolvi publicar.
A ideia era fazer um contador para display de sete segmentos com apenas uma EPROM. Lembrando que é um contador e não um decodificador com EPROM. O contador teria uma entrada de clock e iria contar um digito a mais no display a cada pulso na entrada. Então lá fui eu tirar a poeira do velho apagador de EPROM e escolher algumas EPROMs velhas nas gavetas (2716 e 2732).
Enquanto ouvia barulho do timer eletromecânico do apagador a funcionar por uma hora, fui editando uma planilha com os endereços e dados da EPROM. Como deu apenas 512 bytes editei o arquivo final direto no editor Hexadecimal:
Gerei o .bin e "rabisquei" o circuito abaixo no Proteus e carreguei o binário na EPROM virtual. E tudo funcionou perfeitamente.
Não acreditei de imediato, afinal tem o problema dos tempos diferentes em cada saída. Mesmo com alguns nanosegundos de diferença o circuito não era pra funcionar. E, claro, não funcionou. Montei no protoboard e ele até começa corretamente no zero, mas começa a oscilar. Algumas vezes ele parou no número "sete" e no "oito", mas oscilava no próximo pulso de clock.
No circuito do esquema e da foto eu coloquei uma chave para fazer o clock. Como não funcionou, desconfiei que podia ser o bouncing da chave, por isso montei um oscilador com um 555 em 1Hz para o clock.
Então é isso aí, caso eu tenha uma ideia de como fazer isso funcionar e conseguir eu atualizo isso aqui. Depois coloco os arquivos do Proteus e o .bin no Github pra quem quiser testar.
Não sei se estou falando besteira (ou se isto estraga a graça de usar só uma EProm), mas que tal um latch nos endereços? Por exemplo, um 74HC273.
ResponderExcluirHm, até pode dar certo. Mas a ideia aqui é usar apenas uma EPROM no contador, sem nenhum outro CI de apoio...
ExcluirNao funciona, voce precisa de um latch na saida. Eu me lembro que estudei isso no passado (pra minha campainha com som sampleado em EPROM). Mas nao me recordo nesse momento o porque do problema. Quando lembrar eu te falo.
ResponderExcluirPois é, nem lembrava desse post... Preciso dar uma reconferida e montar alguma coisa, algum dia. ;-)
ExcluirGostaria de tentar aki, poderia compartilhar o codigo? vlw. skma@oi.com.br Alex.
ResponderExcluir