📄 pwm_and_servo.mdl
字号:
MaskPromptString "Sample time|Resolution |PWM period (8"
"-bit : up to 0.699 s, 16-bit : up to 179 s)|Pulse pin (PTP) |Sign port "
" |Sign pin |Saturation input level [simulated voltag"
"e]|Signal monitoring"
MaskStyleString "edit,popup(8 bit|16 bit),edit,popup(0 (8-bit)|"
"1 (8-bit / 16-bit)|2 (8-bit)|3 (8-bit / 16-bit)|4 (8-bit)|5 (8-bit / 16-"
"bit)|6 (8-bit)|7 (8-bit / 16-bit)),popup(PORTA|PORTB|PTH|PTJ|PTM|PTP|PTT|PT"
"S),popup(0|1|2|3|4|5|6|7),edit,checkbox"
MaskTunableValueString "on,on,on,off,off,off,on,on"
MaskCallbackString "|||||||"
MaskEnableString "on,on,on,on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on,on,on,on"
MaskToolTipString "on,on,on,on,on,on,on,on"
MaskVarAliasString ",,,,,,,"
MaskVariables "sampletime=@1;resolution=@2;PWMper=@3;pulse_pin"
"=@4;sign_port=@5;sign_pin=@6;Vmax=@7;sig_mon=@8;"
MaskInitialization "[pulsepinstr, signportstr, signpinstr, periodst"
"r, clkABstr, resstr] = mbc_pwmoutput(sampletime, resolution, PWMper, pulse_pi"
"n, sign_port, sign_pin, Vmax, sig_mon);"
MaskDisplay "fprintf('PWM-%s, %s-bit\\nPulse pin: PTP.%s\\nS"
"ign pin: %s.%s\\nPeriod: %s (s)\\nSaturation: %d', clkABstr, resstr, pulsepin"
"str, signportstr, signpinstr, periodstr, Vmax)"
MaskSelfModifiable on
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "0.01 |16 bit|1|1 (8-bit / 16-bit)|PTH|1|100|of"
"f"
System {
Name "Pulse width modulation"
Location [440, 403, 875, 514]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [50, 40, 70, 60]
FontSize 12
}
Block {
BlockType "S-Function"
Name "MC"
Tag "MC9S12target_pwm"
Ports [1]
Position [140, 30, 255, 70]
List {
ListType RTWdata
pulsepinStr "1"
pulsepinMask "2"
signportStr "PTH"
signportddrStr "DDRH"
signpinMask "2"
signpinStr "1"
resolutionStr "16"
CLKselectStr "0"
useSCLStr "1"
PCKStr "7"
PWMSCLStr "184"
PERIODStr "510"
}
FontSize 12
FunctionName "pwm_sfcn_9S12"
Parameters "sampletime, PWMper, pulse_pin, sign_port, s"
"ign_pin, Vmax, sig_mon"
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "MC"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Pulse width modulation2"
Ports [1]
Position [395, 117, 525, 193]
AncestorBlock "mc9S12tool/Pulse width modulation"
FontSize 12
TreatAsAtomicUnit off
MaskHelp "helpview('C:\\Documents and Settings\\fwornle\\"
"My Documents\\frank\\_cProgs\\Motorola\\rtmc9S12_CW_R13\\bin\\mc9S12.map', 'm"
"c9S12_PWM_In_blkref')"
MaskPromptString "Sample time|Resolution |PWM period (8"
"-bit : up to 0.699 s, 16-bit : up to 179 s)|Pulse pin (PTP) |Sign port "
" |Sign pin |Saturation input level [simulated voltag"
"e]|Signal monitoring"
MaskStyleString "edit,popup(8 bit|16 bit),edit,popup(0 (8-bit)|"
"1 (8-bit / 16-bit)|2 (8-bit)|3 (8-bit / 16-bit)|4 (8-bit)|5 (8-bit / 16-"
"bit)|6 (8-bit)|7 (8-bit / 16-bit)),popup(PORTA|PORTB|PTH|PTJ|PTM|PTP|PTT|PT"
"S),popup(0|1|2|3|4|5|6|7),edit,checkbox"
MaskTunableValueString "on,on,on,off,off,off,on,on"
MaskCallbackString "|||||||"
MaskEnableString "on,on,on,on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on,on,on,on"
MaskToolTipString "on,on,on,on,on,on,on,on"
MaskVarAliasString ",,,,,,,"
MaskVariables "sampletime=@1;resolution=@2;PWMper=@3;pulse_pin"
"=@4;sign_port=@5;sign_pin=@6;Vmax=@7;sig_mon=@8;"
MaskInitialization "[pulsepinstr, signportstr, signpinstr, periodst"
"r, clkABstr, resstr] = mbc_pwmoutput(sampletime, resolution, PWMper, pulse_pi"
"n, sign_port, sign_pin, Vmax, sig_mon);"
MaskDisplay "fprintf('PWM-%s, %s-bit\\nPulse pin: PTP.%s\\nS"
"ign pin: %s.%s\\nPeriod: %s (s)\\nSaturation: %d', clkABstr, resstr, pulsepin"
"str, signportstr, signpinstr, periodstr, Vmax)"
MaskSelfModifiable on
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "0.01 |8 bit|0.5|4 (8-bit)|PTH|2|100|off"
System {
Name "Pulse width modulation2"
Location [440, 403, 875, 514]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [50, 40, 70, 60]
FontSize 12
}
Block {
BlockType "S-Function"
Name "MC"
Tag "MC9S12target_pwm"
Ports [1]
Position [140, 30, 255, 70]
List {
ListType RTWdata
pulsepinStr "4"
pulsepinMask "16"
signportStr "PTH"
signportddrStr "DDRH"
signpinMask "4"
signpinStr "2"
resolutionStr "8"
CLKselectStr "0"
useSCLStr "1"
PCKStr "7"
PWMSCLStr "184"
PERIODStr "255"
}
FontSize 12
FunctionName "pwm_sfcn_9S12"
Parameters "sampletime, PWMper, pulse_pin, sign_port, s"
"ign_pin, Vmax, sig_mon"
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "MC"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Servo Motor PWM1"
Ports [1]
Position [390, 239, 530, 321]
FontSize 12
TreatAsAtomicUnit off
MaskHelp "helpview('C:\\Freescale\\rtmc9S12_CW_R13\\bin\\"
"mc9S12.map', 'mc9S12_servoPWM_In_blkref')"
MaskPromptString "Sample time|PWM period (16-bit : up to 179 s)|M"
"inimum pulse width|Maximum pulse width|Resolution |Pulse pin (PTP) "
" |Saturation input level [simulated voltage]"
MaskStyleString "edit,edit,edit,edit,popup(8 bit|16 bit),popup(0"
" (8-bit)|1 (8-bit / 16-bit)|2 (8-bit)|3 (8-bit / 16-bit)|4 (8-bit)|5 (8"
"-bit / 16-bit)|6 (8-bit)|7 (8-bit / 16-bit)),edit"
MaskTunableValueString "on,on,on,on,on,off,on"
MaskCallbackString "||||||"
MaskEnableString "on,on,on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on,on,on"
MaskToolTipString "on,on,on,on,on,on,on"
MaskVarAliasString ",,,,,,"
MaskVariables "sampletime=@1;PWMperiod=@2;minwidth=@3;maxwidth"
"=@4;resolution=@5;pulse_pin=@6;Vmax=@7;"
MaskInitialization "[pulsepinstr, periodstr, clkABstr, resolutionst"
"r] = mbc_servopwmoutput(sampletime, PWMperiod, minwidth, maxwidth, resolution"
", pulse_pin, Vmax);\n"
MaskDisplay "fprintf('Servo motor PWM\\n(PWM clk: %s, %s-bit"
")\\nPeriod: %s\\nPulse pin: PTP.%s\\nSaturation: %d', clkABstr, resolutionstr"
", periodstr, pulsepinstr, Vmax)"
MaskSelfModifiable on
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "0.02|0.02|0.0006|0.0020|16 bit|3 (8-bit / 16-b"
"it)|1"
System {
Name "Servo Motor PWM1"
Location [440, 403, 875, 514]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [50, 40, 70, 60]
FontSize 12
}
Block {
BlockType "S-Function"
Name "servo pwm"
Tag "MC9S12target_pwm"
Ports [1]
Position [140, 30, 295, 70]
List {
ListType RTWdata
pulsepinStr "3"
pulsepinMask "8"
resolutionStr "16"
CLKselectStr "1"
useSCLStr "1"
PCKStr "0"
PWMSCLStr "4"
dutyMINStr "1800"
dutyMAXStr "6000"
PERIODStr "1800"
}
FontSize 12
FunctionName "servo_pwm_sfcn_9S12"
Parameters "sampletime, PWMperiod, pulse_pin, Vmax"
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "servo pwm"
DstPort 1
}
}
}
Block {
BlockType Reference
Name "Slider\nGain1"
Ports [1, 1]
Position [240, 263, 290, 297]
FontSize 12
SourceBlock "simulink/Math\nOperations/Slider\nGain"
SourceType "Slider Gain"
low "0"
gain "0.731"
high "1"
}
Line {
SrcBlock "Gain"
SrcPort 1
DstBlock "Pulse width modulation"
DstPort 1
}
Line {
SrcBlock "Constant"
SrcPort 1
DstBlock "Gain"
DstPort 1
}
Line {
SrcBlock "Gain2"
SrcPort 1
DstBlock "Pulse width modulation2"
DstPort 1
}
Line {
SrcBlock "Constant2"
SrcPort 1
DstBlock "Gain2"
DstPort 1
}
Line {
SrcBlock "Constant1"
SrcPort 1
DstBlock "Slider\nGain1"
DstPort 1
}
Line {
SrcBlock "Slider\nGain1"
SrcPort 1
DstBlock "Servo Motor PWM1"
DstPort 1
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -