用AT89S51输出控制8个LED,从LED1到LED8再到LED1,不断循环,发光间隔1S?

2025-04-09 23:43:22
推荐回答(3个)
回答1:

不画图,不写代码,只写思路和方法

  1. 从VCC(+5V)分别接一个1K电阻串一个LED到P1口(LED负极就IO),共8个IO口(P10~P17)

  2. 用STC-ISP软件,里面有延时计算选项,复制粘贴即可。精确延时可以用定时器

  3. 流水步骤,while(1)循环, LED1=0; (灯亮)延时函数延时1秒;LED1=1;(灯灭)    LED2=0; (灯亮)延时函数延时1秒;LED2=1;(灯灭),后面代码都一样

  4. 上面是最基础的,便于学习,像流水灯,花样灯一般都是用数组。  要图代码百度一下都有现成的,只是抄代码不建议,那样做永远学不会

回答2:

很容易实现的功能,循环,定时器,分支语句,都可以做到。

回答3:

位移指令,加延时就OK了。