Dear List, I am writing a custom QPSK modulator block (demod is next) and I am caught up on figuring out the output.
I am taking the byte data type (which I am using C++ char) and for each bit of the byte I would have a custom symbol per bit rate. For an absolute minimum in a successful PSK system, I would need about two symbols per bit. So the sequence of data to be passed through is growing. Now for where I am getting confused, when I come up with the I and Q data as a complex number I can only send out one sample at a time, right? So for each time my general_work executes it can send out only one sample at a time while having even more samples calculated representing just one value of input_items which upon modulation would have quite a bit output samples. At least that is how I am interpreting the process. How do I get out all these samples before I get the next value of the input? Should I write the sample values to a buffer that the block should check whether it is full before processing the next char sample? Anyone with experience writing modulator code have any tips? Can I keep updating the value of out in the general_work and it will pass on to the flowgraph? I have tried looking at what I believe is the PSK modulator source code, gr_constellation.cc but it is a pretty hard piece of code to follow. I appreciate any help and feedback. Jon
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio