📄 testbcirobot3b.mdl
字号:
Name "Constant1"
Position [125, 100, 155, 130]
Orientation "left"
ShowName off
}
Block {
BlockType SubSystem
Name "FreePortComms_TX"
Tag "MC9S12Target_FreePortCom"
Ports [1]
Position [380, 29, 540, 131]
AncestorBlock "mc9S12tool/Send user data"
FontSize 12
ShowPortLabels off
TreatAsAtomicUnit off
MaskHelp "helpview('C:\\Documents and Settings\\fworn"
"le\\My Documents\\frank\\_cProgs\\Motorola\\rtmc9S12_CW_R13\\bin\\mc9S12.map'"
", 'mc9S12_FPRXD_In_blkref')"
MaskPromptString "Sample time|Communication port|Baudrate|Cha"
"nnel number|Number of elements|Data Type|Block sends raw data"
MaskStyleString "edit,popup(SCI0|SCI1|COM1|COM2|COM3|COM4),p"
"opup(300|600|1200|2400|4800|9600|19200|38400|57600|115200),edit,edit,popup(SI"
"NGLE|INT8|UINT8|INT16|UINT16|INT32|UINT32|BOOLEAN),checkbox"
MaskTunableValueString "on,on,on,on,on,on,on"
MaskCallbackString "||||||"
MaskEnableString "on,on,on,on,on,on,on"
MaskVisibilityString "on,on,on,off,on,off,on"
MaskToolTipString "on,on,on,on,on,on,on"
MaskVarAliasString ",,,,,,"
MaskVariables "sampletime=@1;port=@2;baudrate=@3;channel=@"
"4;buf_size=@5;data_type=@6;format=@7;"
MaskInitialization "[buf_sizestr, portNamestr, baudratestr, cha"
"nnelstr, data_type_str, sampletime_str] = mbc_freeporttxd(sampletime, port, b"
"audrate, channel, buf_size, data_type, format);\n"
MaskDisplay "fprintf('Transmit %s element(s)\\nComm port"
": %s\\nBaudrate: %s bps\\nChannel: %s\\nData type: %s\\n Sample rate: %s', bu"
"f_sizestr, portNamestr, baudratestr, channelstr, data_type_str, sampletime_st"
"r)"
MaskSelfModifiable on
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "0.1|SCI1|115200|0|1|UINT8|on"
System {
Name "FreePortComms_TX"
Location [542, 167, 996, 332]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [45, 60, 65, 80]
FontSize 12
}
Block {
BlockType DataTypeConversion
Name "Data Type Conversion"
Position [160, 56, 215, 84]
DataType "uint8"
}
Block {
BlockType "S-Function"
Name "SEND_VIA_FREE_PORT"
Tag "MC9S12target"
Ports [1]
Position [280, 49, 420, 91]
List {
ListType RTWdata
portStr "1"
portNameStr "SCI1"
baudrateStr "115200"
formatStr "1"
}
FontSize 12
FunctionName "freePortComms_txd"
Parameters "sampletime, channel, buf_size, data_typ"
"e, port, baudrate, format"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Data Type Conversion"
DstPort 1
}
Line {
SrcBlock "Data Type Conversion"
SrcPort 1
DstBlock "SEND_VIA_FREE_PORT"
DstPort 1
}
}
}
Block {
BlockType Switch
Name "Switch"
Position [125, 65, 155, 95]
ShowName off
Criteria "u2 > Threshold"
Threshold "0.5"
InputSameDT off
SaturateOnIntegerOverflow off
}
Line {
SrcBlock "0.1 s"
SrcPort 1
DstBlock "FreePortComms_TX"
DstPort 1
}
Line {
SrcBlock "Constant"
SrcPort 1
Points [-20, 0; 0, 25]
DstBlock "Switch"
DstPort 1
}
Line {
SrcBlock "3 seconds"
SrcPort 1
DstBlock "Switch"
DstPort 2
}
Line {
SrcBlock "Constant1"
SrcPort 1
Points [-20, 0; 0, -25]
DstBlock "Switch"
DstPort 3
}
Line {
SrcBlock "Switch"
SrcPort 1
DstBlock "'x'"
DstPort 1
}
Line {
SrcBlock "'x'"
SrcPort 1
DstBlock "0.1 s"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Motor Enable Pin"
Ports [1]
Position [775, 304, 870, 356]
BackgroundColor "[1.000000, 1.000000, 0.000000]"
AncestorBlock "mc9S12tool/Digital output"
List {
ListType RTWdata
portStr "PORTA"
ddrStr "DDRA"
pinStr "6"
}
FontSize 12
ShowPortLabels off
TreatAsAtomicUnit off
MaskHelp "helpview('C:\\Program Files\\Metrowerks\\rtmc9S"
"12_CW_R13\\bin\\mc9S12.map', 'mc9S12_DOUT_In_blkref')"
MaskPromptString "Port (see hardware manuals for valid options)|P"
"in (see hardware manuals for valid options)|Sample time|On-threshold (Von)|Of"
"f-threshold (Voff)"
MaskStyleString "popup(Port A|Port B|Port H|Port J|Port M|Port P"
"|Port S|Port T),edit,edit,edit,edit"
MaskTunableValueString "off,off,off,on,on"
MaskCallbackString "||||"
MaskEnableString "on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on"
MaskToolTipString "on,on,on,on,on"
MaskVarAliasString ",,,,"
MaskVariables "port=@1;pin=&2;sampletime=@3;Von=@4;Voff=@5;"
MaskInitialization "[portstr, pinstr, pins] = mbc_digitaloutput(por"
"t, pin, sampletime, Von, Voff);"
MaskDisplay "fprintf('%s\\nPins: %s', portstr, pinstr)"
MaskSelfModifiable on
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "Port T|7|0.002|0.5|0.5"
System {
Name "Motor Enable Pin"
Location [262, 81, 702, 272]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [30, 20, 50, 40]
FontSize 12
}
Block {
BlockType "S-Function"
Name "Digital Output SFcn"
Tag "MC9S12target"
Ports [1]
Position [255, 81, 380, 119]
List {
ListType RTWdata
portStr "PTT"
ddrStr "DDRT"
pinMask "128"
pinStr "7"
}
FontSize 12
FunctionName "digOut_sfcn_9S12"
Parameters "sampletime, port, pins, Von, Voff"
}
Block {
BlockType Mux
Name "Mux"
Ports [1, 1]
Position [165, 40, 170, 220]
ShowName off
Inputs "1"
DisplayOption "bar"
}
Line {
SrcBlock "In1"
SrcPort 1
Points [95, 0]
DstBlock "Mux"
DstPort 1
}
Line {
SrcBlock "Mux"
SrcPort 1
Points [0, -30]
DstBlock "Digital Output SFcn"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Motor Power\nControl"
Ports [2, 1]
Position [550, 289, 650, 371]
TreatAsAtomicUnit off
System {
Name "Motor Power\nControl"
Location [217, 336, 796, 652]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "Left Motor\nInstruction"
Position [105, 62, 135, 78]
BackgroundColor "orange"
}
Block {
BlockType Inport
Name "Right Motor \nInstruction"
Position [105, 232, 135, 248]
BackgroundColor "orange"
Port "2"
}
Block {
BlockType Ground
Name "Ground"
Position [160, 145, 180, 165]
}
Block {
BlockType Display
Name "Left Motor Pulse"
Ports [1]
Position [190, 16, 280, 44]
Decimation "1"
}
Block {
BlockType RelationalOperator
Name "Relational\nOperator"
Position [235, 152, 265, 183]
ShowName off
Operator "~="
InputSameDT off
}
Block {
BlockType RelationalOperator
Name "Relational\nOperator2"
Position [235, 107, 265, 138]
ShowName off
Operator "~="
InputSameDT off
}
Block {
BlockType Display
Name "Right Motor Pulse"
Ports [1]
Position [185, 261, 275, 289]
Decimation "1"
}
Block {
BlockType Display
Name "True=1, False=0"
Ports [1]
Position [335, 261, 425, 289]
Decimation "1"
}
Block {
BlockType Display
Name "True=1; False=0"
Ports [1]
Position [335, 16, 425, 44]
Decimation "1"
}
Block {
BlockType Logic
Name "switch off \nmotors in \nidle state\n(low a"
"ctive)"
Ports [2, 1]
Position [330, 132, 360, 163]
Operator "NOR"
AllPortsSameDT off
}
Block {
BlockType Outport
Name "Motor Control\nBit"
Position [510, 143, 540, 157]
BackgroundColor "orange"
}
Line {
SrcBlock "Right Motor \nInstruction"
SrcPort 1
Points [0, 0; 25, 0]
Branch {
Points [50, 0; 0, -80]
DstBlock "Relational\nOperator"
DstPort 1
}
Branch {
Points [0, 35]
DstBlock "Right Motor Pulse"
DstPort 1
}
}
Line {
SrcBlock "Left Motor\nInstruction"
SrcPort 1
Points [0, 0; 25, 0]
Branch {
Points [50, 0; 0, 45]
DstBlock "Relational\nOperator2"
DstPort 1
}
Branch {
Points [0, -40]
DstBlock "Left Motor Pulse"
DstPort 1
}
}
Line {
SrcBlock "Ground"
SrcPort 1
Points [0, 0; 15, 0]
Branch {
Points [0, -25]
DstBlock "Relational\nOperator2"
DstPort 2
}
Branch {
Points [0, 20]
DstBlock "Relational\nOperator"
DstPort 2
}
}
Line {
SrcBlock "Relational\nOperator2"
SrcPort 1
Points [15, 0; 0, 15; 10, 0]
Branch {
DstBlock "switch off \nmotors in \nidle state\n(low"
" active)"
DstPort 1
}
Branch {
Points [0, -110]
DstBlock "True=1; False=0"
DstPort 1
}
}
Line {
SrcBlock "Relational\nOperator"
SrcPort 1
Points [15, 0; 0, -15; 10, 0]
Branch {
DstBlock "switch off \nmotors in \nidle state\n(low"
" active)"
DstPort 2
}
Branch {
Points [0, 120]
DstBlock "True=1, False=0"
DstPort 1
}
}
Line {
Labels [0, 0]
SrcBlock "switch off \nmotors in \nidle state\n(low a"
"ctive)"
SrcPort 1
DstBlock "Motor Control\nBit"
DstPort 1
}
}
}
Block {
BlockType Scope
Name "Scope"
Ports [5]
Position [785, 417, 850, 523]
Location [83, 190, 578, 651]
Open off
NumInputPorts "5"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
axes2 "%<SignalLabel>"
axes3 "%<SignalLabel>"
axes4 "%<SignalLabel>"
axes5 "%<SignalLabel>"
}
List {
ListType SelectedSignals
axes1 ""
axes2 ""
axes3 ""
axes4 ""
axes5 ""
}
TimeRange "10"
YMin "-5~-5~-5~-5~-5"
YMax "5~5~5~5~5"
DataFormat "StructureWithTime"
}
Block {
BlockType SubSystem
Name "Velocity left"
Ports [1]
Position [775, 14, 870, 66]
BackgroundColor "[1.000000, 1.000000, 0.000000]"
AncestorBlock "mc9S12tool/Digital output"
List {
ListType RTWdata
portStr "PORTA"
ddrStr "DDRA"
pinStr "6"
}
FontSize 12
ShowPortLabels off
TreatAsAtomicUnit off
MaskHelp "helpview('C:\\Program Files\\Metrowerks\\rtmc9S"
"12_CW_R13\\bin\\mc9S12.map', 'mc9S12_DOUT_In_blkref')"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -