搜索
bottom↓
回复: 11

流水灯求助,让两种水流灯同时运行

[复制链接]

出0入0汤圆

发表于 2012-10-26 12:05:00 | 显示全部楼层 |阅读模式
while(1)
{         
        for(n=0;n<10;n++)
        {                       
                P11=1;
                delay300ms();//0.3秒
                P11=0;
                                P13=1;
                delay300ms();//0.3秒
                P13=0;

        }

        for(i=0;i<6;i++)
        {
                P12=~P12;
                delay100ms();//0.1秒
        }
}
让两种水流灯同时运行
现在我这个是顺序执行的.

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2012-10-26 12:13:06 | 显示全部楼层
for(n=0;n<30;n++)
{
P11=1;
P13=1;
P12=~P12;
n++;
delay100ms()
while(n%3==0)
{
P11=0;
P13=0;
}
}
思路:以0.1ms为基准对n自加,当n对3取余等于0时,改变P11/P13;
只是提供一种思路,没运行通过,希望有所帮助。

出0入0汤圆

发表于 2012-10-26 12:23:16 | 显示全部楼层
单片机那么快,快点切换,看不出时间差异的

出0入0汤圆

发表于 2012-10-26 12:24:44 | 显示全部楼层
学习了。。。。。

出0入0汤圆

发表于 2012-10-26 12:32:57 | 显示全部楼层
借助于RTOS,多组都有可能

出90入372汤圆

发表于 2012-10-26 15:00:10 | 显示全部楼层
用定时器很容易实现啊 不要用delay

出500入0汤圆

发表于 2012-10-26 15:01:27 | 显示全部楼层
状态机,傻孩子教过。

出90入372汤圆

发表于 2012-10-26 15:05:31 | 显示全部楼层
或者这样
int i;
while(1)
{
   i++;
   if(i==xx){第一组LED}
   ......
   if(i==YY){第二组LED;i=0;}
}

出0入0汤圆

发表于 2012-10-26 15:21:43 | 显示全部楼层
这个不用定时器挺难实现的

出0入0汤圆

发表于 2012-10-26 15:23:34 | 显示全部楼层
状态机……

出0入0汤圆

发表于 2012-10-27 10:00:12 | 显示全部楼层
JamesErik 发表于 2012-10-26 15:01
状态机,傻孩子教过。

请教一下,状态机杂用啊?新手求助

出0入0汤圆

发表于 2012-10-27 10:10:02 | 显示全部楼层
状态机笑了。。。
把动作拆分,穿插进行。最好用定时器解决。跟状态机没关系。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 15:15

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表