51单片机启动文件和头文件是否有重复定义? 51单片机常用头文件
更新时间:2021-08-26 03:06:22 • 作者:AUDREY •阅读 894
- 写单片机头文件的时候怎么老是提醒重复定义呢????就定义了一次啊????
- C51头文件寄存器重定义问题?
- 51单片机中 SDA 重复定义 怎么解决
- 单片机用c编程时,添加头文件导致redefinition,不添加又undefined。。。
写单片机头文件的时候怎么老是提醒重复定义呢????就定义了一次啊????
这个需要,,看你的,,实际的代码,,,
当然给你两个需要注意的地方 1 :你定义的变量可能 使用了 “关键字,单片机的寄存器符号及某个可位寻址的标志位”
2:子函数:你的子函数命名名称可能与其他子函数同名,,,,,
总结可能不全,,,,可以参考看一下
C51头文件寄存器重定义问题?
最好在每个.h头文件中均包含一个宏,例如
aaa.h
/******
aaa.h
*****/
#ifndef _AAA_H_
#define _AAA_H_
//你原来的头文件内容
#endif
这样的话,就可以避免重复定义了。
51单片机中 SDA 重复定义 怎么解决
改成
#define sda P3_4
#define scl P3_3
试试,但要保证已经用过#include
单片机用c编程时,添加头文件导致redefinition,不添加又undefined。。。
<reg51.h> 头文件是标准的单片机特殊寄存器定义,<c8051f360.h>是针对特定单片机的寄存器定义,定义的内容是在标准单片机基础上的,扩充了一些功能。解决redefinition的方法:
方法1:头文件不包含<reg51.h>,看编译时提示那些没定义,就将没定义的项目添加到文件<c8051f360.h>中。 建议使用该方法。
方法2:两个文件都包含,看编译时提示那些重复定义,在<c8051f360.h>文件中将重复项删除。
不建议修改<reg51.h>文件。