CHAMA_ATENDENTE – PAINEL COM LEDS PARA SOLICITAÇÃO DE ATENDIMENTOS

Muitas vezes, necessitamos chamar uma pessoa de sua sala para prestar algum tipo de serviço em outras salas. Pode-se usar interfones, telefones e radios comunicadores. Alguns estão adaptando ‘campainhas sem fio’ para funcionar como aviso. Realmente, vai da criatividade!!! Mas, seria possivel fazer um sistema de chamada sem fio com simples controles remotos comerciais (chaveirinhos)? Veja esta idéia….

Basicamente, a idéia do projeto é usar 4 leds para indicar quem está necessitando de atendimento. Veja a sugestão visual possivel, abaixo:

Quando uma pessoa necessita de ajuda/atendimento, ela aperta o seu controle remoto (previamente ‘aprendido’). Isto fará que um led correspondente acenda no aparelho na sala do prestador de ajuda/atendimento. Uma breve sinalização sonora será ouvida para chamar a atenção nas mudanças dos leds.
Após realizar o atendimento/ajuda, deverá ser apagado o led desejado, por se apertar o botão do lado do led.
Neste projeto foi usado um pequeno microcontrolador Pic 12f629. Caso necessite de mais leds, poderá migrar para um microcontrolador com maior quantidade de portas, adaptando o arquivo asm para a necessidade.

Agora, veja o esquema abaixo:

No pino 4 temos a entrada de sinal provindo do receptor de rf de 433mhz. O receptor é do tipo miniatura, facilmente encontrado na internet e no comércio. Pelo pino 2, com função multiplexada, obtemos a função ‘botão learn’ para entrar com aprendizado e apagamento de controles, a função ‘led learn’ que indica quando foi aprendido e pisca após apagamento completo da Eeprom e finalmente a função ‘toque sonoro’, acionando um pequeno falante piezolétrico. Este ‘som’ chama a atenção a mudança no painel de leds. Os pinos 3,5,6,7 são as saidas dos leds e também multiplexado com função de ‘botões’ de desligamento. Os resistores r1,r4,r7 e r10 são usados para aumentar o nivel a vcc, pois os leds apresentam queda de tensão de 1,8 a 2,4 volts, sendo que, sem eles, em alguns casos, poderá não funcionar corretamente.
A fonte de alimentação poderá ser feita via fonte externa com regulador de 5 volts do tipo 7805, ou por uma bateria de 9 volts, também com o regulador de 5 volts, ou ainda, uma fonte de carga de bateria de celular, dos modernos (tipo ‘usb’) que já fornece direto os 5 volts necessários.
Este projeto é apenas didático, fornecendo sugestão para os hobistas realizarem seus objetivos. Foi montado apenas em protoboard, sujeito a bugs ainda não identificados.

Segue abaixo o arquivo ASM (para 12f629):

CHAMA_ATENDENTE_ASM

Segue abaixo o arquivo HEX (para 12f629):

CHAMA_ATENDENTE_HEX

Segue abaixo o arquivo ASM (para 12f675):

CHAMA_ATENDENTE_675_ASM

Segue abaixo o arquivo HEX (para 12f675):

CHAMA_ATENDENTE_675_HEX

datasheet Pic12f629

Curiosidades:
Universo cheio de surpresas
Universo – obra do acaso?
Nosso inigualável sistema solar
Mapeamento do céu
Qual a origem do universo e a vida?

Outros assuntos:
Quatro dicas para lidar com problemas financeiros e dívidas
Como lidar com sucesso com os sogros
Como reagir a um assédio sexual
Como parar de adiar as coisas
Entrevista com um bioquímico

Até o próximo artigo!!!

