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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本人菜鸟,第一次接触matlab程序画流程图,不知道该如何按照这个程序画流程图, 尤其是这个程序里用了很多for循环, 比较迷茫……麻烦大神指点一下,非常感谢!
% G! L) g( W3 L2 \' Q2 W5 h%MRC_scheme.m( b) q5 C  c) }  k7 \
%接收分集-MRC0 {. D5 N1 [# L2 J# \
clear,clf; Q$ L4 |5 G+ ?2 o3 E. a- [
L_frame=130;9 C3 I# X+ t& _4 T
N_packet=4000;%130个编码后符号,仿真4000组
2 z1 p3 T8 w$ W, Ib=4;%设置为1/2/3/4对应于BPSK/QPSK/8PSK/16-QAM# w* i5 e3 `% q; r
SNRdBs=[0:2:20];( n! t: L* |* i/ A
sq2=sqrt(2);9 ?6 A0 G' W9 e3 ~
for iter=1:3
, ?  V: E; H5 y' C; z4 l- S/ Z    if iter==1
' u6 Z' f  [1 b        NT=1;0& I/ P, H( Z" p2 V  ^
        NR=1;%SISO
7 j- M- S6 |( ~6 H        gs='-kx';+ c5 a. @5 }- C6 {- j
    elseif iter==26 z1 F6 ~9 l, ^+ }; l5 x
        NT=1;% U* B2 K! A- Y: r) v( E; T
        NR=2;% 1发2收
# L& u  D6 l3 x5 P        gs='-^';
; @5 _* W; c1 T7 f8 \8 G; M    else
5 C. j! M' G  J" ]0 C+ {2 o% ^        NT=1;
" c+ G1 D8 r3 E3 Y( f        NR=4;% 1发4收
2 T  Q% e$ @* j1 I" O; Q& l) m4 I        gs='-ro';
0 ~  C8 _  A  z! r- Y5 I4 }    end3 f# }( \' k; |$ {. o9 y' D
    sq_NT=sqrt(NT);0 A! K! W2 x4 H; H
    for i_SNR=1:length(SNRdBs)
1 f3 A: v* K/ J        SNRdB=SNRdBs(i_SNR);
! _5 b. b# T  f0 c3 F( Y6 {        sigma=sqrt(0.5/(10^(SNRdB/10)));%瑞利分布参数,噪声标准差/ i( [) e* ?$ o+ I$ @7 b' o
        for i_packet=1:N_packet
" C1 c% m, {( A) ?            symbol_data=randint(L_frame*b,NT); %产生L_frame*b行NT列二进制信息
0 }1 s& X" G' h0 v7 K5 o/ S% ^0 W            [temp,sym_tab,P]=modulator(symbol_data.',b);%调制. ~2 `# V9 @& L: i
            X=temp.';%X为调制后序列(L_frame行1列)
: o* x8 Q" G3 t8 R            Hr=(randn(L_frame,NR)+j*randn(L_frame,NR))/sq2;%瑞利信道衰落系数
) i) ?- ]+ }$ Z; _            H=reshape(Hr,L_frame,NR);%重置Hr行列(L_frame行NR列)
( h, J0 H8 h8 T            Habs=sum(abs(H).^2,2);3 F. G" K6 H" k; T2 {: a
            Z=0;
4 f5 A) g' |: w( u2 {            for i=1:NR
, Y: A2 @. O# i1 n                R(:,i)=sum(H(:,i).*X,2)/sq_NT+...: I) K7 R" m4 M* Y& T. W( y; U7 S- N/ D
                    sigma*(randn(L_frame,1)+j*randn(L_frame,1)); %经过瑞利信道并加复高斯白噪声5 t* F3 P4 j7 Z( h' d  ]4 ]
                Z=Z+R(:,i).*conj(H(:,i));%MRC合并,合并系数为conj(H(:,i))+ o$ T& W3 p4 R" j0 Q
            end1 h& A6 H0 c1 ?. C( P8 v2 r2 Q! G
            for m=1 %最大似然译码
! s1 ~! T$ `* ]: X6 Z                dl(:,m)=abs(sum(Z,2)-sym_tab(m)).^2+...
5 P; f. M" O" V) s9 ]                    (-1+sum(Habs,2))*abs(sym_tab(m))^2;
( B' q% G$ V0 k. |  ]            end
: m- d, K7 w9 ?& y. T- J/ S) J            [y1,i1]=min(dl,[],2);
) Q4 C0 S, d5 \            Xd=sym_tab(i1).';7 H( |  F* K+ h  G9 T' Q* u; E
            temp1=X>0;: W& e: R1 G' C9 T
            temp2=Xd>0;6 k5 J5 ?" U. ?) W1 K
            noeb_p(i_packet)=sum(sum(temp1~=temp2));%累加错误比特2 f8 w( J+ ?# x4 F* v- Z, J
        end+ D6 v2 y* ?2 [" _. f: G1 Z' F
        BER(iter,i_SNR)=sum(noeb_p)/(N_packet*L_frame*b);%计算误比特率
! ]# ~$ P3 P2 t" M( I8 t. O    end. e5 `& y" k2 W1 p' H8 G
    semilogy(SNRdBs,BER(iter,,gs),hold on% o7 k/ F" e# y: z2 ?& ?0 m4 q- d
    axis([SNRdBs([1 end]) 0.5*10^(-4) 1e0])0 i0 K9 O+ Z0 B- a
end$ a# }  k2 Z9 Y" A
title('BER peRFoemancde of MRC Scheme')1 y4 S" D, ?) l- y6 [
xlabel('SNR[dB]'),ylabel('BER')2 ^  a3 h- n$ b" h) v& V
grid on,set(gca,'fontsize',9)
+ ?3 L! |( b# F0 O' Tlegend('SISO','MRC(Tx:1,Rx:2)','MRC(Tx:1,Rx:4)')
. f% [- B7 k& _" U  K% j

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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