Помогите с RGB на PIC
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Помогите с RGB на PIC
Код я свой выложил Вам, попробуйте разобраться с ним. Если что, спрашивайте, ответим.
Набор программ у меня такой же как и у Soir.
А начинать, конечно же, нужно с обычной мигалки светиком. Затем можно кнопку добавить, поопрашивать её, и т.д..
PS: Не могу найти как подписаться на тему ((( Если кто знает, подскажите плиз.
Набор программ у меня такой же как и у Soir.
А начинать, конечно же, нужно с обычной мигалки светиком. Затем можно кнопку добавить, поопрашивать её, и т.д..
PS: Не могу найти как подписаться на тему ((( Если кто знает, подскажите плиз.
Re: Помогите с RGB на PIC
7 баллов из 10- по мне так не заучка но и не неучь)) ленивый я очень-как котЭ))
71 из 100 -для централизованного тестирования ваще ништяк, чесно признаться я думал что меньше наберу) учась в обычной школе а не гимназии например)
теперь по делу:
Proteus 7.6 SP0 v2.0.1 -вот такой протеус,пойдёт? или надо SP4 обязательно?
MPLAB 8.40 нету, есть MPLAB 8.30- подойдёт? или нужно найти 8.40?
компилятор не могу понять какая версия,вроде так:HI-TECH Universal toolsuite или РIСС STD 9.60 PL3 короче я хз
sPlan 6.0 есть) хоть что то хорошо)
71 из 100 -для централизованного тестирования ваще ништяк, чесно признаться я думал что меньше наберу) учась в обычной школе а не гимназии например)
теперь по делу:
Proteus 7.6 SP0 v2.0.1 -вот такой протеус,пойдёт? или надо SP4 обязательно?
MPLAB 8.40 нету, есть MPLAB 8.30- подойдёт? или нужно найти 8.40?
компилятор не могу понять какая версия,вроде так:HI-TECH Universal toolsuite или РIСС STD 9.60 PL3 короче я хз
sPlan 6.0 есть) хоть что то хорошо)
Re: Помогите с RGB на PIC
скачал я вот такую книгу :
http://www.bookarchive.ru/computer/prog ... i-pic.html
решил сперва немного почитать, общее представление о том что такое МК расширить. уже возникли вопросы:
1) байт состоит из бит?
2)регистры- что это такое? как я понял это специальные байты, биты которых (их ещё флагами или разрядами называют, правильно?) можно изменить и тем самым разрешить или запретить какие нибудь функции МК.
3)в книге пишут и про AVR, я боюсь запутаться. про них тоже важно читать или можно опускать инфу про AVR?
http://www.bookarchive.ru/computer/prog ... i-pic.html
решил сперва немного почитать, общее представление о том что такое МК расширить. уже возникли вопросы:
1) байт состоит из бит?
2)регистры- что это такое? как я понял это специальные байты, биты которых (их ещё флагами или разрядами называют, правильно?) можно изменить и тем самым разрешить или запретить какие нибудь функции МК.
3)в книге пишут и про AVR, я боюсь запутаться. про них тоже важно читать или можно опускать инфу про AVR?
Re: Помогите с RGB на PIC
Извините, что встреваю, я всё таки посоветую начать с Ассемблера для PIC. Дело в том, что когда Вы будете писАть программу на асме, Вы будете чётко представлять себе что в этот момент происходит в контроллере.
Я так понял, что Вы решили начать с PIC-ов, тогда наверное АВР не стоит трогать, потом когда разберётесь с одними можно начать разбираться с другими, иначе будет каша
И от себя лично посоветую сходить сюда, я начинал именно с этого.
Удачи.
С уважением.
Я так понял, что Вы решили начать с PIC-ов, тогда наверное АВР не стоит трогать, потом когда разберётесь с одними можно начать разбираться с другими, иначе будет каша
И от себя лично посоветую сходить сюда, я начинал именно с этого.
Удачи.
С уважением.
Re: Помогите с RGB на PIC
расскажите а как именно по принципу работает ваши RGB , я так понимаю счётчики используете, а сколько? их в F628A вроде бы 3 шт., наводит на мысль что вы 3 и использовали.....а как кнопки опрашиваете?
Re: Помогите с RGB на PIC
breaker писал(а):расскажите а как именно по принципу работает ваши RGB , я так понимаю счётчики используете, а сколько? их в F628A вроде бы 3 шт., наводит на мысль что вы 3 и использовали.....а как кнопки опрашиваете?
Используется один счетчик - TMR0 для формирования временного интервала. При наступлении прерывания от переполнения TMR0 - счетчик количества прерываний (от 0 до 255 - количество градаций яркости) увеличивается на единицу. Затем по очереди значение этого счетчика сравнивается с установленными значениями яркости каждого канала, если значение счетчика меньше значения яркости - канал включается. Если больше - выключается. Вот фрагмент управляющей программы, показывающий работу со счетчиком, выполняется при каждом прерывании TMR0.
//----------
void display () {
if (count < 255) {
count ++;
}
else {
count = 0;
}
//----------
if (count < bright_R) {
led_R = 1;
}
else {
led_R = 0;
}
//----------
if (count < bright_G) {
led_G = 1;
}
else {
led_G = 0;
}
//----------
if (count < bright_B) {
led_B = 1;
}
else {
led_B = 0;
}
}
//----------
Re: Помогите с RGB на PIC
breaker писал(а):…а как кнопки опрашиваете?
Каждые примерно 0,1 сек проверяется состояние соответствующего входа от кнопки. Если кнопка нажата – выполняется увеличение или уменьшение установленного значения яркости для данного канала. На самом деле несколько сложнее. Вычисляется было ли длинное нажатие или короткое, подготавливается запись в EEPROM… Код не привожу его надо долго описывать. Я весь проект сбросил в Вам в личку, что не понятно – спрашивайте.
Re: Помогите с RGB на PIC
а можно и мне исходники скинуть, какраз нечто похожее паяю
Re: Помогите с RGB на PIC
а что если не секрет, поделитесь с нами вашими идеями? 
Re: Помогите с RGB на PIC
-Light- писал(а):а можно и мне исходники скинуть, какраз нечто похожее паяю
Отправил в личку два варианта - без кварца и с кварцем 20МГц.
Re: Помогите с RGB на PIC
Доброго времени всем, вот это может поможет http://avrhobby.ru/index.php?option=com ... &Itemid=53.
Извените что в чужой теме ищу себе схему простого RGB контроллера, пока без результатов(, если у кого есть какой вариант - подскажите плиз. Мне нужно тоже самое что в этой теме, только управление не от кнопок, а энкондером. Крутиш ручку и меняется палитра цветов, с памятью последнего состояния. Видел в инете готовое изделие, там еще реализованно при нажатии на энкондер и врещении меняется яргость. К сожелению в программировании я ни как(.
Хочу использовать для квартирной подсветки, кнопками подбирать нужный оттенок мякго говоря неудобно, даже когда делается это редко.
Извените что в чужой теме ищу себе схему простого RGB контроллера, пока без результатов(, если у кого есть какой вариант - подскажите плиз. Мне нужно тоже самое что в этой теме, только управление не от кнопок, а энкондером. Крутиш ручку и меняется палитра цветов, с памятью последнего состояния. Видел в инете готовое изделие, там еще реализованно при нажатии на энкондер и врещении меняется яргость. К сожелению в программировании я ни как(.
Хочу использовать для квартирной подсветки, кнопками подбирать нужный оттенок мякго говоря неудобно, даже когда делается это редко.
Re: Помогите с RGB на PIC
lelic писал(а): Мне нужно тоже самое что в этой теме, только управление не от кнопок, а энкондером. Крутиш ручку и меняется палитра цветов, с памятью последнего состояния.
Давайте Ваш энкодер. Посмотрю, что можно сделать. Это их надо 3 штуки?
Re: Помогите с RGB на PIC
Нет один, смысл такой - крутишь меняется вся палитра, (пользовался такой реализацией в автомагнитоле alpine 983х, плавно менялась подсветка панели, можно подобрать идеально в цвет подсветки приборов), т.е. от одной ручки вся радуга, оборотов конечно надо сделать много от конца до конца (точно не вспомню более 10). Энкодер можно поставить любой, но желательно по больше шагов на оборот. Незнаю но по мойму такая реализация намного лучше чем кнопочная, тем более в схеме менять ничего значительного не нужно, только вместо кнопок - энкодер к портам контроллера, а прошивку надо. Тем более очень удобно монтировать в стене, корпус взять от диммера которые продаются для регулировки освещения, нажатием можно вкл/выкл освещение.
Да и еще, 256 градаций по каждому цвету не надо, устанешь крутить, насколько я понимаю (поправте если не так) можно сделать примерно так 0-10-20-30 (извеняюсь если не корректно выразился)
Да и еще, 256 градаций по каждому цвету не надо, устанешь крутить, насколько я понимаю (поправте если не так) можно сделать примерно так 0-10-20-30 (извеняюсь если не корректно выразился)
Re: Помогите с RGB на PIC
lelic писал(а):... смысл такой - крутишь меняется вся палитра...
Да и еще, 256 градаций по каждому цвету не надо, устанешь крутить, насколько я понимаю (поправте если не так) можно сделать примерно так 0-10-20-30 ...
Дайте мне алгоритм по каждому цвету. То есть, покрутил на один шаг R=10, G=0, B=0; второй - R=10, G=10, B=20... Желательно, чтобы была какая-то закономерность в работе энкодера как на увеличение яркости каналов, так и на уменьшение.
Re: Помогите с RGB на PIC
R255 G0 B0
R255 G100 B0
R255 G200 B0
R180 G255 B0
R70 G255 B0
лучше открыть paint или фотошоп там по палитре сразу будет понятен алгаритм смены цвета. Я даже переборщил
Т.к я планирую собрать с нуля, мне все равно на каком контроллере это будет реализованно.
R255 G100 B0
R255 G200 B0
R180 G255 B0
R70 G255 B0
лучше открыть paint или фотошоп там по палитре сразу будет понятен алгаритм смены цвета. Я даже переборщил
, шаг можно будет и по крупнее.0-10-20-30
Т.к я планирую собрать с нуля, мне все равно на каком контроллере это будет реализованно.
Re: Помогите с RGB на PIC
lelic писал(а):R255 G0 B0
R255 G100 B0
R255 G200 B0
R180 G255 B0
R70 G255 B0
лучше открыть paint или фотошоп там по палитре сразу будет понятен алгаритм смены цвета. Я даже переборщил
Кажется понял. Белого не будет?
lelic писал(а):шаг можно будет и по крупнее.
Я имел ввиду шкалу в процентах 0-10-20...100. То есть 10 градаций каждого цвета. Теперь, я так понимаю, линию палитры нужно разбить на 10 частей?
lelic писал(а):Т.к я планирую собрать с нуля, мне все равно на каком контроллере это будет реализованно.
PIC16F628A.
Re: Помогите с RGB на PIC
То есть 10 градаций каждого цвета. Теперь, я так понимаю, линию палитры нужно разбить на 10 частей?
Да я думаю 10-15 частей каждого цвета будет достаточно.
Мда про белый я как то забыл, мне не критично, но если вас не затруднит, то может как то можно реализовать. На энкодере имеется кнопка, на нее бы повесить вкл/выкл.
Мне очень не удобно озадачивать людей своими просьбами, так что как сделаете так и будет, я благодарен за любой труд. Я в свою очередь постораюсь по быстрее дать отчет о работе данного контроллера.
Вот нашел http://www.ledart.ru/catalog/9/74/ хочется собрать упращенный вариант такого.
Re: Помогите с RGB на PIC
lelic писал(а):Мда про белый я как то забыл, мне не критично, но если вас не затруднит, то может как то можно реализовать. На энкодере имеется кнопка, на нее бы повесить вкл/выкл..
Может сделать так:
кнопка на энкодере нажата - регулировка белого от 0 до 100%;
кнопка на энкодере отжата - регулировка цветной палитры.
Правда при этом будут неудобства включения/выключения из режима регулировки палитры.
Или так:
одно нажатие на кнопку включает белый и режим регулировки яркости белого;
второе нажатие включает цветной режим;
третье - выключает все.
И далее по кругу.
Выбор алгоритма за Вами, я постараюсь превратить его в прошивку.
Re: Помогите с RGB на PIC
Тогда я бы остановился на этом
одно нажатие на кнопку включает белый и режим регулировки яркости белого;
второе нажатие включает цветной режим
И далее по кругу, т.е. нажатием будет переключаться белый/цветной, а выключать лучше тогда отдельным выключателем питания.
(после китайских фонариков в которых 5 режимов и все по кругу, мне кажется это не удобно)
одно нажатие на кнопку включает белый и режим регулировки яркости белого;
второе нажатие включает цветной режим
И далее по кругу, т.е. нажатием будет переключаться белый/цветной, а выключать лучше тогда отдельным выключателем питания.
(после китайских фонариков в которых 5 режимов и все по кругу, мне кажется это не удобно)
Re: Помогите с RGB на PIC
lelic писал(а):Тогда я бы остановился на этом
одно нажатие на кнопку включает белый и режим регулировки яркости белого;
второе нажатие включает цветной режим
И далее по кругу, т.е. нажатием будет переключаться белый/цветной, а выключать лучше тогда отдельным выключателем питания.
Если белый вывести в ноль - будет соотвествовать выключенному.
А кнопка на энкодере с фиксацией?