发布于 2011-01-07 18:10:37
8楼
将以下程序复制到记事本,将文件名中的.TXT更改为.AWL,然后用编程软件,文件-导入
如果计算VB0开始的6个字节的CRC,那么起始地址是&VB0, 字节数量是6。
ORGANIZATION_BLOCK 主程序:OB1
TITLE=程序注释
BEGIN
Network 1 // 网络标题
LD M0.1
EU
CALL SBR0, &VB0, 6, VW300
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCK SBR_0:SBR0
TITLE=子程序注释
VAR_INPUT
起始地址:DWORD;
字节数量:WORD;
END_VAR
VAR_OUTPUT
CRC:WORD;
END_VAR
VAR
计数器1:INT;
计数器2:INT;
END_VAR
BEGIN
Network 1 // 网络标题
LD SM0.0
MOVW 16#FFFF, LW6
Network 2
LD SM0.0
FOR LW8, +1, LW4
XORB *LD0, LB7
Network 3
LD SM0.0
FOR LW10, +1, +8
SRW LW6, 1
A SM1.1
XORW 16#A001, LW6
Network 4
NEXT
Network 5
LD SM0.0
INCD LD0
Network 6
NEXT
Network 7
LD SM0.0
SWAP LW6
Network 8 // 网络标题
// 网络注释
END_SUBROUTINE_BLOCK
INTERRUPT_BLOCK INT_0:INT0
TITLE=中断程序注释
BEGIN
Network 1 // 网络标题
// 网络注释
END_INTERRUPT_BLOCK