ZHCUAV7Z september 1995 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
宏语言支持三条指令,可供用户定义自有的汇编时错误和警告消息。如果要根据需求创建特定消息,这些指令特别有用。列表文件的最后一行显示错误和警告计数。这些计数提醒用户代码中存在问题,在调试期间会特别有用。
.emsg | 将错误消息发送到列表文件。.emsg 指令生成错误的方式与汇编器相同:递增错误计数并阻止汇编器生成目标文件。 |
.mmsg | 将汇编时消息发送到列表文件。.mmsg 指令的运行方式与 .emsg 指令相同,但不设置错误计数,也不会阻止生成目标文件。 |
.wmsg | 将警告消息发送到列表文件。.wmsg 指令的运行方式与 .emsg 指令相同,但会递增警告计数,不会阻止生成目标文件。 |
宏注释是出现在宏定义中的注释,但不出现在宏扩展中。第 1 列的感叹号标识一条宏注释。如果希望注释出现在宏扩展中,请在注释前添加星号或分号。
在宏中生成消息 展示了宏中的用户消息,以及不会出现在宏扩展中的宏注释。有关 .emsg、.mmsg 和 .wmsg 汇编器指令的更多信息,请参阅定义消息。
1 MUL_I .macro x,y
2 .if ($$symlen(x) ==0)
3 .emsg "ERROR -- Missing Parameter"
4 .mexit
5 .elseif ($$symlen(y) == 0)
6 .emsg "ERROR -- Missing Parameter"
7 .mexit
8 .else
9 MOV R1, x
10 MOV R2, y
11 MUL R0, R1, R2
12 .endif
13 .endm
14
15 00000000 MUL_I #50, #51
1 .if ($$symlen(x) ==0)
1 .emsg "ERROR -- Missing Parameter"
1 .mexit
1 .elseif ($$symlen(y) == 0)
1 .emsg "ERROR -- Missing Parameter"
1 .mexit
1 .else
1 00000000 E3A01032 MOV R1, #50
1 00000004 E3A02033 MOV R2, #51
1 00000008 E0000291 MUL R0, R1, R2
1 .endif
16
17 0000000c MUL_I
1 .if ($$symlen(x) ==0)
1 .emsg "ERROR -- Missing Parameter"
***** USER ERROR ***** - : ERROR -- Missing Parameter
1 .mexit
1 Error, No Warnings