William Harding wrote:
I am trying to write an ASK Modulation block to transmit streams of 0's and 1's. In order to match the "symbol timing" of the protocol that I am trying to implement, would I keep an instance variable in the block that, in effect, keeps track of how many samples have been processed by the block so far? In other words, using the known sampling frequency and how many samples have been processed in the block so far, to know whether to go to the next bit to be sent or not.
When receiving any digital bitstreams there are certain steps to do, regardless of the modulation used. There are many examples in both GnuRadio and CGRAN. As a quick summary, you should: 1. Demodulate whatever modulation (in this case, ASK) was used. The sample rate should be at LEAST twice the symbol rate of the data. 2. Convert your samples to digital symbols. For a trivial 2-level ASK, this would just be a simple bitslicer. Note that the result is STILL at the sample rate, NOT the symbol rate. 3. Feed the resulting bitstream into a M&M clock recovery block. This will resample the bitstream down to the data's clock rate, with one sample per bit. 4. Store to a file, or do further processing.
Also, what is the best way to define what bit sequence I would like to send? Would it be file_source?
That is one way. You could also use a UDP source, or the TUN/TAP device. @(^.^)@ Ed _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio