I need to implement BPSK modulator and demodulator and I'm having a few issues.
1) Is there a way to trigger DMA channel without use of PWM? It just doesnt let me connect clock directly to triger input.
2) I can't seem to find any substitution for Analog Mixer. Is there a way to implement his function with some other component?
Solved! Go to Solution.
kristijan,
I did not implemented BPSK myself, so I can only provide general advise. I looked around and found a variety of approaches. I believe that at 20kHz carrier frequency the P4200 resources are enough to directly sample input signal and to extract quadrature components (I/Q). Some code examples can be found on TI website (code attached, unchecked)
And another code from TI here:
There are some matlab examples on stack exchange like that, which are quite explanatory
digital communications - Simulating BPSK Costas Loop in Matlab - Signal Processing Stack Exchange
/odissey1
1. What is the carrier frequency?
2. Why not PSoC5?
/odissey1
Carrier frequency is arround 15-20 kHz.
It wasn't the technology i chose. I got this board to make project with it from my university. It got chosen because it has stable clock frequencies. So I need to implement it with this board.
Start with sine output project examples from this thread (RAM-DMA-DAC). This will assist you to make a BPSK transmitter. You would likely have to configure two DMA channels (second one with offset of 180 deg) to transmit 0 and 180 phase.
Whether you will be able to implement a BPSK receiver on the same PSoC4, that is the wuesques, due to limited resources.
I managed to implement transmitter using two descriptors in DMA controlled with software.
Receiver is problematic because of missing analog mixer. Do you have any idea how I might implement it without mixer? Because it seems to me that mixer is essential part. I'm trying to make it coherent but if it's impossible I'm open to noncoherent demodulation.
kristijan,
I did not implemented BPSK myself, so I can only provide general advise. I looked around and found a variety of approaches. I believe that at 20kHz carrier frequency the P4200 resources are enough to directly sample input signal and to extract quadrature components (I/Q). Some code examples can be found on TI website (code attached, unchecked)
And another code from TI here:
There are some matlab examples on stack exchange like that, which are quite explanatory
digital communications - Simulating BPSK Costas Loop in Matlab - Signal Processing Stack Exchange
/odissey1