求:单片机C51控制P0口间隔点亮8个led灯(1357管脚亮1秒2468管脚灭1秒;2468管脚亮1秒1357灭)一直循环

用C语言编程

#include<reg52.h> //taobao:广州华电

void delay_ms(unsigned int z)
{
unsigned int x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

main()
{
while(1)
{
P0=0xaa;
delay_ms(1000);
P0=0x55;
delay_ms(1000);
}
}

//不是精确掩饰,大概1S左右吧..要精确延时用定时器,比较麻烦..
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-09
再给你个汇编的
LOOP:MOV P0,#10101010B
LCALL DELAY
MOV P0,#01010101B
LCALL DELAY
AJMP LOOP
DELAY:MOV R5,#15
D0: MOV R6,#255
D1: MOV R7,#255
D2: DJNZ R7,D2
DJNZ R6,D1
DJNZ R5,D0 RET
END本回答被网友采纳
第2个回答  2012-10-11
想找什么呢?
相似回答