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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本人菜鸟,第一次接触matlab程序画流程图,不知道该如何按照这个程序画流程图, 尤其是这个程序里用了很多for循环, 比较迷茫……麻烦大神指点一下,非常感谢!
  u. d$ p2 [0 G5 O2 `! W9 G%MRC_scheme.m
, S. }- l& K- K! T$ Y. e%接收分集-MRC! H9 F. M$ b% E" j0 u
clear,clf
( V3 G, k0 W$ u3 l8 tL_frame=130;' O: l+ F0 |1 F$ B7 C$ s, [
N_packet=4000;%130个编码后符号,仿真4000组
1 o& i( `2 g5 Mb=4;%设置为1/2/3/4对应于BPSK/QPSK/8PSK/16-QAM& u1 @4 d8 j3 T; \
SNRdBs=[0:2:20];
7 V, K0 M& Y4 N. ?9 isq2=sqrt(2);
, s7 p1 \/ c! hfor iter=1:3
# p+ z8 ?( ^5 ^( B* l1 D6 V    if iter==1  d9 H$ b7 _4 K- _7 u& I8 R
        NT=1;07 E* _  V5 i( J  f, t
        NR=1;%SISO- O- s) W7 U3 w) M3 k. {
        gs='-kx';' |8 B) c( {# ?
    elseif iter==2! G) {! O+ `* M. ^! l, A3 G
        NT=1;
( M4 h5 [3 w0 X+ A2 o1 H        NR=2;% 1发2收
+ s  T$ S0 }& z/ [( q. ^        gs='-^';
' K2 P; r2 @3 V& g    else; ^8 J* c8 y# X! r
        NT=1;
& N  {5 ~! Q' C0 U3 A9 Z- v        NR=4;% 1发4收# T+ k5 j+ K7 q% \: O$ L
        gs='-ro';
9 D0 b8 U! k3 S* Q    end& }# U( ^  k0 x! _6 L" o& {  s5 ~. w
    sq_NT=sqrt(NT);9 w7 q' f' y: t8 w7 Q
    for i_SNR=1:length(SNRdBs)" ?, q1 ]  k* [+ s) p
        SNRdB=SNRdBs(i_SNR);8 @/ m; w4 Q' l
        sigma=sqrt(0.5/(10^(SNRdB/10)));%瑞利分布参数,噪声标准差
8 ^1 m1 u' d9 b; G/ M        for i_packet=1:N_packet( M! d' [8 F: R: F" |
            symbol_data=randint(L_frame*b,NT); %产生L_frame*b行NT列二进制信息) R9 p# v& \. q' u/ P  b6 w+ N
            [temp,sym_tab,P]=modulator(symbol_data.',b);%调制
7 Z2 l( z- ?, X# {' Z( V% ?            X=temp.';%X为调制后序列(L_frame行1列)
/ ~1 o- W. D0 y& @; d/ v            Hr=(randn(L_frame,NR)+j*randn(L_frame,NR))/sq2;%瑞利信道衰落系数
; |* Q, q4 V; V* G; G4 G) S; \            H=reshape(Hr,L_frame,NR);%重置Hr行列(L_frame行NR列)* Q" z" T+ O# X4 A0 y4 N
            Habs=sum(abs(H).^2,2);4 }* |! J* x: o- Y$ s* N
            Z=0;
, T2 _5 g' a( C& g- Z            for i=1:NR
; ?$ i, L# d; M$ O! H4 z& A                R(:,i)=sum(H(:,i).*X,2)/sq_NT+...
; A% M- c! G$ ^1 k" Y                    sigma*(randn(L_frame,1)+j*randn(L_frame,1)); %经过瑞利信道并加复高斯白噪声
, u. D2 |/ N3 K/ G+ j                Z=Z+R(:,i).*conj(H(:,i));%MRC合并,合并系数为conj(H(:,i))
* f& R  i7 L; E6 e5 M5 q5 Q! b! `            end8 {5 W' I( N* o+ ?. Y; n$ B
            for m=1 %最大似然译码( W) l8 U( b& w7 W' j8 X
                dl(:,m)=abs(sum(Z,2)-sym_tab(m)).^2+...& c: W6 W# y8 v8 v. G' J
                    (-1+sum(Habs,2))*abs(sym_tab(m))^2;6 A2 h; \3 S( ]! y
            end
' M4 H: J2 ?; L+ y: ?# m4 K& H            [y1,i1]=min(dl,[],2);
5 E- l, H1 j* ]            Xd=sym_tab(i1).';
7 f4 O+ R; ~+ {) @            temp1=X>0;
3 m  H$ n! U7 C+ k0 e            temp2=Xd>0;# ~9 x2 c- [" y' G, M
            noeb_p(i_packet)=sum(sum(temp1~=temp2));%累加错误比特! G; h" m( Z# Y8 G: c5 X
        end2 J4 h& g2 D. R- p) @
        BER(iter,i_SNR)=sum(noeb_p)/(N_packet*L_frame*b);%计算误比特率/ p9 T5 o- o1 W3 U
    end# V! r2 x+ M7 T3 T+ J
    semilogy(SNRdBs,BER(iter,,gs),hold on! u0 U% {( z' i4 U/ }
    axis([SNRdBs([1 end]) 0.5*10^(-4) 1e0])3 |" m' x8 i. }9 w) Y
end0 I* i5 A8 y/ u. M& T% f
title('BER peRFoemancde of MRC Scheme')6 x( l! c2 {; `
xlabel('SNR[dB]'),ylabel('BER')  _, ^: o0 ?1 K' m( i- w
grid on,set(gca,'fontsize',9)
& ^! j! O6 s6 E' [( flegend('SISO','MRC(Tx:1,Rx:2)','MRC(Tx:1,Rx:4)')1 }, }6 ^" i5 o2 v, Q

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-20 20:30 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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