WILLAR
たとえば、AT89C2051でプログラムを作成すると、次のようになります。
#include <reg51.h>
#define port P3
void delay(unsigned int);
void main(void)
{
for(;;)
{
port = 0x0;
delay(1000);
port = 0x0ff;
delay(1000);
}
}
void delay(unsigned int a)
{
unsigned int i;
unsigned int j;
for(i=0; i<a; i++)
for(j=0; j<120; j++);
}
メッセージが表示されます:The data out of range will be ignored
。しかし、ポートP3ではなくポートP1を使用すると、プログラムは正常に書き込みます。
問題はどこだ?