fala galera do ldg

ó eu aqui novamente procurando ajuda kkkk

é o seguinte estou precisando criar um sistema que receba  um sinal de um controle remoto daqueles usados em televisores ou mesmo um controle universal

eu tava analisando e percebi que poderia receber estes sinais atraves do timer0,1 do pic mais anda não tenho ideia de como criar este artificio no codigo eu sei que posso habilitar a interrupção para receber este sinal mais o que acontece é que assim que o primeiro pulso bater no pino eu ja travo a execução do programa e consequentemente paro o restante do recebmento do trem de pulsos gerado pelo controle o que eu posso fazer sera que se eu usar o canal seial do pic eu consigo receber todos os sinais?

desde ja agradeço 

Exibições: 5434

Responder esta

Respostas a este tópico

Ola danilo, vc pode fazer uma varredura em uma entrada qualquer do pic, ou ativar a interrupção de mudança de estado de um PORT, então e so analizar o trem de pulso e protocolo que é enviado, ja fiz um circuito com 12f629 que liga e desliga uma lampada com uma tecla de controle remoto de receptor de parabolica, usei uma tecla que é usada para ajuste do receptor. no circuito tem uma chave que é para programar a tecla que quizer.  Eu usei a varredura da PORT do PIC, ela tenta achar a condição de Start bit em um PORT, enquanto nao chega o Start ele desvia o programa para o inicio, quando o programa acusa o Start ele grava os "0" e "1" que chegam em 03 Variaveis. Fiz ele comparar tres amostras para ter certeza que é a mesma tecla que esta enviando o codigo.

  Vc so tem que saber em qual protocolo o controle transmite para poder decodificar.  Abraço

 

como seria esta rotina?

pois ja causei algumas lesões no celebro tentando achar uma resposta 

quanto ao protocolo estive pensando no sirc  se eu nao me engano e um dos mais usados o problema

e que antes de mandar o trem de pulsos o controle envia alguns sinais de identificaçao e este e o maior 

problema do meu ponto de vista

boa noite Renato

 

 

vo dar uma olhada neste conteudo pra ter melhor noção mais acredito que o ponto mais critico seja  a rotina de recepção destes sinais no software
 

 

Att. Danilo s cabral

Ola Danilo,


    Voce ja tem o controle remoto, Qual seria?  No projeto que fiz eu usei como receptor o sensor TSOP de um aparelho de parabolica de sucata que tinha aqui em maos pois ja sai o sinal do controle totalmente filtrado e em niveis TTL.. Tenho a rotina de decodificação de um protocolo SIRC em assembly, pode te dar uma ideia de como funciona:

 

;     trem pulso protocolo sirc
;nivel  1    |   0    |    1    |    0   |    1   |    0   |    1   |    0   | 
;  _-----------_____-----------_____----------_____----------_____----
;  |  2.4ms |600us|1.2ms|600us|600us|600us|1.2ms|600us|
;  |START  |        |      BIT 1     |      BIT 0     |  BIT 1         |

    btfsc    input
    call      rx_on

rx_on   
    movlw    .25                  ;
    movwf    A0                  ;
    call        delay_100us    ;
    btfss      input               ; Start Bit 2.4 ms
    return                           ; se nivel baixar ante do tempo
    decfsz    A0,f                ; sai rotina
    goto       $-4                  ;

;;;;;;;;;;;;;;;;;
    movlw    .24         ;quantidade de bits de leitura
    movwf    count_rx

    btfsc    input        ;espera nivel baixar para continuar
    goto    $-1
    call    delay_100us

 

    clrf     RxBuf

    clrf     RxBuf1
    clrf     RxBuf2


rx_loop
    btfss    input
    goto    $-1                ;espera subir nivel par ler bit
   
    call    delay_600us    ;ajuste tempo para saber se é BIT 0 ou 1

    bcf        STATUS,C    ;se depois do tempo baixar nivel é 0
    btfsc    input              ;se nivel for alto é 1
    bsf        STATUS,C    ;

    rlf        RxBuf2,1      ;  Salvando bits de leitura
    rlf        RxBuf1,1      ;
    rlf        RxBuf,1        ;

    btfsc    input            ; espera baixar nivel se ja nao estiver
    goto    $-1                ; para ler proximo bit

    decfsz    count_rx,1
    goto    rx_loop

    return

bomdia jose rubens o protocolo que irei usar no momento é rc5 da philips

eu criei um codigo que acredito que vai funcionar bem tambem me basiei na  contagem do tempo

agora so tenho que monta todo o circuito e ver se funciona futuramente irei implementar o protocolo sirc

 Bom dia Danilo, depois de testar posta ai os resultados para a gente aprender um pouco tbm. O protocolo rc5 ainda nao tentei nada, so dei uma olhada de como e codificado.

 

   Abraço.

olá boa tarde a muito tempo estou querendo fazer um receptor de ir com o arduino para acionar uma ou dois equipamentos vc pode me dar algunha ideia de como inicia esse projeto ?? desde ja agradeço

boa noite jadson

cara eu não manjo nada de arduino

mas se for com pic ai eu posso te ajudar bom pra começar vc tem que definir qual controle remoto vc vai usar eu sugiro ultilizar um da philips ou cce pos ambos usam o protocolo rc5  ai vc tem que ter um semsor tsop

vc vai ter que dar uma olhada no tsop de 37khz pois esta é a portadora que o rc5 ultiliza

o microcontrolador pode ser o pic 16f84a ele custa ums 10 reais ou entam o 16f628a que igual ao outro pino a pino porem tem mais recursos  agora se vc nao trabalha com pic ai fica mais dificil eu escrevi todo o meu codigo em assembler (é que eu gosto das coisas mais dificil)   

teste de sinais do sensor de infre vermelho

http://www.youtube.com/watch?v=Nn3GUoH7JD4

galera hoje montei um hard experimentel mais nun funciono de prima como esperado 

não acredito que seja o codigo mais sim o sensor de ir pois quando aciono a tecla do controle ele não esta mudando o nivel logico de acordo com a medição do multimetro e agora o que eu faço não tenho como saber o funcionamento correto deste sensor porque o mesmo não tem nenhuma identificação e nao consigo achar o datasheet acredito que estou com um baita problema nas mãos rsrsrs

vove o que eu faço acho que vou ter que comprar um tsop mesmo

ontem a noite la pelas 22:00 irei o sensor da placa para fazer uma analise e fiquei mais doido ainda rsrs

verifiquei a placa que ele estava instalado para verificar os valores de tensão e era mais ou menos assim so que a saida

so fica em zero volts mesmo quando eu estimulo ele com co controle remoto sera que eu estou fazendo alguma coisa errada? se alguem tiver alguma ideia eu ficaria grato!!

 

inicialmente eu coloquei leds na saida so pra verificar a logica do programa mas sera reles que colocarei nas saidas do pic
e depois irei adaptar o codigo pro pic 16f628a pra poder controlar o pwm dele e controlar um dimmer resistivo agora estes resistor e este capacitor eu num sabia mas tarde eu vou colocar eles no sensor e ver se funciona ai eu coloco os resultados aqui vallew

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2019   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço