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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本人菜鸟,第一次接触matlab程序画流程图,不知道该如何按照这个程序画流程图, 尤其是这个程序里用了很多for循环, 比较迷茫……麻烦大神指点一下,非常感谢!
+ J0 j- b. a1 M0 M2 c1 \%MRC_scheme.m7 d% R% ^' f4 g0 E3 R- f. w
%接收分集-MRC
# L2 \) Q+ y$ {4 G% tclear,clf8 K+ H5 M4 D6 U' i
L_frame=130;, ~4 |% {. _4 \  n; @
N_packet=4000;%130个编码后符号,仿真4000组; a2 B% @+ o# A* N6 Z
b=4;%设置为1/2/3/4对应于BPSK/QPSK/8PSK/16-QAM
3 j) L5 [' c" e5 OSNRdBs=[0:2:20];
: J) @1 L: i/ z0 ksq2=sqrt(2);7 z& u: d3 i9 B. b* A! V
for iter=1:3
# f% _) I; E" t) W    if iter==1
1 L9 {. }  o9 L1 |  f        NT=1;0. n6 P& T& U) \$ _% a% u7 ?
        NR=1;%SISO
* p6 V, P. n  F8 ?2 ~        gs='-kx';/ [8 w/ b3 Y! T5 S1 V4 O; o
    elseif iter==2/ X7 T3 c3 {3 z3 F4 ^0 ~
        NT=1;
) }' G3 I# m3 ]0 x        NR=2;% 1发2收
7 Q" L% x( m2 d7 `" }# ~        gs='-^';% X; A/ R2 b+ J& N2 w$ n) q/ c
    else
. l- e, x! ?  Y  W: {        NT=1;1 n: j6 q* n2 v( a- D/ @# r& a
        NR=4;% 1发4收
3 K" G- Y7 E& R" W6 R( W        gs='-ro';: x: `) K* H4 s+ S
    end
; c! y9 s7 J- L% J0 N/ R    sq_NT=sqrt(NT);
' o: J& g# l9 Z. Y0 m8 G+ O    for i_SNR=1:length(SNRdBs)
6 o! s! I8 {0 c* b6 w5 I        SNRdB=SNRdBs(i_SNR);
: @+ x* h# w! b2 ]2 a  ^        sigma=sqrt(0.5/(10^(SNRdB/10)));%瑞利分布参数,噪声标准差
& N. P. _% G* U        for i_packet=1:N_packet
9 D0 z6 Z9 O3 t& M$ ^( q9 U% g9 K: X5 d/ P            symbol_data=randint(L_frame*b,NT); %产生L_frame*b行NT列二进制信息
1 F( X6 z+ q6 |1 w            [temp,sym_tab,P]=modulator(symbol_data.',b);%调制! f. _) z5 Z: n( C1 _7 c! S2 w
            X=temp.';%X为调制后序列(L_frame行1列)2 \1 `6 R" T9 v1 `$ m1 T
            Hr=(randn(L_frame,NR)+j*randn(L_frame,NR))/sq2;%瑞利信道衰落系数
+ J- }4 c6 Z% X5 s9 ~% v            H=reshape(Hr,L_frame,NR);%重置Hr行列(L_frame行NR列)
5 v3 O& v0 r! Y( }            Habs=sum(abs(H).^2,2);
, q' r7 y4 S3 ^# a            Z=0;
! M0 R% Y/ U% h! v4 a            for i=1:NR2 x2 u- v; S5 E; D2 V
                R(:,i)=sum(H(:,i).*X,2)/sq_NT+...% q, S- H; N3 g, q" l
                    sigma*(randn(L_frame,1)+j*randn(L_frame,1)); %经过瑞利信道并加复高斯白噪声
/ ^7 H# p) o+ U, [3 G6 c" W                Z=Z+R(:,i).*conj(H(:,i));%MRC合并,合并系数为conj(H(:,i))
1 l$ F" [# [2 q/ a! r7 H* O( U/ T) a$ d            end
: i/ M2 O) M3 t  u7 W            for m=1 %最大似然译码
) b5 @) t- {9 G7 x7 \/ d' |* T                dl(:,m)=abs(sum(Z,2)-sym_tab(m)).^2+...
& l2 K( l9 F- L2 ?! j6 I' Q' ~                    (-1+sum(Habs,2))*abs(sym_tab(m))^2;
3 g& N2 A: Q% `$ q! H            end7 j( j4 Z! X0 X1 ]8 ~& j
            [y1,i1]=min(dl,[],2);
1 N- j/ c' K/ V0 k0 [; \1 n            Xd=sym_tab(i1).';7 u& v3 `! a4 K' e7 v8 h
            temp1=X>0;! e+ f9 e5 O1 P& k) ?
            temp2=Xd>0;
' [! J  i1 {1 O  Q. D3 h+ n- L: b            noeb_p(i_packet)=sum(sum(temp1~=temp2));%累加错误比特% \0 i5 F/ ^, G1 X3 K! t) Y* v  D# L
        end
$ [5 \8 G$ Z& q        BER(iter,i_SNR)=sum(noeb_p)/(N_packet*L_frame*b);%计算误比特率
; C: v8 ]  c1 B- o) u0 N    end3 H6 w! A9 G/ S3 r% w- n
    semilogy(SNRdBs,BER(iter,,gs),hold on# h) m+ ]; P; h/ E% g( ~1 m! k3 u9 X
    axis([SNRdBs([1 end]) 0.5*10^(-4) 1e0])
7 D  d' c4 j; {. s: |" a% y: K& Vend
8 i& {  u/ t' R% e$ t* xtitle('BER peRFoemancde of MRC Scheme')% F+ b. S+ @% ?& d0 i0 _% |# d; O
xlabel('SNR[dB]'),ylabel('BER'), `+ R7 q' {( |7 a+ [
grid on,set(gca,'fontsize',9). t) s1 t( M7 y8 A4 q7 _3 W
legend('SISO','MRC(Tx:1,Rx:2)','MRC(Tx:1,Rx:4)')
8 K4 M; T! u- m& }7 ?# V* ?

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-5 01:12 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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