找回密码
 注册
关于网站域名变更的通知
查看: 523|回复: 1
打印 上一主题 下一主题

第一次接触matlab程序画流程图,不知道该如何按照这个程序画流程图。

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-1-29 16:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本人菜鸟,第一次接触matlab程序画流程图,不知道该如何按照这个程序画流程图, 尤其是这个程序里用了很多for循环, 比较迷茫……麻烦大神指点一下,非常感谢!
7 s7 E, T. o: r0 N%MRC_scheme.m. W2 Y0 x+ f* W5 H
%接收分集-MRC
3 O1 R2 X9 I+ e, }" J/ Wclear,clf
' d" T( ?: t: uL_frame=130;9 B8 i4 Q1 `$ W  a
N_packet=4000;%130个编码后符号,仿真4000组
  w6 b1 ]) u+ ]2 N) nb=4;%设置为1/2/3/4对应于BPSK/QPSK/8PSK/16-QAM5 J- Q$ \* K3 u8 _6 D
SNRdBs=[0:2:20];
; m  K& g( E4 R9 X- c! g3 Wsq2=sqrt(2);
3 l7 o8 r, i9 E5 _for iter=1:31 B4 a1 j9 w1 O3 m5 n
    if iter==1& S7 s+ V$ F# x$ O" q# {+ w4 U
        NT=1;08 V8 P( F9 S4 \; x0 f0 |
        NR=1;%SISO$ o6 v1 U' u$ q- V' q. K
        gs='-kx';; z  Z0 \( O5 t3 l* v
    elseif iter==2
, o, Z/ t2 X7 n        NT=1;: N5 a( h$ b- \% [
        NR=2;% 1发2收
0 S% |6 M+ l( n        gs='-^';
$ U- k% u2 t0 O6 X    else* c& `' l6 ~9 P7 t# c$ p; R" P
        NT=1;
# G! F# {+ ~  d8 h/ b; l. g5 h; u        NR=4;% 1发4收
; t8 d  V+ h% U% R. l+ y        gs='-ro';
3 R5 A4 I6 l& Y( k: j    end
, Q% N2 O. A* v7 u  G* Y    sq_NT=sqrt(NT);8 B" J7 r2 `/ b! q' v1 d
    for i_SNR=1:length(SNRdBs)
# m6 O4 [4 R. t# _6 b        SNRdB=SNRdBs(i_SNR);
4 z. \* [' q, b1 E5 V' C        sigma=sqrt(0.5/(10^(SNRdB/10)));%瑞利分布参数,噪声标准差2 }! h% b' C! u
        for i_packet=1:N_packet
! H' m3 P& Z  R7 E            symbol_data=randint(L_frame*b,NT); %产生L_frame*b行NT列二进制信息% G3 u" l3 [% ^. ^# l' F! g
            [temp,sym_tab,P]=modulator(symbol_data.',b);%调制! t: F+ i/ k" V. @
            X=temp.';%X为调制后序列(L_frame行1列)2 d- E/ H4 L  R# }6 w
            Hr=(randn(L_frame,NR)+j*randn(L_frame,NR))/sq2;%瑞利信道衰落系数
3 `. p' k, u: N0 x7 Y; @$ Z            H=reshape(Hr,L_frame,NR);%重置Hr行列(L_frame行NR列)/ x% L' z, C# z$ m$ ~, u4 ?- C: `7 X
            Habs=sum(abs(H).^2,2);
" [3 x0 z- Y) a9 p            Z=0;2 K1 x7 I7 D# O: x3 I% t1 `
            for i=1:NR
" y0 _2 o; z1 V" n3 E2 ?                R(:,i)=sum(H(:,i).*X,2)/sq_NT+...
) G- L/ ~' `) j- m( D6 t; s                    sigma*(randn(L_frame,1)+j*randn(L_frame,1)); %经过瑞利信道并加复高斯白噪声" c- ?/ V' Q) k* j: V
                Z=Z+R(:,i).*conj(H(:,i));%MRC合并,合并系数为conj(H(:,i))
& P5 Z; T& M5 U; [4 S( {            end" p; }8 B) K: Q( N
            for m=1 %最大似然译码
8 Z+ q5 I. k/ ]% u                dl(:,m)=abs(sum(Z,2)-sym_tab(m)).^2+...
  C, O2 l, ^8 X$ @* |2 B( g                    (-1+sum(Habs,2))*abs(sym_tab(m))^2;
# Y" R7 v% t3 N4 |. U            end
: q) h9 W; f5 F4 t, T            [y1,i1]=min(dl,[],2);
/ @# \( [( t: b# ~            Xd=sym_tab(i1).';9 P' `4 m( p( v# A1 U
            temp1=X>0;
# ~' F8 n0 u! I5 F            temp2=Xd>0;
+ z* q1 T4 {  |0 U4 ]2 K- f- y+ g            noeb_p(i_packet)=sum(sum(temp1~=temp2));%累加错误比特
7 z* S$ _. g5 x/ ~4 W5 K        end
. r( g9 ?( q& C+ U3 O0 |        BER(iter,i_SNR)=sum(noeb_p)/(N_packet*L_frame*b);%计算误比特率; W; z8 I4 k' O/ ]0 n& B
    end
7 ]  e$ K4 m5 h0 J/ D- i1 F    semilogy(SNRdBs,BER(iter,,gs),hold on
, o( A# T  b0 {    axis([SNRdBs([1 end]) 0.5*10^(-4) 1e0])4 [. z! L# h4 W+ J- s2 a9 i7 ^
end
: ]. W+ b& a1 p: Q) Qtitle('BER peRFoemancde of MRC Scheme')
4 d$ ]$ h7 x5 _xlabel('SNR[dB]'),ylabel('BER')
# H' K, t9 c# ygrid on,set(gca,'fontsize',9)  P0 n/ m; l/ a
legend('SISO','MRC(Tx:1,Rx:2)','MRC(Tx:1,Rx:4)'): z! p1 J% S. r2 W' n9 q

该用户从未签到

2#
发表于 2021-1-29 17:05 | 只看该作者
这个其实很简单。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 04:08 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表