Нужно будет указать количество светодиодов (верх,низ,слева,справа)
А программа сама поделит на зоны(разрешение/количество светодиодов)
Нет.
Да.
Нужна , только руки кривые, самому не осилить
Нужно будет указать количество светодиодов (верх,низ,слева,справа)
А программа сама поделит на зоны(разрешение/количество светодиодов)
В идеале да, но не все так просто.
Лента должна быть расположена на задней стенке монитора/телевизора. Не так как у меня на последнем видео обернута (это временный вариант для лучшей демонстрации как это работает), а разрезана на углах и соединена какими-то проводками, потому что в горизонтальной плоскости лента так не гнется. При таком разрезании не получится очень точно, равномерно, стык в стык разместить эти ленты, однозначно получатся зазоры. Можно конечно подумать об алгоритме расчета оптимального размещения ленты. Учесть минимальную длину звена ленты, ширину ленты, габариты, разрешение, размер видимой части экрана, ширину каемки/рамки монитора/телевизора. Что вроде как вполне возможно.
Тут еще могут всплыть некоторые модели телевизоров, у которых так разместить ленту будет проблематично, потому что она закроет вентиляционные отверстия. Но это уже второй вопрос, сначала надо сделать первую основную часть, а потом уже решать проблемы особенностей дизайнов некоторых моделей .
Другой вариант - использовать светодиоды как в проекте AdaLight. Но лично мне такое исполнение не очень нравится, потому что вместо аккуратной ленты получается куча проводов, которые будут копить пыль, и сложнее будет эту пыль чистить.
Последний раз редактировалось MAKC; 26.02.2012 в 13:28.
на странице FastSPI есть вот такая фраза
sometimes the strips from china wire oddly, and it may be something like:
struct CRGB { unsigned char b; unsigned char r; unsigned char g; }
что по русски значит примерно следующее:
некоторые китайские ленты сделаны криво и порядок цветов может отличаться.
Судя по косяку с подписями к пинам Data и Clock это и есть объяснение проблемы.
После проверки оказалось, что действительно вместо
strip.setPixelColor(i, Color(red, green, blue));
надо писать
strip.setPixelColor(i, Color(blue, red, green));
Правильный скетч следующий, но делайте поправку на реализацию своей ленточки.
Надеюсь, что у вас ленточка окажется с меньшим количеством косяков
Эх и китайцыКод:#include <SPI.h> #include <WS2801.h> unsigned long blank = 0; int zones = 20; int dataPin = 2; int clockPin = 3; WS2801 strip = WS2801(zones, dataPin, clockPin); int leds = zones * 3; void setup() { strip.begin(); strip.show(); Serial.begin(115200); } void loop() { if (Serial.available() > leds) { if (Serial.read() == 255) //проверка префикса { for (int i = 0; i < zones; i++) { // прочитать данные о цветах из порта в массив byte red = Serial.read(); byte green = Serial.read(); byte blue = Serial.read(); // так должно быть по правильному //strip.setPixelColor(i, Color(red, green, blue)); // но на китайской ленточке перепутан порядок цветов, поэтому так strip.setPixelColor(i, Color(blue, red, green)); } blank = 0; } } else { if (blank > 100000) { blank = 0; for (int i = 0; i < zones; i++) { strip.setPixelColor(i, Color(0, 0, 0)); } } blank++; } strip.show(); } // Create a 24 bit color value from R,G,B uint32_t Color(byte r, byte g, byte b) { uint32_t c; c = r; c <<= 8; c |= g; c <<= 8; c |= b; return c; }
Последний раз редактировалось MAKC; 26.02.2012 в 17:31.
на уголки можно ставить вот такие коннекторы
http://www.alibaba.com/product-gs/45...connector.html
Накидал в электронной таблице расчет ленты для монитора.
Выложил в гуглдокс, затестить можете тут
Таблица в общем доступе доступна для изменения, можете подставлять свои данные.
Ваять веб страничку с калькулятором пока не стал
Собрал свой Ambilight на 10 зон, использовал Arduino Nano и два светодиодных драйвера TLC5940NT.
Телевизор Philips 52 дюйма.
Ленту брал такую.
Вот так все устроено.
В качестве управляющей программы использовал LightPack 5.8.6-1.
Выглядит очень даже симпатично:
Последний раз редактировалось muravej; 08.03.2012 в 17:26.
День добрый, не как не могу оставить тему фоновой подсветки, понравилась идея с WS2801, но если с лентой 3-диода на чип всё понятно
(5 метров= 100мм зона * 50 зон), то вот с 1 -диодом на чип
(5 метров= 32мм * 156 зон) не всё ясно
Поясню, у меня телевизор 32дюйма, 800мм на 530мм, выходит если брать ленту 1-диод на чип(32мм-зона) получяется
сверху и снизу по 25зон*2
слева и справа по 16 зон*2
в Итоге 82 зоны.
С прошивкой думаю не будет проблем взять скей MAKCа и вместо 20 поставить 82, или я не прав?
И с софтом не знаю что придумать, Лайтпаковый поддерживает мах50...
У ково какие идеи есть по этому поводу?
п.с. по поводу верхнего поста Чипа, ты написал что нужно переделать программу чтоб было лево право низ верх, ты имел ввиду Софт для ПК или скейч для ардуины?
Я имел ввиду софт компьютера, у меня телевизор 55"
Последний раз редактировалось Chip; 10.03.2012 в 15:13.
Эту тему просматривают: 3 (пользователей: 0 , гостей: 3)