poster
2019-12-10, 20:30
嗨,任何人都可以展示如何为BER使用modem.oqpskmod。谢谢!
h = modem.oqpskmod y = modulate(h, values); g = modem.oqpskdemod(h) z = demodulate(g, y) 假设我有一个名为value的数组,其中只包含1和0。我的问题是我将如何计算误码率?当然如果上面的代码是正确的。
回答:
基于此Wikipedia页面 (http://en.wikipedia.org/wiki/Bit_error_rate) ,您只需计算不正确的位数,然后除以传输的位数,即可得出误码率(BER)。如果values是未经调制的输入信号,而z是经过调制和解调后的输出信号,则可以这样计算:
BER = sum(logical(values(:)-z(:)))/numel(values); 编辑:我修改了上面的代码,以防万一您遇到两种情况:
如果z值不是0和1。
如果z的大小不同于values (即行向量与列向量)的大小。
我不知道您是否曾经遇到过这两种情况,但总比后悔好。 ;)
更多&回答... (https://stackoverflow.com/questions/2179737)
h = modem.oqpskmod y = modulate(h, values); g = modem.oqpskdemod(h) z = demodulate(g, y) 假设我有一个名为value的数组,其中只包含1和0。我的问题是我将如何计算误码率?当然如果上面的代码是正确的。
回答:
基于此Wikipedia页面 (http://en.wikipedia.org/wiki/Bit_error_rate) ,您只需计算不正确的位数,然后除以传输的位数,即可得出误码率(BER)。如果values是未经调制的输入信号,而z是经过调制和解调后的输出信号,则可以这样计算:
BER = sum(logical(values(:)-z(:)))/numel(values); 编辑:我修改了上面的代码,以防万一您遇到两种情况:
如果z值不是0和1。
如果z的大小不同于values (即行向量与列向量)的大小。
我不知道您是否曾经遇到过这两种情况,但总比后悔好。 ;)
更多&回答... (https://stackoverflow.com/questions/2179737)