Ir ao conteúdo
  • Cadastre-se

Código Morse no Proteus Isis


Posts recomendados

  • Membro VIP

Significa que você bolou a caixa-preta U1 e quer saber se falta coisa tanto dentro como fora dela?

 

Qual é o significado exato da sua pinagem?

 

morse-proteus.png.6dc935a00ca3f1200464c9eb92466655.png

 

Não consigo ler: L68TB?

 

@Pietra Ester , esse componente já estava pronto? Esse nome (código) não é encontrável pelo Google. Suponho que seja uma invenção sua.

 

@Pietra Ester , explique-nos o que você pensa ter projetado, pois não está claro.

Link para o comentário
Compartilhar em outros sites

@alexandre.mbm logicamente é um decodificador de binário, acredito que para morse não deve ser muito diferente. Pois o exercicio quer que ponto considere igual a 1 e traço igual a zero no codigo morse.

10 minutos atrás, Pietra Ester disse:

@alexandre.mbm logicamente é um decodificador de binário, acredito que para morse não deve ser muito diferente. Pois o exercicio quer que ponto considere igual a 1 e traço igual a zero no codigo morse.

0001 = 1 em binário

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
3 horas atrás, Pietra Ester disse:

logicamente é um decodificador de binário

 

Mas essa entrada de seu U1 é paralela. Você precisa antes capturar o código morse como um dado entrado de forma serial, através do pressionar rítimico de um push button.

 

@Pietra Ester , a parte da funcionalidade (desejada) em BCD de 7 segmentos eu entendi desde o início. O que segue como um mistério é a caixa-preta. Ela será uma criação sua ou U1 já é encontrável comercialmente?

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Pietra Ester está no caminho certo, o decodificador BCD lhe facilita a conversão. 

O que precisa é desenvolver um circuito que reconheça o que é ponto e o que é traço. 

Veja:

O ponto é um pulso curto, o traço é um pulso longo. 

O que precisa pra distinguir cada um é um temporizador e um circuito de flip-flop. 

Tocando a chave com um pulso curto a saída do flip-flop é levada a um diretamente e com um pulso longo o o temporizador entra em ação, trocando a entrada do flip-flop e levando a saída a zero. 

A troca das entradas deve ser feita com as portas lógicas. 

Cada entrada do decodificador BCD deve ter um flip-flop para armazenar cada dado enviado. 

Um outro conjunto de flip-flops ou mesmo um contador pronto deve fazer a função de deslocamento dos dígitos a cada aperto do botão. 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Pietra Ester ,

 

Acho que vocês estão se atrapalhando .....

 

Pelo enunciado, é para converter o código Morse apenas dos números ( sempre com 5 símbolos seja ponto ou traço  ) usando 0 para o traço e 1 para ponto, já considerando 5 entradas em paralelo, e decodificar para saída já em display de 7 segmentos.

 

Resumindo, um circuito que pegue uma tabela de 10 possíveis sinais na entrada, e decodifique em 7 saídas.

 

Um mapa de Karnaught e vai resultar em um circuitinho com portas lógica simples !

 

https://en.wikipedia.org/wiki/Karnaugh_map

 

Paulo

 

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

21 horas atrás, alexandre.mbm disse:

Não consigo ler: L68TB?

 

@Pietra Ester , esse componente já estava pronto? Esse nome (código) não é encontrável pelo Google. Suponho que seja uma invenção sua.

 

Alexandre, esse CI existe sim, é o CD4511 , no Proteus aparece só 4511 embaixo .....

Ele já é um decodificador de Binário 4 digitos  para display de 7 segmentos.

Usei muito ele fazem muitos anos, junto com o CD4029 em um circuito para usar nos rádios PX ....

 

Paulo

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

 

 

16 minutos atrás, MOR disse:

As entradas são os códigos numéricos com 5 unidades. Depois vem o mapa de Karnaught e as saídas são os códigos dos dígitos.

Os códigos Morse são

https://brasilescola.uol.com.br/geografia/codigo-morse.htm

