#include <REGX52.H>
#include <INTRINS.H>
void Delay1ms(int t) //@11.0592MHz
{
while(t --) {
unsigned char i, j;
_nop_(); //需要添加头文件
i = 2;
j = 199;
do
{
while (--j);
} while (--i);
}
}//延时1ms执行t次
void main()
{
while(1)
{
P2 = 0xFE; //1111 1110
Delay1ms(500);
P2 = 0xFD; //1111 1101
Delay1ms(500);
P2 = 0xFB; //1111 1011
Delay1ms(500);
P2 = 0xF7; //1111 0111
Delay1ms(500);
P2 = 0xEF; //1110 1111
Delay1ms(500);
P2 = 0xDF; //1101 1111
Delay1ms(500);
P2 = 0xBF; //1011 1111
Delay1ms(500);
P2 = 0x7F; //0111 1111
Delay1ms(500);
}
}
延时代码可通过软件生成,系统频率要和开发板的晶振频率相对应。