PIC: Módulo RF
Neste tutorial mostrarei como utilizar o Módulo Transmissor RF434Mhz e o Módulo Receptor RF434Mhz.
Estes módulos são simples de usarem, pequenos, baratos e nos permitem realizar controle através da Rádio Frequência . Utilizam modulação do tipo ASK, podem ser utilizados em alarmes para automóveis, sistemas de segurança, telefones sem fio, controle de robôs, acionamentos de buzzers, etc.
Uma das formas de se trabalhar com ele, é utilizar a comunicação serial RS232. O Baud Rate( Taxa de transmissão ) utilizado foi de 1200bps.
A transmissão é bem simples. São enviado 4 bytes: Start, Comando, Valor, Checksum.
A recepção também é simples. No caso foi utilizado a interrupção por Recepção de Dados da UART.
DOWNLOAD
Módulo RF : Modulo_RF.rar
DOWNLOAD
Módulo RF : Modulo_RF.rar
BIBLIOTECA
MikroC PRO PIC
void RF_Init() { UART1_Init(1200); Delay_ms(100); } void RF_Receive_Init() { RCIE_bit = 1; GIE_Bit = 1; PEIE_Bit = 1; } void RF_Send(char comando, char valor) { char checksum = ~(char)(comando + valor); UART1_Write(0xFF); //Start delay_ms(10); UART1_Write(comando); //Comando delay_ms(10); UART1_Write(valor); //Valor delay_ms(10); UART1_Write(checksum); //Checksum delay_ms(10); } char started, count; void RF_Read(char *Cmd, char *Val, char *Ok) { char buffer; char checksum_byte; *Ok = 0; if(PIR1.RCIF) { buffer = Uart1_Read(); if(started) { count++; if(count == 1) { *Cmd = buffer; } if(count == 2) { *Val = buffer; } if(count == 3) { checksum_byte = buffer; started = 0; if(checksum_byte == ~(char)(*Cmd + *Val)) { *Ok = 1; } } } else { if(buffer == 0xFF) { started = 1; count = 0; } } } }
EXEMPLO: Transmissor
//Adicione aqui o código da Biblioteca void main() { ADCON1 = 0x0F; //Desativa as portas analógicas(PORTA e PORTB) TRISB = 3; RF_Init(); while(1) { if(PORTB.F0 == 1) { RF_Send( 'A', 1 ); } else if(PORTB.F1 == 1) { RF_Send( 'A', 0 ); } } }
EXEMPLO: Receptor
//Adicione aqui o código da Biblioteca char comando, valor, ok; void Interrupt() { RF_Read(&comando, &valor, &ok); if(ok == 1) { if(comando == 'A') { PORTB = valor; } } } void main() { ADCON1 = 0x0F; //Desativa as portas analógicas(PORTA e PORTB) RF_Init(); RF_Receive_Init(); TRISB = 0; PORTB = 0; while(1); }
VIDEO:
Cara assim, eu tenho que fazer um projeto, porém o PIC que estou utilizando é o 16F628A, até encontrei na internet um projeto com ele, com esses mesmo componentes, porém o código está em basic e não sei programar, queria saber se tem como adaptar este código que tu utilizastes para o 16F628A?
ResponderExcluirPode utilizar este mesmo código para o PIC16F628A!!
ExcluirPic: Módulo Rf - Microcontrolandos >>>>> Download Now
Excluir>>>>> Download Full
Pic: Módulo Rf - Microcontrolandos >>>>> Download LINK
>>>>> Download Now
Pic: Módulo Rf - Microcontrolandos >>>>> Download Full
>>>>> Download LINK D4
Aonde encontro os componentes de rf pro proteus?
ResponderExcluirvocê encontra diversos componentes eletrônicos em www.soldafria.com.br compra via internet com total segurança e recebe em sua casa, os preços estão em conta, vale a pena mesmo. Só estou dando essa dica por que sempre compro componentes, neste site. É de confiança.
Excluirboa tarde Tiago você possui exemplos de transmissão com sensores infravermelhos desde já agradecido ....
ResponderExcluirNao. Mas gostei da ideia, talvez eu faço um projeto sobre isto. Abraços.
Excluiresqueci usando pic
ResponderExcluirBoa tarde! Amigo poderia me dizer se eu conseguiria usar este msm codigo fonte para rodar no mikroc 8.2? esta dando erro ao compilar! obrigado
ResponderExcluirTalvez compile, mas depende de qual pic vc está utilizando.
ExcluirCara nao tem sentido esse while da linha 24 do transmissor
ResponderExcluir24. while(1);
não mesmo...ja que o programa termina aí, tanto faz colocá-lo, de qualquer maneira ficará em loop.
ExcluirÉ boa pratica manter programa rodando.
ExcluirNão consigo implementar tal biblioteca no PIC, poderia me mandar os arquivos com os respectivos códigos compilados em formato c?
ResponderExcluirchar checksum = ~(char)(comando + valor); oque essa linha faz amigo?
ResponderExcluiré padrão C ou do compilador?
esse código realiza o complemento da soma das duas variáveis variáveis.
Excluirno meu deu erro nessa linha ao compilar , oq sera ?
Excluirno meu também: "Const expression expected"
ExcluirTem Biblioteca RF para proteus 8?
ResponderExcluirNao
ExcluirTambém estou com dificuldade de achar a biblioteca rf para o proteus 8
ResponderExcluirAcho que nao tem como simular radiofrequência no Proteus.
ExcluirEste comentário foi removido pelo autor.
ExcluirGeralmente uso o (VIRTUAL TERMINAL) para simular pois ele possui os terminais RX e TX, basta ligá-los. TX ao transmissor e o RX ao receptor. Os terminais RTS e CTS do (VIRTUAL TERMINAL), eu deixo ligados entre si.
ExcluirSe tudo estiver funcionando corretamente o caractere A aparecerá na tela do (VIRTUAL TERMINAL)
Legal este projeto. Estou pensando no seguinte. Um circuito para ler a temperatura e umidade com o DHT11 , e enviar via rf para outro pic. É possivel enviar dados deste tipo ?
ResponderExcluirSim. O codigo acima envia um pacote de bytes( um byte de comando e um byte contendo um valor). Voce pode enviar dois pacotes, o primeiro informando a temperatura e um outro pacote informando a umidade.
Excluirpor favor alguem manda so o codigo fonte
ResponderExcluirOlá , é possível colocar endereço no PIC para que ele receba informação somente do PIC desejado?
ResponderExcluirvocê pode alterar a função "RF_Send()" adicionando mais um byte ( o byte de endereço ) para enviar. Na função "RF_Read()" você faz a leitura de mais um byte e verifica se corresponde ao endereço...
ExcluirOlá, Você poderia escrever um trecho do programa para eu entender ?
ExcluirE muito obrigado pelas explicações.....
Com o PIC 16f628a também funciona corretamente?
ResponderExcluirSim
ExcluirDonde puedo descargar los modulos RX y TX para proteus
ResponderExcluirOlá, tentei fazer mais não consegui fazer funcionar, estou usando o PIC16F628A com oscilador interno, sera que é isso que esta atrapalhando?
ResponderExcluirOlá, um grande problema que pode afetar o funcionamento é a interferência. Quando fui testar o Módulo RF tive que me afastar de todo equipamento eletrônico, incluindo meu computador.
ExcluirOque significa este função:
ResponderExcluirvoid RF_Receive_Init()
{
RCIE_bit = 1;
GIE_Bit = 1;
PEIE_Bit = 1;
}
Inicializa a recepção da UART. RCIE_Bit ativa a interrupção de recepção da UART. GIE_Bit e PEIE_Bit ativa a interrupção global e dos periféricos, respectivamente.
Excluircomponentes Biblioteca modulo RF para proteus
ResponderExcluirhttp://www.4shared.com/rar/58Dn1F48ce/Biblioteca_Modulo_RF.html?cau2=403tNull&ua=WINDOWS
Gostaria de saber se posso usar esse código em quaisquer módulos RF 433, pois eu pegaria um modelo mais compacto, como esse por exemplo: http://produto.mercadolivre.com.br/MLB-607833127-emissor-e-receptor-rf-433mhz-pic-arduino-codigo-20m-200m-_JM
ResponderExcluirAssim eu não precisaria comprar duas vezes pra testar.
Meu amigo, consegue fazer esse código no ccs compiler?
ResponderExcluirvoce consegue fazer este programa por favor para o ccs compiler,,,estou usando o pic16f88,,mas ele ao inves de ter UART ou USART ,,ele tem AUSART,,nao achei no google o significado disso,,,mas o mais importante é o programa para ccs compiler
ResponderExcluirHello,
ResponderExcluirI was searching about a library about a rf module.
I found your project here and it seems very helpful.
Can you please tell me,with an example,how to send and show a message on a 2x16 lcd screen?
I have tried many times with no success so any help would be priceless!
hola como instalo los modulos rx tx en proteus 8 para simularlos en otros proyectos
ResponderExcluiramigos como fazer pra envia e receber dados com pic com o modulo hc-11 uart 433mhz
ResponderExcluirtipo envia a letra 'A' e acender um led envia a letra 'B' é apaga o led agradeso desdeja ?
Parece que esse modulo trabalha com comunicacao serial UART, entao é só conectar os pinos RX e TX do PIC nos pinos TX e RX do módulo, respectivamente. No código voce utiliza as funções de enviar e receber da biblioteca UART do compilador MikroC.
ExcluirBom dia, voce teria a biblioteca para o compilador PIC C? Ou ajudar com este erro no MikroC_6.4.0 o codigo esta dando erro nesta linha ADCON1 = 0x0F; "79 324 Undeclared identifier 'ADCON1' in expression Receptor_RF_434.c". Poderias me ajudar? Fiz alguns tutorias no PIC C, entao não sei bem como funciona o MikroC. Se tiver algum outro material inicial para o MikroC eu ficaria mt grato. Obrigado!!
ResponderExcluirQual PIC voce esta utlizando?
Excluir"ADCON1 = 0x0F" desativa o canal analogico. Caso seu microcontrolador nao possua canal analogico ou o registrador reponsavel pela configuracao seja diferente, voce pode comentar essa linha.
Aqui no blog tem algumas apostilas sobre PIC, algumas delas utilizam o compilador MikroC...
Excluir16f628a
ExcluirBom dia, tem algum outro comando que eu possa estar utilizando no pic 16f628a? pois esse ADCON1 = 0x0F nao funciona. Obrigado!!
ExcluirBoa noite, na biblioteca criada para simular os módulos RF, no proteus da erro poderia me dizer se sabe o pq? grato desde já.
ResponderExcluirboa noite o senhor sabe, ou como posso fazer para ler um controle ppa aqueles de portões que tem seu código de transmissão fixo sem criptografia.
ResponderExcluirsabe se tem como usar esse codigo fonte no pic 12f675
ResponderExcluirBoa tarde, alguem sabe me dizer como eu configuro um oscilador externo no mikroC? eu tenho um cristal de 4mhz e capacitores de 33pF, eu ja consigui configurar em outro compilador mas em mikroC nao estou conseguindo, alguem pode me ajudar por favor?
ResponderExcluirBoa noite, gostaria de saber se esse modulo manda sinal analógico, pretendo usar um potenciômetro para mandar um sinal analógico e converter em PWM, é possível?
ResponderExcluirBoa noite, gostaria de saber se e confiável essa programação para trabalhar em área com ruido. Se não qual melhor opção para trabalhar em áreas com ruídos
ResponderExcluirnao acredito. A toalha da mesa é igual a da minha casa.. kkkk
ResponderExcluirTiago boa tarde, saberia me dizer se consigo usar este rf433 com programação em ladder? Não sei programar em c, trabalho com máquinas industriais. Meu email é dfmrc@ibest.com.br
ResponderExcluirOlá, montei o circuito mas o meu funciona inicialmente após a 5º vez que eu pressiono o botão de enviar, após a 5 vez o receptor recebe o sinal e a partir dai ele passa a receber normalmente, vocÊ saberia o porquê?
ResponderExcluirHello, is there an error in line #3 of the Receiver code ?
ResponderExcluirOlá.
ResponderExcluirÉpossil comunicar varios transmissores para um só receptor?
Olá Tiago, sabe me dizer se este código funciona no PIC 16f877a sem nenhuma modificação?
ResponderExcluirOlá, boa noite, gostaria de saber se esse código serve para PIC18f4550??
ResponderExcluirComo se decodifica o ht6p20 e gravar na memoria no pic e no mikroc
ResponderExcluirGostaria de saber se os módulos RF que você desenvolveu para o Proteus, permitem de alguma forma alterar a frequência de trabalho.
ResponderExcluirta mais onde eu encontro o modulo no proteus?
ResponderExcluirWhen some one searches for his vital thing,
ResponderExcluirthus he/she needs to be available that in detail, thus that thing is maintained over here. 토토
Thank you for the good writeup. It in fact was a amusement account it. Look advanced to more added agreeable from you!
ResponderExcluir경마
온라인경마
I am sure this article has touched all the internet viewers, its really really nice post on building up new website. 바카라사이트
ResponderExcluirPic: Módulo Rf - Microcontrolandos >>>>> Download Now
ResponderExcluir>>>>> Download Full
Pic: Módulo Rf - Microcontrolandos >>>>> Download LINK
>>>>> Download Now
Pic: Módulo Rf - Microcontrolandos >>>>> Download Full
>>>>> Download LINK
https://bayanlarsitesi.com/
ResponderExcluirKayseri
Sinop
Kilis
Hakkari
NUQ6U
sinop
ResponderExcluirsakarya
gümüşhane
amasya
kilis
5O71UF
bitlis
ResponderExcluirurfa
mardin
tokat
çorum
2JEXM
6CD0C
ResponderExcluirbinance komisyon indirimi %20
شركة تنظيف خزانات بالاحساء LsQuH7Gv42
ResponderExcluir