MOR_AL

Sim, o enunciado quer apenas que exiba os numeros no display de 7 segmentos.

9 horas atrás, Renato.88 disse:

@Pietra Ester está no caminho certo, o decodificador BCD lhe facilita a conversão. 

O que precisa é desenvolver um circuito que reconheça o que é ponto e o que é traço. 

Veja:

O ponto é um pulso curto, o traço é um pulso longo. 

O que precisa pra distinguir cada um é um temporizador e um circuito de flip-flop. 

Tocando a chave com um pulso curto a saída do flip-flop é levada a um diretamente e com um pulso longo o o temporizador entra em ação, trocando a entrada do flip-flop e levando a saída a zero. 

A troca das entradas deve ser feita com as portas lógicas. 

Cada entrada do decodificador BCD deve ter um flip-flop para armazenar cada dado enviado. 

Um outro conjunto de flip-flops ou mesmo um contador pronto deve fazer a função de deslocamento dos dígitos a cada aperto do botão. 

Sim, vou ter que usar flip flops JK como o professor disse, mas não sei como encaixar nesse circuito.

Link para o comentário
Compartilhar em outros sites

Um pitaco, baseado em que números, no código morse, tem sempre 5 caracteres. Se não tiver 5 caracteres, não é número. É como se fossem bytes de apenas 5 bits... só que binário tem apenas 2 estados e nesse caso precisamos de 3 estados: ponto, traço e silêncio.

 

Bom... talvez tenha que ter, antes de tudo um padrão: quanto tempo usa um traço, um ponto e quanto tempo pode ser considerado silêncio.

 

Digamos que traço dure 2 segundos, ponto dure um segundo e, se passar 3 segundos sem pulso algum, será considerado espaço.

 

Por exemplo, o sistema detecta um pulso de 1 segundo. Trata-se de um ponto. Se se passarem 3 segundos sem nenhum outro pulso, tchau, despreza o ponto porque ponto sem nada atrás não é número nem letra... não é nada.

 

Agora, se antes desses 3 segundos houver mais um pulso, e se esse pulso durar 2 segundos, temos um ponto e um traço. E se nesse momento tivermos 3 segundos sem pulso, teremos a letra "A". O que não nos interessa, porque "A" é letra e não número.

 

E assim por diante.

 

Algo que me parece essencial é

 

3 horas atrás, aphawk disse:

uma tabela

 

E também considerar se = IF, e se = AND IF.

 

Uma pergunta, @Pietra Ester: será que

 

1 hora atrás, Pietra Ester disse:

flip flops JK

 

tem IF, tem AND, tem OR, NOR, XOR etc.? E para contar tempo, tem isso em flip flops JK?

---

 

Ops! Agora é que vi: "ponto é 1, traço é zero", diz no enunciado.

 

Assim dá para usar binário, é só cortar o tal byte de 5 bits no 5º bit.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Pietra Ester

Não vi no tópico, se as entradas são consideradas seriais (no tempo) ou já considera os 5 bits em paralelo. 

Com entradas seriais fica bem mais difícil.

Com entradas em paralelo, basta apenas um mapa de Karnaught para cada seguimento do display.

A outra opção, mais simples, porém com mais um integrado é usar apenas 4 mapas de Karnaught  e entrar no 4511.

MOR_AL

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

@rmlazzari58 sim, o flip flop jk é um armazenador de bits então acho que se encaixa bem nesse exercicio.

49 minutos atrás, MOR disse:

@Pietra Ester

A outra opção, mais simples, porém com mais um integrado é usar apenas 4 mapas de Karnaught  e entrar no 4511.

MOR_AL

sim, acho que esse é o caminho.

Link para o comentário
Compartilhar em outros sites

50 minutos atrás, Pietra Ester disse:

Tem que ter 5 entradas para saida do display de 7 segmentos?

Depende do que o exercício pede.... 

Ao que entendi foi pedido pra usar o código Morse original, sem conversão direta para binário. 

