这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 高校专区 » 坤创E-Geek/天科大新电社 » 蓝桥杯备赛小程序一

共2条 1/1 1 跳转至

蓝桥杯备赛小程序一

菜鸟
2019-01-25 14:49:12     打赏

看到小伙伴们代码敲得飞快,内心也开始有点小激动。下面是关于点灯的几个小程序。关于流水灯有左右移运算符、循环左右移函数的调用、数组三种实现方法,有时候会有些纠结用那种,个人习惯于用数组。看到此贴的大神们欢迎在评论中科普三种方法的优缺点。

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

【编写时间】2019124

【作    者】黄金机器人

【试验平台】开拓者开发板

【外部晶振】11.0592mhz

【芯    片】STC89C52

【编译环境】Keil uVision5

【说    明】本代码均以在开发板山测试通过,仅供大家参考

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

/*****************************点亮LED灯位操作*******************************/

#include <reg52.h>

Sbit LED=P2^0

Void main()

{

While(1)

{

LED=0;

}

}

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

/*****************************点亮LED灯总线操作*******************************/

#include <reg52.h>

Void main()

{

While(1)

{

P2=0x00;

}

}

/*********************************闪烁****************************************/

#include <reg52.h>

#define uchar unsigned char

#define uint unsigned int

sbit LED=P2^1;

void delayms(uint n)

{

  uchar i;

    while(n--)

{

for(i=0;i<113;i++);

}

}

void main()

{

   while(1)

 {

 LED=0;

 delayms(500);

 LED=0xff;

 delayms(500);

 }

}

/*********************************流水灯*************************************/

#include <reg52.h>

#define uchar unsigned char

#define uint unsigned int

uchar ledCode[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

void delayms(uint n)

{

   uchar i;

     while(n--)

 {

    for(i=0;i<113;i++);

 }

}

void main()

{

uchar j;

   while(1)

 {

 for(j=0;j<8;j++)

 {

    P2=ledCode[j];

  delayms(1000);

 }

 }

}

 

 




高工
2019-01-25 17:53:14     打赏
2楼

建议使用代码语言帖代码哈~如图

QQ截图20190124001933.png


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]