著重养生之道的人们都知道,花生是大补之品,特殊是对他们的神经系统而言,因而堪称“脑黄金”产妇阶段他们都提议很大要吃花生,这种易于小宝宝的神经系统发育所以,六天吃两个......
2024-02-19 215
使用Keil 进行汇编语言编程时,在加入REG51.INC后会出现error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL,这是由于编译器默认是定义了特殊寄存器的,而REG51.INC又对特殊寄存器进行了定义,导致重复定义。解决办法有两种,具体见下面操作。
打开Keil,新建一个汇编语言文件,在其中输入汇编代码,同时在最开头加入
$INCLUDE (REG51.INC)
即导入51寄存器的头文件。
将加入了$INCLUDE (REG51.INC)的汇编源文件进行编译,可以看到,编译结果窗口输出了一连串的error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL
而每个ERROR都指向REG51.INC
出现这种问题的原因在于REG51.INC对特殊寄存器进行了定义,而编译器默认又对特殊寄存器进行了定义。解决办法就是取消默认的特殊寄存器定义。
方法1:可以选择汇编源文件,在弹出的列表中选择“Options for FIle:xxx”,其中xxx是具体的文件名。
在弹出的对话框中,选择A51页,找到Special Function Registers,将它下面的Define 8051 SFR Names取消勾选。
对取消Define 8051 SFR Names勾选的工程进行重新编译,可以看到令人讨厌的error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL没有了。
另一种方法不需要取消Define 8051 SFR Names,只要在汇编源文件的开头增加一个:$NOMOD51即不适用MOD51。
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
相关文章
著重养生之道的人们都知道,花生是大补之品,特殊是对他们的神经系统而言,因而堪称“脑黄金”产妇阶段他们都提议很大要吃花生,这种易于小宝宝的神经系统发育所以,六天吃两个......
2024-02-19 215
有天数早起也分为左边早起和左边早起,而引发左边早起的其原因有很多,接下去他们就来看细看引发左边早起的其原因和什么样化解操作方式01先期确诊左边早起的其原因,他们如......
2024-02-19 227
古时,中草药都是药食同源的收藏品,因此食用中草药的方式有许多种其中也有许多人讨厌用中草药异药喝,中草药泡出的酒能称之为草药,为什么叫草药呢?即使草药具备化疗作用和养......
2024-02-19 179