Sendo assim não pode usar o 4511, pois a codificação dele é diferente com apenas 4 bits. 

Para fazer a conversão do código Morse original terá que fazer seu próprio decodificador. 

Mas antes seria melhor perguntar ao seu professor para ter certeza do que foi pedido. 

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@Pietra Ester , um sistema de dois ou três módulos.

 

No primeiro caminho, SIPO com 5 saídas que seriam entradas para um substituto ao 4511, criado por você, que acenderia diretamente os 7 segmentos do display.

 

No segundo caminho, SIPO com as mesmas 5 saídas, dessa vez sendo entradas para 4 mapas de Karnaught, que comandarão em binário o 4511, que por sua vez se responsibilizará pelo display.

 

@MORjá estava nos falando disso na mensagem #13.

 

Exemplo

 

morse-dcba.png.07a46df6e063f4b216f0af3898d9f7c6.png

 

Sem mapa, apenas com álgebra:

 

D = morSE + morsE
D = morE (S + s)
D = morE (1)
D = morE

 

SIPO: Serial In Parallel Out

 

Para fazê-lo, você pode usar o 74HC595. Ele tem 8 saídas ao invés das quatro que são exemplificadas abaixo:

 

serial-in-parallel-out-shift-register-details.jpg.672fd0604cb13fb0cdd789c179ea2964.jpg

 

Os bits de comando deverão se originar num circuito que distinguirá tempos, pressionamentos e clock.

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

De minha parte (visão prática) prevejo que você vai precisar de um filtro "passa pulso largo" e "passa pulso estreito" (inventei isso agora) algo como

images?q=tbn:ANd9GcS4vrGTClSG8rEh3RfCEAt o largo

Dica: use a saída do filtro na entrada SI do circuito do amigo @alexandre.mbm acima e a transição do pulso de 0 pra 1 como CLK direto da chave ou botão. O que vai ocorrer: se for traço (pulso longo), ao transicionar de 0 pra 1, o sinal SI vai estar em 1 (coloque um inversor  a+ pra 0) pois o C ainda não carregou por R1 e R2.

Pro pulso estreito deixo pra você pensar 1 pouco ok? O princípio é o mesmo mas ao contrário 🤪

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

30 minutos atrás, .if disse:

De minha parte (visão prática) prevejo que você vai precisar de um filtro "passa pulso largo" e "passa pulso estreito" (inventei isso agora)

Lá em cima, quando sugeri um tal temporizador já pensei nesse circuito. 

Já utilizei um desses uns 15 anos atrás ao fazer um sistema pra usar um mesmo botão pra duas funções. Tudo feito com portas lógicas, sem nenhum micro controlador. 

 

Sobre esta conversão:

morse-dcba.png

Basta usar as portas lógicas tipo OU e AND, é tão simples que não precisa de mapas de Karnaugh ou expressão algébrica, analisando os números. 

Olhando a tabela do lado esquerdo pela quantidade de "1" na horizontal escolhemos quantas entradas a OR deve ter. 

Do outro lado teremos 4 portas NAND, olhando na vertical descobrimos quantas entradas devem ter. 

 

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
2 horas atrás, Renato.88 disse:

já pensei nesse circuito. 

Pra pensar.. você pensou e eu mostrei 😜 .. tmj

 

2 horas atrás, Renato.88 disse:

tão simples que não precisa de mapas de Karnaugh

De fato... nem lembro (e nem quero lembrar +) desta pôla. 😁

  • Haha 1
Link para o comentário
Compartilhar em outros sites

Sobre a funcionalidade (IHM), pensando num circuito que tenha 5 armazenadores e um ponteiro para indicar qual armazenador deve ser usado, imagino o seguinte:

 

Ligou o circuito, ele fica esperando um toque.

 

Deu o primeiro toque, ele verifica se foi longo ou curto, armazena esse dado no 1o. armazenador, muda o ponteiro para o 2o. armazenador e volta para o estado de espera.

 

