📄 oqpwnymf.mdl
字号:
Block {
BlockType SubSystem
Name "QPSK demap"
Ports [2, 1]
Position [805, 124, 880, 171]
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents 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 0.5]"
MaskTabNameString ",,,"
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"
TiledPaperMargins [0.196850, 0.196850, 0.196850, 0.196850]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "real"
Position [20, 45, 40, 65]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "imag"
Position [20, 130, 40, 150]
Port "2"
IconDisplay "Port number"
}
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"
VectorParams1D on
SamplingMode "Sample based"
OutDataTypeMode "Inherit from 'Constant value'"
OutDataType "sfix(16)"
ConRadixGroup "Use specified scaling"
OutScaling "2^0"
SampleTime "inf"
FramePeriod "inf"
}
Block {
BlockType Constant
Name "real_pt"
Position [145, 94, 170, 116]
BackgroundColor "green"
Value "y1"
VectorParams1D on
SamplingMode "Sample based"
OutDataTypeMode "Inherit from 'Constant value'"
OutDataType "sfix(16)"
ConRadixGroup "Use specified scaling"
OutScaling "2^0"
SampleTime "inf"
FramePeriod "inf"
}
Block {
BlockType Outport
Name "out_1"
Position [470, 95, 490, 115]
IconDisplay "Port number"
}
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 [475, 33, 575, 56]
BackgroundColor "lightBlue"
ShowName off
OpenFcn "setrloff"
FontSize 12
FontAngle "italic"
ShowPortLabels off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents 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"
TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
}
}
Block {
BlockType SubSystem
Name "Root-RC\nreceive filter"
Ports [1, 1]
Position [475, 68, 555, 112]
ShowPortLabels off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents 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 .4999]|.05|.5|6|'FIR/Sqrt'|0"
MaskTabNameString ",,,,,"
System {
Name "Root-RC\nreceive filter"
Location [131, 545, 589, 761]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
TiledPaperMargins [0.196850, 0.196850, 0.196850, 0.196850]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "in_1"
Position [35, 30, 55, 50]
IconDisplay "Port number"
}
Block {
BlockType DiscreteFilter
Name "Filter"
Position [255, 31, 310, 69]
Numerator "num"
Denominator "den"
SampleTime "ts"
}
Block {
BlockType SubSystem
Name "Memory Impulse"
Ports [2, 1]
Position [155, 30, 225, 70]
ShowPortLabels off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents off
MaskType "Impulse"
MaskDescription "1/sinc filter:"
MaskHelp "When the threshold is greater than zero"
", this block outputs an impulse signal, which begins at the raising edge of t"
"he second input and lasts the holding time. The impulse holds a constant ampl"
"itude, which equals the amplitude of the first input at the begining of the i"
"mpulse. A clock raising edge will trigger next impulse. When the threshold is"
" less or equal to zero, this block faithfully outputs the first input."
MaskPromptString "Holding time:|Threshold for clock pulse"
": "
MaskStyleString "edit,edit"
MaskTunableValueString "on,on"
MaskCallbackString "|"
MaskEnableString "on,on"
MaskVisibilityString "on,on"
MaskToolTipString "on,on"
MaskVarAliasString ","
MaskInitialization "ts=@1;thr=@2;x=thr>0;"
MaskDisplay "disp('1/sinc')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "ts|x"
MaskTabNameString ","
System {
Name "Memory Impulse"
Location [541, 520, 939, 745]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
TiledPaperMargins "[0.196850, 0.196850, 0.196850, 0.1968"
"50]"
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "in_1"
Position [35, 185, 55, 205]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "in_2"
Position [25, 30, 45, 50]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Constant
Name "Constant"
Position [210, 155, 230, 175]
Value "x"
VectorParams1D on
SamplingMode "Sample based"
OutDataTypeMode "Inherit from 'Constant value'"
OutDataType "sfix(16)"
ConRadixGroup "Use specified scaling"
OutScaling "2^0"
SampleTime "inf"
FramePeriod "inf"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [155, 90, 180, 110]
}
Block {
BlockType Switch
Name "Switch"
Position [295, 124, 320, 156]
Threshold ".5"
}
Block {
BlockType ZeroOrderHold
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -