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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本人菜鸟,第一次接触matlab程序画流程图,不知道该如何按照这个程序画流程图, 尤其是这个程序里用了很多for循环, 比较迷茫……麻烦大神指点一下,非常感谢!
7 k3 a0 b, ^! o% L) p% j6 h1 J%MRC_scheme.m5 M( X9 ~% W  \8 D
%接收分集-MRC+ _  B( z* R" x* @7 S
clear,clf3 n1 s. `4 B* v' n
L_frame=130;; Q( S+ [# k) R. f" U
N_packet=4000;%130个编码后符号,仿真4000组
* r0 q* P0 n3 t* S% }5 D+ _b=4;%设置为1/2/3/4对应于BPSK/QPSK/8PSK/16-QAM
! E, ]! P/ A* C& m: x1 {( V% YSNRdBs=[0:2:20];
" |# |$ J: E! N) d. P6 qsq2=sqrt(2);$ b" I$ w3 X- l) y
for iter=1:3
4 M  f7 n5 R9 G8 ^    if iter==1
$ m) n' x! l% ]7 I  O6 S        NT=1;03 Z/ X! F: B2 I* o# B: y. N
        NR=1;%SISO
1 S: E! N# \* ~- b  B/ f        gs='-kx';# I8 a- Z6 R3 J1 Q8 S9 m" a
    elseif iter==26 |4 Y' @! y6 m- j* v: I
        NT=1;
/ x4 q' M1 i- o* V        NR=2;% 1发2收
- I0 `( M( E5 |        gs='-^';) l) y' E% `5 z5 r7 T
    else
3 e9 x4 l+ `& @0 ?% [% J% @; M. j        NT=1;7 e: K/ T; A/ `( k8 _9 a' }) Q9 `
        NR=4;% 1发4收) Y: W- M  C. D* P
        gs='-ro';$ W' [% L' f! |) M! b1 W7 k7 i5 A
    end
6 @$ a) Z% q% K0 K7 o3 b    sq_NT=sqrt(NT);
, _: e7 ]% P2 `" A% r    for i_SNR=1:length(SNRdBs): k( G$ B6 Q- W; Z7 }3 e  s& d
        SNRdB=SNRdBs(i_SNR);
6 G6 U$ Y! A4 b! B3 e        sigma=sqrt(0.5/(10^(SNRdB/10)));%瑞利分布参数,噪声标准差# ^2 L7 |& j: k6 r1 Z
        for i_packet=1:N_packet
- ~/ p, D. A3 k' b            symbol_data=randint(L_frame*b,NT); %产生L_frame*b行NT列二进制信息
1 S5 @% I  J7 H5 y& z            [temp,sym_tab,P]=modulator(symbol_data.',b);%调制' l+ U# V  w$ a  t) F3 I( Y
            X=temp.';%X为调制后序列(L_frame行1列)
7 W: a, z% j, }4 z- W: Z6 t            Hr=(randn(L_frame,NR)+j*randn(L_frame,NR))/sq2;%瑞利信道衰落系数
: w& h+ m2 }: J" ^" {5 ^            H=reshape(Hr,L_frame,NR);%重置Hr行列(L_frame行NR列)
' h. I- d0 y* f  }! Q            Habs=sum(abs(H).^2,2);
0 T' j" h1 a, h1 B! A: h5 |            Z=0;& h& o7 d5 |+ y9 M+ k  h" I
            for i=1:NR' S( w! W% W9 R# K' `3 K. g
                R(:,i)=sum(H(:,i).*X,2)/sq_NT+...* S; D# i" y5 t( U4 m: A) Q
                    sigma*(randn(L_frame,1)+j*randn(L_frame,1)); %经过瑞利信道并加复高斯白噪声
) c/ U/ P, o/ Q( {: }$ j& g                Z=Z+R(:,i).*conj(H(:,i));%MRC合并,合并系数为conj(H(:,i))
9 |6 L$ w: `% I, V* T$ G" Y! r            end' [5 t2 ]+ S3 n0 x. Q: k
            for m=1 %最大似然译码
, \7 I3 H- _8 U! \, I( u' S                dl(:,m)=abs(sum(Z,2)-sym_tab(m)).^2+...( b  K0 a/ K' s; j6 j/ w
                    (-1+sum(Habs,2))*abs(sym_tab(m))^2;
5 f$ O8 U/ K: p( ^0 f5 F            end; O2 h1 c; k: \4 P% f( X4 u& H
            [y1,i1]=min(dl,[],2);( Y! H( g/ [2 i/ J9 [8 _
            Xd=sym_tab(i1).';
0 E, K" [3 g" z# i* u  x            temp1=X>0;8 L4 q1 f) @3 G; g5 q5 h& {
            temp2=Xd>0;$ g" U6 z9 E9 G) f& k# h
            noeb_p(i_packet)=sum(sum(temp1~=temp2));%累加错误比特
. y& @" H  B! [! ^) P% M0 t        end8 h/ t, a3 `0 g7 T# {% T! K$ _
        BER(iter,i_SNR)=sum(noeb_p)/(N_packet*L_frame*b);%计算误比特率
4 b1 n9 U; R" @    end" H9 _' v3 o6 d* T3 [+ [
    semilogy(SNRdBs,BER(iter,,gs),hold on1 ?1 T8 }  s% M$ X
    axis([SNRdBs([1 end]) 0.5*10^(-4) 1e0])
$ Q' o/ \! g3 b6 `2 Qend5 V' O0 k8 K9 [' h
title('BER peRFoemancde of MRC Scheme')( ^) @' F" B  ?2 J4 }0 D) h4 t! d
xlabel('SNR[dB]'),ylabel('BER')4 h' O) ~# X5 v( b
grid on,set(gca,'fontsize',9)( M. u/ p, k% S$ i$ D8 `8 A) `- b
legend('SISO','MRC(Tx:1,Rx:2)','MRC(Tx:1,Rx:4)')0 s  L1 a  H" e6 \( t5 }

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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