单片机的c语言中,#include <AT89X52.h>作用?它和#include<reg52.h>区别?
为什么在程序前面加上头文件:#include<AT89X52.h>#include<reg52.h>然后用sbit指令定义:sbitPA0=P0^0;sbitPA1=P0...
为什么在程序前面加上头文件:#include <AT89X52.h>
#include<reg52.h>
然后用sbit指令定义:
sbit PA0= P0^0;
sbit PA1= P0^1;
就报错呢?
error c231:'P0':redefinition
删掉#include <AT89X52.h>这个头文件就好了。
#include <AT89X52.h>这个头文件的作用是什么?我看有的程序上加上这个了,有的就没加,我用的单片机是at89s52,所以我就加上了,结果编译出了一堆错误。
它和#include<reg52.h>有什么区别?用哪个好点? 展开
#include<reg52.h>
然后用sbit指令定义:
sbit PA0= P0^0;
sbit PA1= P0^1;
就报错呢?
error c231:'P0':redefinition
删掉#include <AT89X52.h>这个头文件就好了。
#include <AT89X52.h>这个头文件的作用是什么?我看有的程序上加上这个了,有的就没加,我用的单片机是at89s52,所以我就加上了,结果编译出了一堆错误。
它和#include<reg52.h>有什么区别?用哪个好点? 展开
展开全部
你是用keil? 很简单你把鼠标移到<AT89X52.h>才、,右键技能看到里面的内容了。你所报的错是因为,<REG52.H>和<AT89X52.h>头文件中,一些相同的寄存器被定义两次。希望被采纳,谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只是头文件而已,可以调用头文件里所定义的东西,你定义了2中单片机,就会报错。。和调用数学公式一样,需要+一个数学公式头文件。你也可以自己写一个程序,如何直接+上你写的文件,就可以调用了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
区别是52有定时器2,51没有
更多追问追答
追问
没问51,看清楚再回答!这两个都是52
追答
哦sorry,AT89X52是ATMEL专用头文件,定义的东东较多,REG52只定义了一些基本的寄存器和引脚。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |