路与本 2021-12-21 09:33 采纳率: 25%
浏览 166

单片机led流水灯,为什么LED可以一直循环点亮? for循环结束不是应该跳出循环结束主程序,led灭吗?而且我也没在主程序中加入while(1);让程序进入死循环

问题遇到的现象和发生背景

c51单片机LED流水灯

```c++
#include"reg51.h"
typedef unsigned int u16;
typedef unsigned char u8;
unsigned char LSE_CODE[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
void delay_10us(u16 ten_us)
{
while(ten_us--);
}
void lsd_z()
{
unsigned char i;
for(i=0;i<8;i++)
{
P2=LSE_CODE[i];
delay_10us(100000);
}
}
void lsd_f()
{
signed char j;
for(j=7;j>=0;j--)
{
P2=LSE_CODE[j];
delay_10us(100000);
}
}

int main()
{
lsd_z();
lsd_f();
return 0;
}

```编程

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法

我尝试加了一条P2=0xff,但是没用

我想要达到的结果

可否让其单单执行这两个for循环一次,也是就是LED灯两次方向相反的逐个点亮后 灭!或者是for循环逐个点亮一次后,灯灭。

  • 写回答

2条回答 默认 最新

  • qllaoda 2021-12-21 10:11
    关注

    主程序结束后,单片机又返回到开始重新运行了。

    评论

报告相同问题?

问题事件

  • 创建了问题 12月21日

悬赏问题

  • ¥50 这Mac系统提示虚拟内存不足,怎么解决
  • ¥15 Rs232电路无法收发数据,求帮助
  • ¥15 百度cookie扫码登录器
  • ¥15 微机原理汇编语言debug调试实验
  • ¥23 matlab可以把相图转换为庞加莱映射吗
  • ¥15 Arduino电机和openmv连接异常
  • ¥15 Arcgis河网分级报错
  • ¥200 java+appium2.1+idea
  • ¥20 请帮我做一个EXE的去重TXT文本
  • ¥15 工价表引用工艺路线,应如何制作py和xml文件