单片机心形流水灯制作教程

单片机心形流水灯制作教程,第1张

1.建立工程。其中LED.c文件用于存放各个功能的子函数,而delay.c文件则用于存放延时函数,最后主函数直接调用前面的两个文件中的子函数即可。

2.在LED.c源文件中编写功能子函数,分别为turn_on(int i)、turn_...

3.在delay.c源文件中编写延时函数。

4.在main.c文件主函数中调用各个子函数来实现流水灯功能。 END

程序如下:

#include <reg52.h>

sbit led1 = P2^0

sbit led2 = P2^1

sbit led3 = P2^2

sbit led4 = P2^3

sbit led5 = P2^4

sbit led6 = P2^5

sbit led7 = P2^6

sbit led8 = P2^7

void main()

{

  int i,j

 //点亮第一个灯

  led1 = 1

  led2 = 0

  led3 = 0

  led4 = 0

  led5 = 0

  led6 = 0

  led7 = 0

  led8 = 0

  //延时1秒

for(i = 0i <110++i)

{

 for(j = 0j <1000++j)

 {

   //什么也不做

 }

}

  //点亮第二个灯

  led1 = 0

  led2 = 1

  led3 = 0

  led4 = 0

  led5 = 0

  led6 = 0

  led7 = 0

  led8 = 0 

  //点亮剩余的灯

  //省略……

  while(1)

}

扩展资料:

流水灯几点说明:

void:因为该延时函数不需要返回值,所以写为void

delay1s:该函数的函数名,命名需要符合C语言的标识符命名规则。

(): 不需要传入参数,所以括号中为空

至此我们可以把流水灯程序写为以下形式:

/*******************************************************/

/*P1口LED流水灯实验 */

/*目标器件:AT89S51 */

/*晶振:11.0592MHZ */

/*编译环境:Keil 7.50A */

/*******************************************************/

#include <reg51.h>

sbit LED1 = P1^0

sbit LED2 = P1^1

sbit LED3 = P1^2

sbit LED4 = P1^3

sbit LED5 = P1^4

sbit LED6 = P1^5

sbit LED7 = P1^6

sbit LED8 = P1^7

void Delay()

{

unsigned char i,j

for(i=0i<255i++)

for(j=0j<255j++)

}

void main()

{

while(1)

{

P1 = 0xff

LED1 = 0

Delay()

LED2 = 0

LED1 = 1

Delay()

LED3 = 0

LED2 = 1

Delay()

LED4 = 0

LED3 = 1

Delay()

LED5 = 0

LED4 = 1

Delay()

LED6 = 0

LED5 = 1

Delay()

LED7 = 0

LED6 = 1

Delay()

LED8 = 0

LED7 = 1

Delay()

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7767259.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存