Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Hola a todos, estoy intentando comunicar 2 pics mediante RF, con los modulos aurel SAW433 y bc-nbk, bien pues por cable consigo comunicarlos, y con los modulos de telecontroli tambien, pero con los de aurel no.
El programa es sencillito envio una A cada 250ms, pero solo recibo basura, pongo el codigo por si alguien me puede hechar una mano.
TX:
#include <16F874A>
#fuses XT,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP
#use delay(clock=4000000)
#include <flex_lcd_2>
#use rs232(baud=2400, xmit=PIN_C6, rcv=PIN_C7)
#use fast_io(A)
#use fast_io(B)
#define LED1 PIN_E0
#define LED2 PIN_E1
int16 dato=' ';
void main(void)
{
inicio:
setup_adc_ports(NO_ANALOGS);
//set_tris_a(0b00000000);
set_tris_b(0b00000000);
set_tris_e(0b000);
//set_tris_c(0b00000000);
//set_tris_d(0b00000000);
ini:
printf("A");
delay_ms(250);
goto ini;
}
RX:
#include <16F877A>
#fuses XT,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP
#use delay(clock=4000000)
#include <flex_lcd_2>
#use rs232(baud=2400, xmit=PIN_C6, rcv=PIN_C7)
#use fast_io(A)
#use fast_io(B)
#priority rda
#define LCD_DB4 PIN_B3
#define LCD_DB5 PIN_B2
#define LCD_DB6 PIN_B1
#define LCD_DB7 PIN_B0
//
#define LCD_RS PIN_B5
//#define LCD_RW PIN_B6
#define LCD_E PIN_B4
#define LED1 PIN_E0
#define LED2 PIN_E1
int16 dato=' ';
#int_rda
void serial_isr(void){
if(kbhit()){
dato=getc();
}
}
void main(void)
{
setup_adc_ports(NO_ANALOGS);
enable_interrupts(global);
enable_interrupts(int_rda);
//set_tris_a(0b00000000);
set_tris_b(0b00000000);
set_tris_e(0b000);
//set_tris_c(0b00000000);
//set_tris_d(0b00000000);
output_high(LED1);
delay_ms(500);
output_low(LED1);
lcd_init();
lcd_putc("Esperando");
ini:
lcd_gotoxy(1,2);
lcd_putc(dato);
goto ini;
}
PD: tengo puesta una pullup de 10k en la salida del receptor, alguien sabe si puede haber algun problema de hardware.
saludos
si lo tengo pero no se como añadirlo al mensaje, de todas formas son los modulos
aurel SAW433 y bc-nbk
http://www.aurelwireless.com/wireless/S ... 689_sf.pdf
http://www.aurelwireless.com/wireless/S ... 208_sf.pdf
aqui esta en la web, la verdad es que necesitaria algo de ayuda por que no se por donde seguir
¿Por qué pin entras la señal? ¿De qué nivel? y ¿con cuánto lo alimentas?
En la tabla del final del tx viene una explicación de cómo se tiene que usar.
Además la señal que envíes tiene que ser menor a 2kHz que es la frecuencia máxima de salida.
S2
Ranganok Schahzaman
yo lo alimento a 5V, le meto la señal por el pin 3 de 5v y a 600 baudios
Has probado a meterle la señal por el pin 2? o eso o alimentalo a algo más de 5 V
S2
Ranganok Schahzaman
a meter la señal por el pin 2 si, pero a alimentarlo a mas de 5 no. pero he visto aplicaciones que funcionan a 5V y por el pin 3. pero en ensamblador, por eso busco algo en c