既然你要解决问题,那我就不一一说错误原因了,有一点要注意,C语言是区分大小写的,P1_0和p1_0是不一样的。至于头文件,有时候我也根据自己的需要来添加代码,你复制我下面的代码到你工程下编译,看一下效果:
#include <AT89X51.h>
void main(void)
{
unsigned int a;
do
{
for (a=0; a<50000; a++);
P1_0 = 0;
for (a=0; a<50000; a++);
P1_0 = 1;
}
while(1);
}
另外我给你原始的AT89X51.h文件的代码:
#ifndef __AT89X51_H__
#define __AT89X51_H__
/*------------------------------------------------
Byte Registers
------------------------------------------------*/
sfr P0 = 0x80;
sfr SP = 0x81;
sfr DP