📄 receiver_stimulus_5m_psk.m
字号:
clc;
clear all;
fid = fopen('lunwen_stimulus_psk.vec','w');
if fid==-1
disp('Couldn''t open file new_receiver.vec for writing');
end
ts=1250;%clock period
points=200;%sample points
X=[1,0,1,0, 1,1,0,1, 0,0,1,0, 1];
t=1;
%globle
fprintf(fid,'START 0;\n');
fprintf(fid,'STOP %d;\n',ts*(points));%fprintf(fid,'STOP %d;\n',ts*(points+200));
fprintf(fid,'RADIX DEC;\n');
%system clock signal port in
fprintf(fid,'INTERVAL %d;\n', ts/2);
fprintf(fid,'INPUTS clk;\n');
fprintf(fid,'PATTERN\n');
fprintf(fid,'0 1;\n');
%data_in[13..0] signal port in
fprintf(fid,'INPUTS data_in[13..0];\n');
fprintf(fid,'PATTERN\n');
fprintf(fid,'0> 0\n');
data=1;
j=1;
for k = 1:points;
value = sin(2*pi*k/10);
if(data==0)
value =-value;
end;
value = round(value * 2^13);
if (value < 0)
value = (2^14+value);%补码format
end;
if(j==78)
j=1;
t=t+1;
data=X(1,t);
else
j=j+1;
end;
if(k==points)
fprintf(fid,'%d> %d;\n',k*ts,value );
else
fprintf(fid,'%d> %d\n',k*ts,value );
end;
end;
% mod_out signal port out
% fprintf(fid,'OUTPUTS sin_out[13..0];\n');
% fprintf(fid,'OUTPUTS cos_out2[13..0];\n');
% fprintf(fid,'OUTPUTS pre_fir_q[27..0];\n');
% fprintf(fid,'OUTPUTS pre_fir_i[27..0];\n');
% fprintf(fid,'OUTPUTS out_Q[40..0];\n');
% fprintf(fid,'OUTPUTS out_I[40..0];\n');
% fprintf(fid,'OUTPUTS pre_mult_Q[15..0];\n');
% fprintf(fid,'OUTPUTS pre_mult_I[15..0];\n');
% fprintf(fid,'OUTPUTS after_mult_Q3[31..0];\n');
% fprintf(fid,'OUTPUTS after_mult_Q4[31..0];\n');
% fprintf(fid,'OUTPUTS pre_compare_out[31..0];\n');
fprintf(fid,'OUTPUTS data_out;\n');
fprintf(fid,'OUTPUTS data_valid;\n');
fprintf(fid,'OUTPUTS ask_psk_mod;\n');
fprintf(fid,'OUTPUTS judge_out;\n');
fclose(fid);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -