收藏官网首页
楼主: 清风duino

[经验作品] 基于Arduino Pro Mimi_语音播放彩灯系统

1

主题

12

帖子

356

积分

中级会员

Rank: 3Rank: 3

积分
356
楼主
发表于 2018-3-11 10:16:08 | 显示全部楼层
汉枫LPB120模块
从机里面的ws2812的彩虹效果依旧会出现“系统忙碌”的效果,就是发送了“F”,还是没有关掉当前的彩虹效果,而是等这次的彩虹效果走完才会读入“F”.然后才会灭掉灯。有什么办法可解决吗?

1

主题

12

帖子

356

积分

中级会员

Rank: 3Rank: 3

积分
356
沙发
发表于 2018-3-20 13:14:00 | 显示全部楼层
清风duino 发表于 2018-3-16 16:03
这是一个很好的问题,解决方案可以从彩虹函数各个节点读取USART的停止指令,然后退出循环,更简单的方法 ...

我用的是比较笨的方法了,将彩虹函数里面的3个小函数一起放到彩虹函数中,将彩虹函数直接打包成一个大函数,然后分别在,每一个小函数里面放一个‘F’的检测,这样就可以一接收到‘F’立马进行off语句,然后直接renturn,这样就直接结束了彩虹函数。

1

主题

12

帖子

356

积分

中级会员

Rank: 3Rank: 3

积分
356
板凳
发表于 2018-3-20 19:56:25 | 显示全部楼层
清风duino 发表于 2018-3-20 17:03
很好!就是各种思路,只要能够快速推出就是好的方法,能够分享一下吗?
...
void rainbow(){
  Serial.println(ch);
  ch = ' ';
    while(1){
  for(uint16_t j=0; j<256; j++) {
    for(uint16_t i=0; i<strip.numPixels(); i++) {
      strip.setPixelColor(i, Wheel((i+j) & 255));
      ch = Serial.read();
   if(ch == 'F'){
RGB_LED_Off();
return;
  }
    }
    strip.show();
    delay(20);
  }
  for(uint16_t j=0; j<256*5; j++) { // 5 cycles of all colors on wheel 在全彩色谱内循环5次
    for(uint16_t i=0; i< strip.numPixels(); i++) {
      strip.setPixelColor(i, Wheel(((i * 256 / strip.numPixels()) + j) & 255));
         ch = Serial.read();
  if(ch == 'F'){
RGB_LED_Off();
return;
  }
    }
    strip.show();
    delay(20);
  }
   for (int j=0; j < 256; j++) {     // cycle all 256 colors in the wheel 按全彩色谱转圈
    for (int q=0; q < 3; q++) {
        for (int i=0; i < strip.numPixels(); i=i+3) {
          strip.setPixelColor(i+q, Wheel( (i+j) % 255));    //turn every third pixel on 以三盏灯一组点亮
                ch = Serial.read();
  if(ch == 'F'){
RGB_LED_Off();
return;
  }
        }
        strip.show();
        delay(50);
        for (int i=0; i < strip.numPixels(); i=i+3) {
          strip.setPixelColor(i+q, 0);        //turn every third pixel off 以三盏灯一组熄灭
        }
    }
  }
}
}


就是这样了,把函数改一下

1

主题

12

帖子

356

积分

中级会员

Rank: 3Rank: 3

积分
356
地板
发表于 2018-4-1 15:54:23 | 显示全部楼层
我最近做这个彩灯的时候,想要自己定义从机彩灯的颜色。不晓得如何从主机那里发送数据?就是可以自己定义从机的当前rgb的pwm值?我目前没想到怎么解决

1

主题

12

帖子

356

积分

中级会员

Rank: 3Rank: 3

积分
356
5#
发表于 2018-4-17 09:43:39 | 显示全部楼层
校园创客福利
清风duino 发表于 2018-4-16 11:52
回复“如何将gokit3s和自己作的项目连接”可以使用标准的机智云宠物屋+MCU自动生成代码,修改后变为自己 ...

感谢楼主,本小白基本完成了我的彩灯项目的全部制作,非常感谢楼主的分享,已经可以调节ws2812彩灯的的个性化rgb值了,现在控制部分也基本完成,但是在使用原生机智云的app来控制音乐的播放,这一点在app界面上感觉有点差强人意,最近在补appui界面制作的这方面知识。(app制作好难啊,写个helloworld,出现1万个错误),楼主可有优化音乐控制的界面的想法?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

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