Hello every one
I have to receive a stream of data at 4khz interpret this stream of data and display it onto the users screen in the interpreted binary form only.
The problem is that my algorithm slightly lags after each interpretation of 1, because of the additional internal machine cycles for computation in my microcontroller.
All received signals are noise free and with 5V DC
As you can see in the image attached i have missed some 0s and 1s. I have tried all methods such as detecting rising edges and falling edges ,using timers etc , to detect the type of bit but all fail sooner or later in the streaming data interpretation.
Other than trying to correct the problem via correction in the micro-controller algorithm etc (which i have already tried a lot) following are my questions:
1. Are there ready made ICs available to directly interpret the received digital data , and transmit it i on an out put pin.
2. Cab i buffer the data in real time and use it later on for post processing if yes what are the ICs and the paraphernalia.
In the Image attached http://s18.postimg.org/he9zrt4tl/New_File0.png
channel 2(blue) is the streaming data and channel 3 is interpreted data (pink)
So this is the project:
We have one TX and one RX in remote locations. They communicate wirelessly. They dont have any established communication protocol. They communicate as flows. when no data is being transmitted the tx will continuously transmit a square wave at 4khz. when data is to be transmitted, then tx will first send 1B 23 (data) and then 1B 25.
if i have to transmit 55 34 65 76 23 89 00 23 54 the tx will transmit as follows
1B 23 55 34 65 76 23 89 00 23 54 1B 25. I
Our project deals with an up-gradation of the present system, hence we have to replace the module that converts the received stream into the data by interpreting the values.
Our present system just received data from a serial data pin from the wireless RX. hence the Rx does all the receiving of data over the air and wireless data reception is not my concern. As i receive the data directly from the serial data pin in the rx, hence i can say the data received in my system is similar to data being received directly via wire.
The received signals from the serial data pin are free from any error and are of 5V DC (the RX takes care of all this signal conditioning before sending the received data to the serial data pin ) so i am sure that the data received from the serial data pin is exactly what was transmitted.
So in short i have to differentiate the square wave from the 1b 23 (DATA) 1b 25 and relay it forward .That is where i need interpretation.
Link below shows tx of 55 55 55 55 55.
This is correctly interpreted because the delay in uc interpretation is not enough in small data tx to cause an error but in larger tx it results in an error.
I hope i have explained the question well