⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qpswnymf.mdl

📁 这些都是通信系统仿真与分析一书的源代码
💻 MDL
📖 第 1 页 / 共 5 页
字号:
". The comparison happens only at the sampling point."
      MaskPromptString	      "Bit per symbol:|Number of digits on display:|De"
"lay between 1st port and 2nd port:|Sample time (sec):"
      MaskStyleString	      "edit,edit,edit,edit"
      MaskTunableValueString  "on,on,on,on"
      MaskCallbackString      "|||"
      MaskEnableString	      "on,on,on,on"
      MaskVisibilityString    "on,on,on,on"
      MaskToolTipString	      "on,on,on,on"
      MaskVarAliasString      ",,,"
      MaskInitialization      "K=@1;num_lin=@2;TDelay=@3;Sample=@4;"
      MaskDisplay	      "disp('Error\\nmeter')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      MaskValueString	      "2|10|12|1"
      System {
	Name			"Error rate"
	Location		[255, 368, 509, 510]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "in_1"
	  Position		  [15, 45, 35, 65]
	}
	Block {
	  BlockType		  Inport
	  Name			  "in_2"
	  Position		  [15, 60, 35, 80]
	  Port			  "2"
	}
	Block {
	  BlockType		  Mux
	  Name			  "Mux"
	  Ports			  [2, 1]
	  Position		  [65, 46, 100, 79]
	  Inputs		  "2"
	}
	Block {
	  BlockType		  "S-Function"
	  Name			  "S-function"
	  Ports			  [1]
	  Position		  [130, 52, 195, 78]
	  FunctionName		  "sbiterr"
	  Parameters		  "num_lin, K, TDelay, Sample"
	}
	Line {
	  SrcBlock		  "Mux"
	  SrcPort		  1
	  DstBlock		  "S-function"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "in_1"
	  SrcPort		  1
	  DstBlock		  "Mux"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "in_2"
	  SrcPort		  1
	  DstBlock		  "Mux"
	  DstPort		  2
	}
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "Receiver"
      Ports		      [1, 1]
      Position		      [650, 62, 725, 148]
      ShowPortLabels	      off
      TreatAsAtomicUnit	      off
      System {
	Name			"Receiver"
	Location		[11, 423, 1019, 701]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "noisy\nQPSK-\nsignal"
	  Position		  [25, 145, 45, 165]
	}
	Block {
	  BlockType		  Clock
	  Name			  "Clock"
	  Position		  [145, 140, 165, 160]
	  ShowName		  off
	  Decimation		  "10"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Fcn"
	  Position		  [185, 119, 265, 141]
	  ShowName		  off
	  Expr			  "2*cos(4*pi*u)"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Fcn1"
	  Position		  [185, 159, 265, 181]
	  ShowName		  off
	  Expr			  "-2*sin(4*pi*u)"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain1"
	  Position		  [510, 212, 535, 238]
	  ShowName		  off
	  Gain			  "1/4"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain2"
	  Position		  [510, 77, 535, 103]
	  ShowName		  off
	  Gain			  "1/4"
	}
	Block {
	  BlockType		  Product
	  Name			  "Product"
	  Ports			  [2, 1]
	  Position		  [300, 74, 330, 101]
	  ShowName		  off
	}
	Block {
	  BlockType		  Product
	  Name			  "Product1"
	  Ports			  [2, 1]
	  Position		  [295, 213, 325, 237]
	  ShowName		  off
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "QPSK demap"
	  Ports			  [2, 1]
	  Position		  [795, 124, 870, 171]
	  TreatAsAtomicUnit	  off
	  MaskType		  "MPSK demapping"
	  MaskDescription	  "Reverse the QASK map. Input in-phase\nand q"
"uadrature components from the\ntwo inputs. Output demapped signal."
	  MaskHelp		  "This block demaps a QASK mapped signal usin"
"g circle constellation. You can place this block after a QAM demodulation blo"
"ck. The circle constellation is defined in NIC, RIC, and PIC. The symbol inte"
"rval can be a two elements vector with the first element being offset. The de"
"fault offset is zero. Use function MODMAP to view the constellation."
	  MaskPromptString	  "Number of symbols on each circle NIC::|Radi"
"i for each circle RIC:|Phase shift on each circle PIC (rad):|Symbol interval "
"and offset (sec):"
	  MaskStyleString	  "edit,edit,edit,edit"
	  MaskTunableValueString  "on,on,on,on"
	  MaskCallbackString	  "|||"
	  MaskEnableString	  "on,on,on,on"
	  MaskVisibilityString	  "on,on,on,on"
	  MaskToolTipString	  "on,on,on,on"
	  MaskVarAliasString	  ",,,"
	  MaskVariables		  "N=@1;A=@2;P=@3;td=@4;"
	  MaskInitialization	  "y1=apkconst(N,A,P);y2=imag(y1);y1=real(y1);"
	  MaskDisplay		  "disp('MPSK\\ndemapping')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  MaskValueString	  "[4]|[sqrt(2)]|[pi/4]|1"
	  System {
	    Name		    "QPSK demap"
	    Location		    [104, 488, 602, 788]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "real"
	      Position		      [20, 45, 40, 65]
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "imag"
	      Position		      [20, 130, 40, 150]
	      Port		      "2"
	    }
	    Block {
	      BlockType		      "S-Function"
	      Name		      "Minimum1"
	      Ports		      [1, 1]
	      Position		      [390, 95, 450, 115]
	      FunctionName	      "arymimai"
	      Parameters	      "'min'"
	    }
	    Block {
	      BlockType		      Product
	      Name		      "Product"
	      Ports		      [2, 1]
	      Position		      [275, 55, 300, 75]
	    }
	    Block {
	      BlockType		      Product
	      Name		      "Product1"
	      Ports		      [2, 1]
	      Position		      [275, 140, 300, 160]
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum1"
	      Ports		      [2, 1]
	      Position		      [205, 48, 225, 77]
	      ForegroundColor	      "red"
	      Inputs		      "+-"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum2"
	      Ports		      [2, 1]
	      Position		      [345, 88, 365, 117]
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum6"
	      Ports		      [2, 1]
	      Position		      [205, 133, 225, 162]
	      ForegroundColor	      "blue"
	      Inputs		      "+-"
	    }
	    Block {
	      BlockType		      ZeroOrderHold
	      Name		      "Zero-Order\nHold"
	      Position		      [95, 39, 130, 71]
	      ForegroundColor	      "red"
	      SampleTime	      "td"
	    }
	    Block {
	      BlockType		      ZeroOrderHold
	      Name		      "Zero-Order\nHold1"
	      Position		      [95, 124, 130, 156]
	      ForegroundColor	      "blue"
	      SampleTime	      "td"
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "imag_pt"
	      Position		      [140, 179, 165, 201]
	      BackgroundColor	      "yellow"
	      Value		      "y2"
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "real_pt"
	      Position		      [145, 94, 170, 116]
	      BackgroundColor	      "green"
	      Value		      "y1"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [470, 95, 490, 115]
	    }
	    Line {
	      SrcBlock		      "Minimum1"
	      SrcPort		      1
	      DstBlock		      "out_1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Sum2"
	      SrcPort		      1
	      DstBlock		      "Minimum1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Product1"
	      SrcPort		      1
	      Points		      [10, 0; 0, -40]
	      DstBlock		      "Sum2"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Product"
	      SrcPort		      1
	      Points		      [10, 0; 0, 30]
	      DstBlock		      "Sum2"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Sum6"
	      SrcPort		      1
	      Points		      [0, 0; 15, 0]
	      Branch {
		Points			[0, 5]
		DstBlock		"Product1"
		DstPort			2
	      }
	      Branch {
		Points			[0, -5]
		DstBlock		"Product1"
		DstPort			1
	      }
	    }
	    Line {
	      SrcBlock		      "Sum1"
	      SrcPort		      1
	      Points		      [0, 0; 15, 0]
	      Branch {
		Points			[0, 5]
		DstBlock		"Product"
		DstPort			2
	      }
	      Branch {
		Points			[0, -5]
		DstBlock		"Product"
		DstPort			1
	      }
	    }
	    Line {
	      SrcBlock		      "imag_pt"
	      SrcPort		      1
	      Points		      [10, 0; 0, -35]
	      DstBlock		      "Sum6"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Zero-Order\nHold1"
	      SrcPort		      1
	      DstBlock		      "Sum6"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Zero-Order\nHold"
	      SrcPort		      1
	      DstBlock		      "Sum1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "real_pt"
	      SrcPort		      1
	      Points		      [5, 0; 0, -35]
	      DstBlock		      "Sum1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "imag"
	      SrcPort		      1
	      DstBlock		      "Zero-Order\nHold1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "real"
	      SrcPort		      1
	      DstBlock		      "Zero-Order\nHold"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Rolloff"
	  Ports			  []
	  Position		  [415, 29, 527, 51]
	  BackgroundColor	  "lightBlue"
	  ShowName		  off
	  OpenFcn		  "setrloff"
	  FontSize		  12
	  FontAngle		  "italic"
	  ShowPortLabels	  off
	  TreatAsAtomicUnit	  off
	  MaskType		  "rolloff"
	  MaskDisplay		  "disp('Rolloff-Factor')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Rolloff"
	    Location		    [136, 230, 381, 439]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "cyan"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "A4"
	    PaperUnits		    "centimeters"
	    ZoomFactor		    "100"
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Root-RC\nreceive filter"
	  Ports			  [1, 1]
	  Position		  [410, 68, 490, 112]
	  ShowPortLabels	  off
	  TreatAsAtomicUnit	  off
	  MaskType		  "R-C filter"
	  MaskDescription	  "Design a raised cosine filter and use it to"
" filter the input signal."
	  MaskHelp		  "This block designs a raised cosine filter u"
"sing the specified parameter. The filter is used to filter the input signal. "
"You can optionally use the sinc filter in the filtering computation."
	  MaskPromptString	  "Symbol interval (sec):|Computation sampling"
" time (sec):|Filter rolloff factor:|Delay step (integer to multiply symbol in"
"terval):|Filter type (FIR or IIR) / (Normal or Sqrt):|With or without sinc fi"
"lter (1 or 0, suggest 1):"
	  MaskStyleString	  "edit,edit,edit,edit,edit,edit"
	  MaskTunableValueString  "on,on,on,on,on,on"
	  MaskCallbackString	  "|||||"
	  MaskEnableString	  "on,on,on,on,on,on"
	  MaskVisibilityString	  "on,on,on,on,on,on"
	  MaskToolTipString	  "on,on,on,on,on,on"
	  MaskVarAliasString	  ",,,,,"
	  MaskInitialization	  "td=@1;if length(td)>1,off=td(2);td=td(1);el"
"se,off=0;end;ts=@2;R=@3;delay=@4;fil=@5;[num,den]=rcosine(1/td(1),1/ts(1),fil"
",R,delay);x=@6/2;"
	  MaskDisplay		  "disp('R-C\\nfilter')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  MaskValueString	  "1|.05|.5|6|'FIR/Sqrt'|0"
	  System {
	    Name		    "Root-RC\nreceive filter"
	    Location		    [131, 545, 589, 761]
	    Open		    off
	    ModelBrowserVisibility  off

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -