电源技术william hill官网
登录
直播中
爱的意义
10年用户
1276经验值
擅长:模拟技术 控制/MCU
私信
关注
[问答]
花样流水灯设计
开启该帖子的消息推送
花样流水灯设计
要 求:
①编写一
单片机
程序实现8盏LED花样流水灯效果;
②按下按键1实现LED1--->LED8依次点亮效果;
③按下按键2实现LED8--->LED1依次点亮效果;
④按下按键3实现奇数的灯与偶数的灯交替闪烁的效果,并通过数码管显示闪烁的次数。
⑤其他功能及创新。尽可能
回帖
(14)
2330608526
2014-12-10 11:47:00
百度51单片机跑马灯程序,你就能解决了!
百度51单片机跑马灯程序,你就能解决了!
举报
爱的意义
2014-12-10 19:10:17
嗯嗯,但是没有用数码管显示led灯显示led灯闪烁的次数的啊?
嗯嗯,但是没有用数码管显示led灯显示led灯闪烁的次数的啊?
举报
浪拓电子防雷
2014-12-11 14:44:29
盼经验丰富的工程师来献艺解答。
盼经验丰富的工程师来献艺解答。
举报
51mcuxuexi
2014-12-12 14:14:50
单片机初学者。
单片机初学者。
举报
51mcuxuexi
2014-12-12 17:09:09
#include
***it key1=P3^0;
***it key2=P3^1;
***it key3=P3^2;
***it key4=P3^3; //用于跳出循环语句
/******延时函数自定义*******/
const int value=1000; //延时时间
int Sum=0; //奇偶闪烁计数
void LedShine(void)
{
char i;
if(!key1)
{
while(1)
{
for(i=0;i<8;i++)
{
P1=~(0x01<
delay(value);
if(!key4)
{
break;
}
}
if(!key4)
{
break;
}
}
}
else
{
if(!key2)
{
while(1)
{
for(i=0;i<8;i++)
{
P1=~(0x80>>i); //右移
delay(value);
if(!key4)
{
break;
}
}
if(!key4)
{
break;
}
}
}
else
{
if(!key3)
{
P1=0xaa; //赋初值
while(1)
{
P1=~P1; //奇偶交替闪烁
delay(value);
if(!key4)
{
break;
}
Sum++; //奇偶校验的闪烁次数 ,将这个数字经过处理后就送往数码管显示。
}
}
}
}
}
void main(void)
{
while(1)
{
LedShine();
}
}
#include
***it key1=P3^0;
***it key2=P3^1;
***it key3=P3^2;
***it key4=P3^3; //用于跳出循环语句
/******延时函数自定义*******/
const int value=1000; //延时时间
int Sum=0; //奇偶闪烁计数
void LedShine(void)
{
char i;
if(!key1)
{
while(1)
{
for(i=0;i<8;i++)
{
P1=~(0x01<
delay(value);
if(!key4)
{
break;
}
}
if(!key4)
{
break;
}
}
}
else
{
if(!key2)
{
while(1)
{
for(i=0;i<8;i++)
{
P1=~(0x80>>i); //右移
delay(value);
if(!key4)
{
break;
}
}
if(!key4)
{
break;
}
}
}
else
{
if(!key3)
{
P1=0xaa; //赋初值
while(1)
{
P1=~P1; //奇偶交替闪烁
delay(value);
if(!key4)
{
break;
}
Sum++; //奇偶校验的闪烁次数 ,将这个数字经过处理后就送往数码管显示。
}
}
}
}
}
void main(void)
{
while(1)
{
LedShine();
}
}
举报
51mcuxuexi
2014-12-12 18:52:20
#include
***it key1=P3^0;
***it key2=P3^1;
***it key3=P3^2;
***it key4=P3^3; //用于跳出循环语句
/******延时函数自定义*******/
const int value=1000; //延时时间
int Sum=0; //奇偶闪烁计数
void LedShine(void)
{
char RedP3,i;
RedP3=P3&0x0f;
switch(RedP3)
{
case 0x0e: //key1
while(1)
{
P1=~(0x01<
delay(value);
if(i++>8)
i=0;
if(!key4)
break;
}
break;
case 0x0d:
while(1)
{
P1=~(0x80<
delay(value);
if(i++>8)
i=0;
if(!key4)
break;
}
break;
case 0x0b:
P1=0XAA;
while(1)
{
P1=~P1;
delay(value);
Sum++;
if(!key4)
break;
}
break;
}
}
void main(void)
{
P3|=0x0f; //将P3低四位拉高
while(1)
{
LedShine();
}
}
#include
***it key1=P3^0;
***it key2=P3^1;
***it key3=P3^2;
***it key4=P3^3; //用于跳出循环语句
/******延时函数自定义*******/
const int value=1000; //延时时间
int Sum=0; //奇偶闪烁计数
void LedShine(void)
{
char RedP3,i;
RedP3=P3&0x0f;
switch(RedP3)
{
case 0x0e: //key1
while(1)
{
P1=~(0x01<
delay(value);
if(i++>8)
i=0;
if(!key4)
break;
}
break;
case 0x0d:
while(1)
{
P1=~(0x80<
delay(value);
if(i++>8)
i=0;
if(!key4)
break;
}
break;
case 0x0b:
P1=0XAA;
while(1)
{
P1=~P1;
delay(value);
Sum++;
if(!key4)
break;
}
break;
}
}
void main(void)
{
P3|=0x0f; //将P3低四位拉高
while(1)
{
LedShine();
}
}
举报
爱的意义
2014-12-12 20:07:40
数码管显示呢?
数码管显示呢?
举报
51mcuxuexi
2014-12-12 20:48:43
就用程序中的Sum取值,求模。然后送往显示即可
就用程序中的Sum取值,求模。然后送往显示即可
举报
爱的意义
2014-12-12 21:20:02
给出程序可以吗?
给出程序可以吗?
举报
51mcuxuexi
2014-12-13 09:27:52
没有硬件数码管,展示不能提供正确的程序,
没有硬件数码管,展示不能提供正确的程序,
举报
王晓丹
2015-5-18 11:23:14
xcfgvbhjnmk,lvbnjmk,l.;
xcfgvbhjnmk,lvbnjmk,l.;
举报
王晓丹
2015-5-18 11:26:06
dcfvgbhjnkmldfghjklfvgbhnjkl
dcfvgbhjnkmldfghjklfvgbhnjkl
举报
王晓丹
2015-5-18 11:26:53
cfvgbhnjmk,xcfvgbhjfghjkl;
cfvgbhnjmk,xcfvgbhjfghjkl;
举报
liuguangjun
2015-5-27 20:36:46
xcfgvbhjnmk,lvbnjmk,l.;
xcfgvbhjnmk,lvbnjmk,l.;
举报
更多回帖
rotate(-90deg);
回复
相关问答
怎样去编写一种C语言开发之
花样
流水灯
程序呢?求解
2021-07-15
891
流水灯
与动态数码管显示
2012-11-07
5840
怎么用一个按钮控制多种
花样
流水灯
?
2013-10-15
9195
如果要做很多个
流水灯
一起
花样
显示怎么办呢?
2021-07-14
1390
流水灯
怎么设计?
流水灯
方案有没有简单的?
2021-03-05
2170
请问一个
流水灯
的问题
2014-12-11
2695
用定时器做的
流水灯
2015-08-21
7800
关于
流水灯
的控制
2012-07-12
3652
基于msp430G2553 的
流水灯
2015-11-07
6178
如何实现
流水灯
以间隔500ms的时间闪烁?
2021-11-30
1719
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分