I have posted a similar question in MikroE but they took their time though, so I'm posting it here for extra input from the old-timers here. According to Uncle Nigel, the Manchester Code is the most suitable for the standard 315 MHz modules. I'm attempting a simple transmission between my 16F84A and 16F876, where the Tx continuously transmits 0xff and the Rx, upon receiving 0xff, turns on all PORTB pins, and all turned off if otherwise. I'm doing it real simple, the wires are connected to each other (Tx to Rx, and GND tied together, not using the RF modules yet), with the following code:
Tx:
Code:
extern sfr sbit MANTXPIN;
extern sfr sbit MANTXPIN_Direction;
sbit MANTXPIN at rb7_bit;
sbit MANTXPIN_Direction at trisb7_bit;
void main() {
Man_Send_Init();
while (1) {
Man_Send(0xff);
}
}
It will be good to indicate which library you are using for Manchester encoding (Man_Receive and Man_Send function).
Use an oscilloscope and check the waveform on the output pins intended for the transmitted signal. See what you get there. After that, try to see what is the value received from Man_Receive, and what value is returned in variable "error"
I've checked again. Sometimes it worked, sometimes it doesn't. I guess there'll be more to look into with a scope. I'll get back here if it comes through.