MSM 語法格式

MSM 是 Motion Assembly 的意思,是一種專為運動控制所設計的組合語言,其特色有:

 

  1. 包含 PLC(Ladder) 與 Motion 指令:可以交互穿插使用
  2. 支援 多工(Multi-Tasking):具 工作(Task) 與 時槽(Slot)觀念!
  3. 多種資料型態混合計算:不必轉換成相同資料格式就可直接運算
  4. 具錯誤處理機制:Err … Catch,簡化程式流程

語法格式 每一列分成四個欄位,分別為 標記,指令,運算元,註解,說明如下:

標記:  指令 運算元  ; 註解
可有可無 必要 必要,完整格式如下: 可有可無
 

必須由第一格開始

否則視為 指令

 

必須在第二格之後

否則視為 標記

op1[Index],op2

op1 依指令決定支援以下格式:

 

常數:123123.456

變數:@Var_Name[Index]

指標:*ARn[Index]

暫存器:@XARn  @ERR

標記:$Label_Name

取得變數位址:#Var_Name

空白:有些指令沒有運算元

 

“@” 可省略

Index 可有可無

op2 依指令個別定義

“,” 前後不可有空格

 

分號 “;” 之後視為註解

範例:

 

Label_1:

 Label_2:(錯誤)

 

 

LACCF

MULL

SUBL

CMPL

JMP_C

 

 

 123.456

 @ARRAY[2]

 @XAR0

 *AR1[3]

 $Label_1,LEQ

 

 

; ACC = 123.456

; ACC = ACC x @ARRAY[2]

; ACC = ACC – @XAR0

; 比較  ACC *AR1[3]

; 若 “<=” 則跳躍

 


 

 

發表迴響