的射频和无线供应商和资源

一站的射频和无线的需要

正交相移编码映射器python代码| QPSK demapper python脚本

这个页面介绍了QPSK mapper python代码和QPSK demapper python脚本用于正交相移编码映射和QPSK demapping分别。

介绍:正交相移编码代表交相移键控。这个数字调制技术用于提高数据速率两个。它映射两个二进制数字单射频载波。

正交相移编码映射器

图中描述了正交相移编码数据星座和QPSK映射过程。QPSK demapper正交相移编码映射器的反向功能。请参考QPSK调制> >为更多的信息。

正交相移编码映射和QPSK demapping python脚本

映射器/ demapper python代码后可用于数字二进制数据映射到QPSK星座点,反之亦然。

进口随机
进口numpy np
进口matplotlib。pyplot作为plt
len1 = 48 #输入数据的长度
模式= 2 #正交相移编码2位/子载波
mapping_table = {
0:0.7071 + 0.7071 j,
1:- 0.7071 + 0.7071 j,
2:0.7071 - 0.7071 j,
3:- 0.7071 - 0.7071 j}
dec_binary = {
0:“00”,
1:“01”,
2:“10”,
3:“11”}
#二进制随机数据生成器(0和1)
input_data = " "
因为我在范围(len1):
temp1 = str(随机的。randint (0,1))
input_data + = temp1
print(“映射器,输入二进制串:input_data)
#位转换成双比特和整数列表
s1 = input_data
s2_user1 = []
块= [s1[我+模式]我的范围(0,len (s1)模式))
块的块:
temp = int(件2)
s2_user1.append(临时)
打印(“输入整数列表:“s2_user1)
#正交相移编码映射部分
Q = np.zeros((24日),dtype =复杂)
j = 0
对于val s2_user1:
问[j] = mapping_table (val)
j + = 1
打印(“正交相移编码映射器输出复杂的名单”,问)
# QPSK de-mapping部分
Q1 = np.zeros((24日),dtype = int)
j = 0
因为我在问:
如果我= = 0.7071 + 0.7071 j:
Q1 [j] = 0
elif我= = -0.7071 + 0.7071 j:
Q1 [j] = 1
elif我= = 0.7071 - -0.7071 j:
Q1 [j] = 2
elif我= = -0.7071 - -0.7071 j:
Q1 [j] = 3
其他:
打印(“我不当价值”)
j + = 1
打印(“De-mapper输出整数列表:”,一季度)
#将整数转换为比特
output_data = " "
j = 0
瓦尔第一季度:
output_data + = dec_binary (val)
j + = 1
print (“De-mapper,输出二进制串:output_data)
plt.plot (s2_user1-Q1)
plt。标题(“区别输入和输出整数数据”)
plt.show ()

正交相移编码映射器python输出和它的情节


以下是各自的输出在不同正交相移编码的python代码。它提到mapper二进制输入,其相应的列表中,浮点数值用正交相移编码映射输出,de-mapper整数输出,de-mapper二进制输出。

正交相移编码映射器和demapper python输出

以下情节提到区别映射器输入(整数数组列表)和demapper输出(整数数组列表)。如图所示,输出为零级输出相等的价值意义。

正交相移编码输入和输出整数数据的区别

其他有用的DSP代码在Python中

MATLAB的有用链接代码

射频和无线教程


分享这个页面

翻译这个页面
Baidu