(1) 因為Proteus中自帶的匯編編譯器都是使用命令行命令進行編譯。在菜單Source->Define code generation tools打開的對話框中,有一項參數是Command Line,對于代碼生存工具ASEM51來說,默認的命令行參數可能類似于%1 /INCLUDES:C:\Program Files\Labcenter Electronics\Proteus 7 Professional\TOOLS\ASEM51,其中%1代表的是源代碼,/INCLUDES:后面跟著的是包含路徑,該路徑下的*.mcu文件即是通常的SFR定義文件。其實這一參數并不需要設置,通常我們的Command Line參數設置為%1即可。 (2) 另外,這個/INCLUDES:的路徑參數設置也是有問題的。因為它的中間包含了空格,ASEM51匯編器會把它認為是幾個參數,因而會出現too many parameters的錯誤。 (3)同樣的道理,如果你的匯編程序存儲的路徑或文件名中包含了空格或一些其它有可能使用命令行出現錯誤的字符,編譯時也會出現錯誤。提示可能是@@@@file not found: F:\1.a51@@@@,和F:\1 2\a.lst not found. (4) 另外需要注意的是,ASER51不支持$符號,即不能使用類似JMP $的命令。具體還有哪些使用中還需要注意的問題,歡迎跟貼。 (5) 文件名不能太長。 |