53 comments on “CHAMA_ATENDENTE – PAINEL COM LEDS PARA SOLICITAÇÃO DE ATENDIMENTOS

  1. lario amei o desafio não sei se foi uma pegadinha,mais deu certo a compilaçao,agora aparece o valor 3480 no codigo para gravar,mas de qualquer forma vou aprender presentiar rsrsr muito obrigado mesmo, que o criador do universo continue lhe inspirando a dar o seu melhor em beneficio de outros.

  2. lario bom dia, rsrsrsr me lembro que certa ocasião voce me disse que os erros que o compilador produz são avisos que eles tentam nos transmitir como amigos,achei muito animador de sua parte nos inculcar esta ideia rsrsrsr porem os erros que são apresentados neste codigo do chama, aparentam ser desafiador pois dar erro 112 e 113 missing operator,acrescentei estes valores antes do end
    org 0x3ff
    retlw 0×80
    estou tentando fazer uma boa apresentação para ganhar a amizade deste erros do compilador e ele não está querendo ser meu amigo não, voce poderá me dar uma dica?rsrsrsrr

    1. Olá José! rsrsrsrs Que tal comprar um ‘presentinho ‘ para ele? rsrsrsrs. O erro indica que foi esquecido algum operador no asm. Experimente clicar na linha do erro: Por exemplo, gerei um erro num programa e ficou assim:

      Release build of project `C:\Users\Renan\Downloads\freq_cw1_ver\tt2.disposable_mcp’ started.
      Language tool versions: MPASMWIN.exe v5.43, mplink.exe v4.41, mplib.exe v4.41
      Fri Dec 13 09:24:17 2013
      ———————————————————————-
      Clean: Deleting intermediary and output files.
      Clean: Deleted file “C:\Users\Renan\Downloads\freq_cw1_ver\tt2.mcs”.
      Clean: Done.
      Executing: “C:\Program Files (x86)\Microchip\MPASM Suite\MPASMWIN.exe” /q /p12F675 “tt2.asm” /l”tt2.lst” /e”tt2.err”
      Message[301] C:\PROGRAM FILES (X86)\MICROCHIP\MPASM SUITE\P12F629.INC 33 : MESSAGE: (Processor-header file mismatch. Verify selected processor.)
      Error[113] C:\USERS\RENAN\DOWNLOADS\FREQ_CW1_VER\TT2.ASM 682 : Symbol not previously defined (ox3ff)
      Error[113] C:\USERS\RENAN\DOWNLOADS\FREQ_CW1_VER\TT2.ASM 682 : Symbol not previously defined (ox3ff)
      Error[118] C:\USERS\RENAN\DOWNLOADS\FREQ_CW1_VER\TT2.ASM 683 : Overwriting previous address contents (0000)
      Error[118] C:\USERS\RENAN\DOWNLOADS\FREQ_CW1_VER\TT2.ASM 683 : Overwriting previous address contents (0000)
      Halting build on first failure as requested.
      ———————————————————————-
      Release build of project `C:\Users\Renan\Downloads\freq_cw1_ver\tt2.disposable_mcp’ failed.
      Language tool versions: MPASMWIN.exe v5.43, mplink.exe v4.41, mplib.exe v4.41
      Fri Dec 13 09:24:18 2013
      ———————————————————————-
      BUILD FAILED

      Coloquei a letra ‘o’ no lugar do ‘0’ (zero).
      Clicando na primeira linha irá direcionar o programa para o erro com uma pequena seta azul a esquerda do erro.
      Ai você vai ‘travar amizade’ convencendo o erro a sair por analizar o que está errado. ex. falta virgula, digitou errado, esqueceu de colocar ‘;’ antes do comentário, etc.

      Quando copiamos e colamos arquivos , podem ser perdidos determinados caracteres devido ao padrão do arquivo (Word,bloco de notas,etc).
      Confira sempre para certificar de não ter acontecido este erro. Também quando vamos deletar determinado item, as vezes o cursor marca a linha de cima ou de baixo, apagando o que não devia.

      Experimente localizar então a linha do erro e acertar.
      Cláudio

  3. lario bom dia, seria muito incómodo acrescentar(#define PERDI_BYTE_CALIBRACAO)neste chama_atendente) pois ja tentei gravar tanto a versão pic 675 e629 com pic novo e não aparece na flash a calibraçáo tipo 34xx.? ou estou vacilando demais nesta gravação?pois ja notei que quando não aparece certo valor nesta area da memoria o circuito torna se inoperante ficarei no aguardo de uma resposta se possivel abraço.

    1. Olá José! Quando o programa é compilado em compilador ‘c’ ou quando feito em assembly usando as linhas de código ” CALL 0x3FF ; Movwf OSCCAL ” com certeza não funcionará se não existir o byte de calibração. Mas nem todos os programas tem estas linhas de código, e acho que é o caso deste asm referido por você. Verifique sua montagem, se está de acordo com o esquema elétrico, se você fez a programação dos controles corretamente, se escolheu o programa correto, se seu pic está ok. Nos programas que necessitam do byte de calibração para funcionar, se você leu com o programador que realmente não existe (foi apagado), então, no final do programa ASM , antes do ‘ end’, escreva o seguinte :
      org 0x3ff
      retlw 0x80

      Depois recompile o asm e obtenha o novo hex.
      Com isto, você coloca um valor provisório, até que possa calibrar o pic em ocasião futura.
      Claudio

Comments are closed.

Back To Top