Deu o segundo toque, ele faz a mesma verificação, o mesmo armazenamento e também volta para a espera.

 

Isso até o 5o. toque. Deu o 5o. toque, o circuito converte esses 5 toques em um número, zera o ponteiro e volta a esperar a próxima string de 5 toques.

 

Se fosse na vida real, precisaria fazer alguma consistência. Por exemplo, a sequência "10101" seria desprezada já no 3o. toque porque não tem nenhuma sequência que, tendo tido um toque longo e, em seguida, um toque curto, volte a ter toques longos.

 

(...)

 

Gozado... 5 toques vezes 2 dá o número de caracteres (10, de 0 a 9). 2 é binário, tanto quanto os toques (longo ou curto). Será que dá prá fazer algo com o fato de 2 ser binário nesse sistema? Ao mesmo tempo, são possíveis 10 saídas diferentes entre si para os 7 pinos do display...

 

Será que é possível ir modificando a matriz dessas 10 saída na medida em que os toques vão sendo dados? Ou seja, em vez de processar em batch (bateu o 5o. toque, mostra o número), será que dá para fazer em tempo real?

 

Putz... programador não é profissão, é vício, rs...

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
4 horas atrás, Renato.88 disse:

Basta usar as portas lógicas tipo OU e AND, é tão simples que não precisa de mapas de Karnaugh ou expressão algébrica, analisando os números.

 

Além de portas NOT. Ligações desnecessárias. É um bocado de fio... não é a toa que essas teorias de simplicação existem.

 

Melhor tentar simplificar, ou até ainda passar tudo para NAND.

 

@rmlazzari58 , li que numa comunicação morse real considera-se um passo de tantas palavras por minuto, mas não entendo como. Nem sei ao certo o que são essas tais "palavras". Se forem as do idioma falado, existe palavra de tudo quanto é tamanho. Os conversores em texto usam um barra para separá-las.

Link para o comentário
Compartilhar em outros sites

46 minutos atrás, alexandre.mbm disse:

@rmlazzari58 , li que numa comunicação morse real considera-se um passo de tantas palavras por minuto, mas não entendo como. Nem sei ao certo o que são essas tais "palavras". Se forem as do idioma falado, existe palavra de tudo quanto é tamanho. Os conversores em texto usam um barra para separá-las.

 

É bem mais complicado do que isso.... Na comunicação real existe uma temporização tanto entre caracteres como de palavras, e ambas são diferentes, e também a velocidade , na forma de palavras por minuto, que pode variar desde algo bem lento como algo um pouco rápido, ou seja, o importante é sempre respeitar a temporização entre os caracteres e palavras, e não a velocidade absoluta da comunicação !

 

Então um circuito deveria respeitar isso, abrindo um tipo de janela de tempo no qual o caractere digitado seria aceito ou rejeitado, baseado sempre na DURAÇÃO DE TEMPO de um simples ponto !

 

Mas continuo acreditando que esse exercício não precisa fazer a conversão de caracteres seriais para paralelo... nunca vi um projeto real que fizesse isso com componentes discretos, sempre são usados microcontroladores para isso.

 

Paulo

 

Link para o comentário
Compartilhar em outros sites

@.if ,

 

Estás brincando né ??? Já sei que você detesta Karnaugh mas ...... tem de usar !

 

Um sistema onde entram 5 bits paralelos , e saem 7 bits paralelos é um exemplo perfeito.

 

Mapas de Karnaugh na tabela de entrada e tabela de saída e pronto, assim evita até o CI decodificador para 7 segmentos. É exatamente o que está proposto no enunciado do problema ! São 7 mapas nesta versão, ou se resolver usar um decodificador de 7 segmentos, são apenas 4 mapas.

 

5 bits são 32 possíveis combinações. Basta deixar o display apagado nas 22 combinações que não correspondem aos números, e decodificar corretamente as 10 restantes.

 

Vai ficar um monte de portas, mas é fácil colocar elas no Proteus e ver funcionar.

 

Paulo

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!