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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本人菜鸟,第一次接触matlab程序画流程图,不知道该如何按照这个程序画流程图, 尤其是这个程序里用了很多for循环, 比较迷茫……麻烦大神指点一下,非常感谢!
+ ^# t" i% F- s: U! Z%MRC_scheme.m0 |& n8 g! D8 v! O
%接收分集-MRC  c& v5 C% v7 q: C9 |* R
clear,clf
. F# P7 P" s+ \) ^& DL_frame=130;# |' u. [7 e0 B
N_packet=4000;%130个编码后符号,仿真4000组
9 d! i+ }1 p  ]% M* F8 X$ L. sb=4;%设置为1/2/3/4对应于BPSK/QPSK/8PSK/16-QAM& i$ S2 D: f6 h5 [0 E) d- |
SNRdBs=[0:2:20];
+ ^$ A3 O+ I3 m5 r7 Jsq2=sqrt(2);
5 B. Y* G/ }" p% afor iter=1:3+ {! {4 k1 t7 n5 ~6 `
    if iter==1! B2 N, c4 }/ h# c8 h1 L$ A7 J2 @8 [
        NT=1;02 q( }- B9 L) [
        NR=1;%SISO
) l% d! x8 L1 x4 `$ x% J        gs='-kx';
4 q" S, f) T+ o) ]" G5 Y  y" ~    elseif iter==2
! s+ D+ n3 |* `3 o! u$ C2 k! p        NT=1;0 i  o& L  \5 L6 i
        NR=2;% 1发2收
3 m. s; T, C; J. Y- t3 F' J8 `        gs='-^';2 @9 Y8 d( D) M, c7 k: ?
    else& }, k* h6 e% b" Z+ q
        NT=1;2 o' v( w/ n. A$ p* I  S' F
        NR=4;% 1发4收
, Z7 B0 f( _9 @2 C3 n. l/ B        gs='-ro';
" Y- O/ z2 R# C' o) g) \    end
8 i, l5 z; P* _! h    sq_NT=sqrt(NT);
" ]/ _) N! ]: E. {    for i_SNR=1:length(SNRdBs)
1 B% n7 R* }6 V        SNRdB=SNRdBs(i_SNR);
8 u0 b! @9 y/ w" U0 Y        sigma=sqrt(0.5/(10^(SNRdB/10)));%瑞利分布参数,噪声标准差
: ~8 m4 l: b* m. e* e: U7 p0 H        for i_packet=1:N_packet
* v$ `$ O9 j5 y            symbol_data=randint(L_frame*b,NT); %产生L_frame*b行NT列二进制信息* E5 Z/ r3 i; \( Y
            [temp,sym_tab,P]=modulator(symbol_data.',b);%调制
; P/ S( M% J$ F( H6 t            X=temp.';%X为调制后序列(L_frame行1列)( a0 u4 l, a+ X3 I1 V4 L
            Hr=(randn(L_frame,NR)+j*randn(L_frame,NR))/sq2;%瑞利信道衰落系数0 W- U+ p, _3 S
            H=reshape(Hr,L_frame,NR);%重置Hr行列(L_frame行NR列)
* G7 j2 ~$ I- J3 m            Habs=sum(abs(H).^2,2);
4 J7 [5 W0 P2 J) m+ C            Z=0;6 @7 g# g  F+ R* E. b
            for i=1:NR
# T+ ^  n. _5 a: {                R(:,i)=sum(H(:,i).*X,2)/sq_NT+...
2 T9 R" o, o7 O) X, }" t9 R                    sigma*(randn(L_frame,1)+j*randn(L_frame,1)); %经过瑞利信道并加复高斯白噪声
2 q" h% h1 n  F% z. s2 u2 [                Z=Z+R(:,i).*conj(H(:,i));%MRC合并,合并系数为conj(H(:,i))
) P- N/ C% s, M3 n8 v            end, N% k7 G) c! k  m3 W" X
            for m=1 %最大似然译码
# E4 g0 [- b+ k0 s0 Q2 {. Y                dl(:,m)=abs(sum(Z,2)-sym_tab(m)).^2+...
. ^1 C$ T. o& E3 R& b* x                    (-1+sum(Habs,2))*abs(sym_tab(m))^2;
$ u+ X& @3 @$ k- h6 @: Z5 g; e% e            end) ^4 H! W/ |7 f" G. t" R+ G% U
            [y1,i1]=min(dl,[],2);
( \0 `' Z" t& i1 L; r/ z            Xd=sym_tab(i1).';3 w! L) I; x5 D4 U; W; P' K
            temp1=X>0;$ c/ G$ l! P4 a: @' m- }* \
            temp2=Xd>0;' f' o* P; s+ M7 `3 k
            noeb_p(i_packet)=sum(sum(temp1~=temp2));%累加错误比特
, s9 r* i. i4 @! N+ T        end/ c+ Z7 H( Q8 W% K; ?
        BER(iter,i_SNR)=sum(noeb_p)/(N_packet*L_frame*b);%计算误比特率/ c# E2 J0 t* k9 {8 g
    end6 K% W5 d: d# k
    semilogy(SNRdBs,BER(iter,,gs),hold on
2 |' b# S! }$ n0 {    axis([SNRdBs([1 end]) 0.5*10^(-4) 1e0])
/ _' h- n* z$ B) ]6 R' Bend
& k1 C- _5 n  D. h! |+ T/ ytitle('BER peRFoemancde of MRC Scheme')
6 U2 h2 g6 d; r6 |5 Wxlabel('SNR[dB]'),ylabel('BER')/ S6 O* p4 f* F$ o" E# M  Q
grid on,set(gca,'fontsize',9)
# m: {( E+ d1 Dlegend('SISO','MRC(Tx:1,Rx:2)','MRC(Tx:1,Rx:4)')
8 a3 ]4 [* w- M6 J! I

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-6 13:16 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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