Лента 200 пикселей, но горит только 144

Фермер
Offline
Зарегистрирован: 22.01.2020

Други, почему на ленте 200,400 WS2812B горит лишь магические 144 диода?

 

Программа примитивно проста 

const byte maxBrightness = 255;
const byte LED_CNT = 400;
CRGB leds[LED_CNT];

void try_led()
{
	for (int i = 0; i < LED_CNT; ++i)
	{
		leds[i] = CRGB::White;
		leds[i].maximizeBrightness(maxBrightness);
	}

	FastLED.show();
}

 

kalapanga
Offline
Зарегистрирован: 23.10.2016
b707
Offline
Зарегистрирован: 26.05.2017

Фермер пишет:

Други, почему на ленте 200,400 WS2812B горит лишь магические 144 диода?

 

так 200 диодов или 400? :) - в данном случае это принципиально, 200 должны гореть :)

Фермер
Offline
Зарегистрирован: 22.01.2020

kalapanga пишет:

http://arduino.ru/Reference/Byte

спасибо! Молодец! Я проглядел это )))

Ржу над собой до слез!

Правда не понял почему 144, а не 255, ну да ладно.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

Фермер пишет:

Други, почему на ленте 200,400 WS2812B горит лишь магические 144 диода?

 

так 200 диодов или 400? :) - в данном случае это принципиально, 200 должны гореть :)

не, не должны, хоть байт и унсигнед 400-256=144 (хорошая песня, начинай сначала)

b707
Offline
Зарегистрирован: 26.05.2017

ua6em пишет:

не, не должны, хоть байт и унсигнед 400-256=144 (хорошая песня, начинай сначала)

причем тут 400? (песня сначала - это тебе)

sadman41
Offline
Зарегистрирован: 19.10.2016

Потомушто если взять от двубайтового числа 400 только первый байт, то получится 400-256.

b707
Offline
Зарегистрирован: 26.05.2017

sadman41 пишет:
Потомушто если взять от двубайтового числа 400 только первый байт, то получится 400-256.

это мне ? :)

наверно ТС. но на всякий случай - ТС в заголовке спрашивает про 200 диодов, а не про 400. Двести диодов должны гореть все, они помесятяся в байт :)))))

sadman41
Offline
Зарегистрирован: 19.10.2016

Ну, он пишет, что не понял почему

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

sadman41 пишет:
Потомушто если взять от двубайтового числа 400 только первый байт, то получится 400-256.

это мне ? :)

наверно ТС. но на всякий случай - ТС в заголовке спрашивает про 200 диодов, а не про 400. Двести диодов должны гореть все, они помесятяся в байт :)))))

так спрашивать то он спрашивает, но в коде написал:
 

const byte LED_CNT = 400;