Ключевое ?лово

vk

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Железо для умного дома

ТЕМА: led ws2812b через I2C

led ws2812b через I2C 21 Дек 2016 19:46 #16469

  • Lsar
  • Lsar аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 190
  • Спасибо получено: 15
  • Репутация: 1
два блока питания испытал на 2,5А и 5в. на 6 светиков уж должно хватить.
в конструкторе кода сегодня пробовал:
void ICACHE_FLASH_ATTR
startfunc(){
// выполняется один раз при старте модуля.
}

void ICACHE_FLASH_ATTR
 timerfunc(uint32_t  timersrc) {
// место для вставки кода, который будет выполнятся каждую 1 секунду.
if(timersrc%5==0){
// место для вставки кода, который будет выполнятся каждые 30 секунд.
static uint8_t data[]={
255,0,0,
0,255,0,
0,0,255,
255,0,0,
0,255,0,
0,0,255
};
ws2812_push(data, 18);
}
if(timersrc%10==0){
// место для вставки кода, который будет выполнятся каждые 30 секунд.
static uint8_t data[]={
0,255,0,
0,0,255,
255,0,0,
0,255,0,
0,0,255,
255,0,0
};
ws2812_push(data, 18);
}
if(timersrc%15==0){
// место для вставки кода, который будет выполнятся каждые 30 секунд.
static uint8_t data[]={
0,0,255,
0,255,0,
0,255,0,
0,0,255,
0,255,0,
0,255,0
};
ws2812_push(data, 18);
}

if(timersrc%20==0){
// место для вставки кода, который будет выполнятся каждые 30 секунд.
static uint8_t data[]={
0,0,0,
0,0,0,
0,0,0,
0,0,0,
0,0,0,
0,0,0
};
ws2812_push(data, 18);
}
}

void webfunc(char *pbuf) {
os_sprintf(HTTPBUFF,"Hello world"); // вывод данных на главной модуля
}
результат вообще не предсказуем- зажигаются хаотично и цвета не те что должны быть и только 5 первых светиков из шести
Администратор запретил публиковать записи гостям.
Спасибо сказали: Tovaldas

led ws2812b через I2C 21 Дек 2016 19:53 #16470

  • Lsar
  • Lsar аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 190
  • Спасибо получено: 15
  • Репутация: 1
на 3 gpio только защитный диод на 361 Ом
Администратор запретил публиковать записи гостям.

led ws2812b через I2C 21 Дек 2016 21:29 #16471

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
Все верно работает, будет хаотично, тут же интервалы пересекаются, может сработать один интервал по 5 сек и по 15 одновременно.

6 светик живой ?
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

led ws2812b через I2C 22 Дек 2016 04:42 #16472

  • Lsar
  • Lsar аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 190
  • Спасибо получено: 15
  • Репутация: 1
С интервалами я ошибся. 6йЖивой, как и все остальные.
Почему то если отравить команду на один пиксель то ничего не горит, если на два загорается первый. Как будто начало сигнала теряется. Больше 7ми не удалось зажещь ни разу, какую бы длинную команду не подал. Как зажещь ну хотя бы 20шт?
А 150шт?
Администратор запретил публиковать записи гостям.

led ws2812b через I2C 22 Дек 2016 06:06 #16473

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
Нужно подавать команду разом на 3 леда одного чипа 2812.

Попробуйте использовать гет или удп запрос - там точно все работает - проверено не однократно.

В чате <OmIkRoNiXz> тестировал. Правда там есть другие проблемы с отпадыванием управления - пока с этим не разобрался , некогда.
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

led ws2812b через I2C 22 Дек 2016 09:59 #16474

  • Lsar
  • Lsar аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 190
  • Спасибо получено: 15
  • Репутация: 1
Пару постов назад уже отчитывался - толком не работало.
Подавал такую команду
http://192.168.0.105/rgbsend?data=0000FF00FF00FF0000
И так
http://192.168.0.105/rgbsend?data=0000FF00FF00FF00000000FF00FF00FF00000000FF00FF00FF0000
Очень долго загораются и перемигиваются потом еще долго, не горят стабильно
Администратор запретил публиковать записи гостям.
Модераторы: FlyRouter
Время создания страницы: 0.140 секунд

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.