Форум ModelldepO  

Вернуться   Форум ModelldepO > Моделизм > Электрика и DCC > Arduino
Ответ
 
Опции темы Опции просмотра
Старый 14.11.2018, 17:42   #201
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,837
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 972
Поблагодарили 2,652 раз(а) в 1,569 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2678)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
Остальных цветов не нашел для формата 2x5x7 мм и с прозрачным корпусом
А такие, есть желание попробовать?
Я понимаю, что схема нужна будет совершенно другая.
Alexmit вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 14.11.2018, 20:03   #202
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
А такие, есть желание попробовать?
Я понимаю, что схема нужна будет совершенно другая.
Это светодиоды с общим анодом ?
shalex вне форума  
Вверх
Старый 14.11.2018, 20:46   #203
мистер И.К.С.
Ĩ.Ĉ.Š.ҧрѻҫҭҩ мӥҫҭҿӄѣӤ.Ҟ.Ҫ
 
Аватар для мистер И.К.С.
 
Регистрация: 10.07.2006
Адрес: 13 верста У.Г.Ж.Д. HOe.N.Z? . . G.Oe.HO!
Сообщений: 2,416
Сказал(а) 'не согласен(а)'!: 466
Сказали 'не согласен'! 136 раз(а) в 123 сообщениях
Сказал(а) спасибо: 3,320
Поблагодарили 7,250 раз(а) в 2,856 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (7879)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
Это светодиоды с общим анодом ?
Как укажешь в заказе так и будет. если конечно не перепутают
мистер И.К.С. вне форума  
Вверх
Старый 14.11.2018, 21:50   #204
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
А такие, есть желание попробовать?
Я понимаю, что схема нужна будет совершенно другая.
Есть сомнения, что мощи одной ардуины хватит изобразить не мерцающую для глаза эмуляцию PWM(ШИМ) на светодиодной матрице 8х11 (еще надо обслуживать локонет и хотя бы простой алгоритм вкл/выкл для каждого диода). Зато с PWM можно отказаться от "персональных" резисторов для светодиодов. И попробовать реализовать PWM "для матрицы" можно и сейчас - железо уже есть. Это если схему не менять принципиально, а просто нарастить матрицу.

Сейчас 24 "индикатора", значит нужно 72 канала PWM для трехцветных светодиодов. И еще 12 на светофоры. PWM можно сделать примитивный, с регулировкой, допустим, в 5 ступени (не горит - тоже ступень, так как могут светиться остальные цвета из RGB).

Последний раз редактировалось shalex; 15.11.2018 в 16:31.
shalex вне форума  
Вверх
Старый 15.11.2018, 17:26   #205
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Добавил в код регулировку PWM с шагом 25% - 4 уровня яркости. Пока работает. Пока, потому что еще не допилен алгоритм обработки команд для 60 каналов, который отъест ресурс производительности.

Макс и мин яркости соотв.:
Нажмите на изображение для увеличения
Название: 10668.jpg
Просмотров: 340
Размер:	125.4 Кб
ID:	164457Нажмите на изображение для увеличения
Название: 10669.jpg
Просмотров: 371
Размер:	130.2 Кб
ID:	164458

Потихоньку приближаюсь к реализации хранения и поиска среди прорвы адресов (в диапазоне 0..4095, значит одного байта не хватит). Также надо хранить уровень PWM для каждого канала и тип канала: стрелка, ОС, все тоже самое, но с инверсией. Напоминаю, что сейчас 60 каналов.

Пока из мыслей адрес канала "зашить" путем закрепления за номером CV. Остальное запаковать в CV.
Нажмите на изображение для увеличения
Название: 10670.jpg
Просмотров: 293
Размер:	16.5 Кб
ID:	164459

Последний раз редактировалось shalex; 17.11.2018 в 09:23.
shalex вне форума  
Вверх
Старый 12.12.2018, 14:13   #206
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Попробовал загрунтовать и "нарисовать" рельсовую схему на корпусе пульта. Левая часть собрана с кнопками и светодиодами.
Примерный вид пульта на один модуль.
Нажмите на изображение для увеличения
Название: 10691.jpg
Просмотров: 314
Размер:	72.3 Кб
ID:	165301Нажмите на изображение для увеличения
Название: 10689.jpg
Просмотров: 319
Размер:	76.3 Кб
ID:	165303Нажмите на изображение для увеличения
Название: 10693.jpg
Просмотров: 355
Размер:	132.2 Кб
ID:	165304

Шаблоны для нанесения "разметки":
Нажмите на изображение для увеличения
Название: 10692.jpg
Просмотров: 322
Размер:	71.8 Кб
ID:	165302

Последний раз редактировалось shalex; 12.12.2018 в 15:31.
shalex вне форума  
Вверх
8 пользователя(ей) сказали cпасибо:
Старый 13.12.2018, 21:44   #207
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,837
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 972
Поблагодарили 2,652 раз(а) в 1,569 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2678)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
Примерный вид пульта
А как вот такой вариант?
Нажмите на изображение для увеличения
Название: 10691-2.jpg
Просмотров: 299
Размер:	44.4 Кб
ID:	165382
Alexmit вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 13.12.2018, 22:19   #208
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
А как вот такой вариант?


Дело в том, что пульт повторяет расстановку светофоров на модуле. Это попытка выиграть лишние см для датчика перед светофором.

Хотя все равно перед светофором получается минимальный участок в 10-11см, что коротковато даже для ТТ. Может и правда лучше перенести светофоры, чтобы сделать сразу красиво. Спасибо! Надо подумать.
shalex вне форума  
Вверх
Старый 13.12.2018, 22:58   #209
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Немного допилил прошивку. Теперь настройку каждого из 60 светодиодов и 4 кнопок можно сохранять в CV. Настройка в CV задает поведение светодиода: он может отображать или состояние стрелки(или инверсное состояние), или состояние токового датчика.

Кнопки могут отправлять сообщения как токовые датчики, переключать стрелки или глобально выключать питание на рельсах.

Адрес объекта для отображения/управления задается в CV для канала. В локонете размер CV - 16 бит (что удобнее DCC, где 8 бит). В старших 4-х битах CV указывается тип объекта управления/отображения, а в остальных 12 битах - адрес объекта. Т.е. всего типов кнопки или стрелки может быть 15. Адреса от 0 до 4095, что вполне в рамках локонета. Программировать такие CV сложновато с непривычки, но в Екселе делается битовый калькулятор и тогда становится проще.

На видео демонстрация настройки кнопки и двух светодиодов для управление+отображения положения стрелки с адресом 20.



В прошивке бустера заложена возможность управления самим бустером стрелочными командами, а также отправку сообщений о КЗ как будто это сработал токовый датчик. Т.е. таким пультом, в том числе, можно включать питание после "локального" КЗ (когда отключился только модуль, а не весь макет).

Есть и "сюрприз" - на отправке/получении локонет-сообщений все горящие светодиоды пульта "промаргивают". В ролике это заметно. Что вполне понятно, т.к. обновление матрицы выполняется не стабильно. Надо попробовать обновлять светодиоды по прерыванию от какого нить таймера. А управление частотой таймера может пригодиться для управления общей яркостью пульта. Лишь бы локонет при этом не заглох

Последний раз редактировалось shalex; 14.12.2018 в 09:40.
shalex вне форума  
Вверх
5 пользователя(ей) сказали cпасибо:
Старый 14.12.2018, 00:58   #210
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,837
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 972
Поблагодарили 2,652 раз(а) в 1,569 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2678)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
Надо попробовать обновлять светодиоды по прерыванию от какого нить таймера.
!!! Первый таймер занят локонетом.

Да и использование ещё какого-нибудь прерывания приведёт к потере команд.

Последний раз редактировалось Alexmit; 14.12.2018 в 14:09.
Alexmit вне форума  
Вверх
2 пользователя(ей) сказали cпасибо:
Старый 14.12.2018, 18:16   #211
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Все так и случилось с прерываниями (( пришлось отказаться.

Потенциально можно переделать "базовую" плату пульта, если найдется способ (еще одна ардуина!?). А пока можно оставить и в таком виде.

Промаргивание наблюдается когда пришло сообщение по локонету, предназначенное именно пульту, или когда пульт отправляет сообщение, после нажатия на кнопку. В остальных случаях свечение стабильное.

Можно даже считать это фичей: когда что-то меняется на пульте, он промаргивает, привлекая внимание.

Осталось в коде реализовать индикацию глобального питания и можно сказать пульт готов к тестовой эксплуатации
Нажмите на изображение для увеличения
Название: 10694.jpg
Просмотров: 309
Размер:	94.3 Кб
ID:	165401
shalex вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 14.12.2018, 18:45   #212
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Нашел чип MAX7219 или 7221, который как раз для управления светодиодной матрицей 8х8. Вроде еще и умеет регулировать общую яркость.
Можно избавиться от двух чипов (74595 и ULN2003), кучки транзисторов и резисторов. В Китае десяток таких чипов продается примерно за 220 руб. Кажется это отличная альтернатива для "базовой" платы пульта.

Последний раз редактировалось shalex; 14.12.2018 в 21:37.
shalex вне форума  
Вверх
Старый 14.12.2018, 19:18   #213
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,837
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 972
Поблагодарили 2,652 раз(а) в 1,569 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2678)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
Нашел чип MAX7219 или 7221,
Интересная штучка.
Alexmit вне форума  
Вверх
Старый 15.12.2018, 14:16   #214
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Заказал в Китае чипы 7219 и 7221. Обошлись примерно в 33-35 руб/шт (покупал у знакомого продавца, у него на эти чипы не самые дешевые цены).
Нарисовал новую схему. Плата заметно опустела, что тоже хорошо.
Нажмите на изображение для увеличения
Название: 10695.jpg
Просмотров: 124
Размер:	100.7 Кб
ID:	165421
shalex вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 15.12.2018, 15:14   #215
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,837
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 972
Поблагодарили 2,652 раз(а) в 1,569 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2678)
По умолчанию

CLK U1 - почему идёт на D9 ? Должна на D13.
Alexmit вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 15.12.2018, 15:39   #216
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Просмотр библиотек для MAX72XX показал, что можно подключить к любым пинам, но, возможно, лучше к штатному SPI подключиться:
Нажмите на изображение для увеличения
Название: 10696.png
Просмотров: 313
Размер:	10.5 Кб
ID:	165422
shalex вне форума  
Вверх
Старый 05.01.2019, 15:43   #217
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Собрал примерный вид сдвоенного пульта:

Нажмите на изображение для увеличения
Название: 10755.jpg
Просмотров: 283
Размер:	124.8 Кб
ID:	165932Нажмите на изображение для увеличения
Название: 10757.jpg
Просмотров: 293
Размер:	173.8 Кб
ID:	165930

В боковом окне модуля выглядит так:

Нажмите на изображение для увеличения
Название: 10756.jpg
Просмотров: 295
Размер:	93.0 Кб
ID:	165931
shalex вне форума  
Вверх
4 пользователя(ей) сказали cпасибо:
Старый 07.01.2019, 14:24   #218
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Спасибо Алексею, выровнял светофоры на одной линии. Точнее буду делать два новых корпуса для пультов.

Еще появилась мысль - не добавить ли на пульт некий блок управления бустером: кнопку вкл/выкл канала бустера, а также индикацию локального КЗ и полярности.

Сделать два таких блока, пусть даже они будут несимметрично располагаться.

Нажмите на изображение для увеличения
Название: 10758.png
Просмотров: 274
Размер:	204.9 Кб
ID:	166069
shalex вне форума  
Вверх
Старый 07.01.2019, 14:59   #219
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,837
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 972
Поблагодарили 2,652 раз(а) в 1,569 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2678)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
Еще появилась мысль - не добавить ли на пульт некий блок управления бустером: кнопку вкл/выкл канала бустера, а также индикацию локального КЗ и полярности.
Только отдельно, а ещё крышечкой из оргстекла прикрыть.
Чтобы было время подумать, пока крышечку поднимаешь.
Alexmit вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 07.01.2019, 15:20   #220
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
Только отдельно, а ещё крышечкой из оргстекла прикрыть.
Чтобы было время подумать, пока крышечку поднимаешь.
Защищать надо, согласен. Но с другой стороны общего отключения DCC не предполагается, даже если кнопку нажмут - на модуле обесточится один из путей.

Еще вариант защиты - сделать кнопку утопленной. Правда тогда быстро поцарапается корпус в районе этой кнопки.
shalex вне форума  
Вверх
Старый 08.01.2019, 20:33   #221
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
даже если кнопку нажмут - на модуле обесточится один из путей.
Кстати, в прошивке можно добавить новый тип кнопки, который бы мог переводить стрелку только из одного положения. И сделать так, чтобы кнопкой только включать DCC на рельсы, без возможности выключения.
shalex вне форума  
Вверх
Старый 09.01.2019, 00:10   #222
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,837
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 972
Поблагодарили 2,652 раз(а) в 1,569 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2678)
По умолчанию

Цитата:
Сообщение от shalex Посмотреть сообщение
Кстати, в прошивке можно добавить новый тип кнопки, который бы мог переводить стрелку только из одного положения.
Только недавно делал вырезку.
Alexmit вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 18.01.2019, 12:55   #223
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

После нескольких версий экспериментальных скетчей понемногу провожу рефакторинг кода. Цель - получить набор удобных библиотек, из которых как из конструктора, можно будет собирать код для любых декодеров.

Например, вчера написал библиотеку для управления Loconet CV.

Тот, кто сталкивался с написанием универсального кода для декодеров, возможно, оценит удобство описания самих CV и работу с ними, которые должна давать библиотека.

Коротко, о возможностях:
Цитата:
List of Loconet CVs on Arduino platform. With minimum using of RAM memory.

Features:

default CV values and master list saves in programm memory (don't use RAM):
CV master-record:
-CV address;
-default value;
-text;
support EEPROM to store CV values;
support two kind of CV-groups:
- systems CV;
- users CV;
support special system CVs:
- reset CVs values to default;
- reset Arduino;

How to use: you can found an example in Examples folder.

Requires:

- EEPROMex (https://playground.arduino.cc/Code/EEPROMex);
- NMRA Loconet library (https://github.com/mrrwa/LocoNet);

Warning: class does not check uniqly LN CV address. The user should control it by yourself.
Внимание: библиотека точно будет дорабатываться, это черновой вариант, который работает, но возможности, скорее всего, будут наращиваться.

Последний раз редактировалось shalex; 18.01.2019 в 19:35.
shalex вне форума  
Вверх
3 пользователя(ей) сказали cпасибо:
Старый 20.01.2019, 00:09   #224
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

С помощью библиотеки из предыдущего поста и конструкции typedef enum можно почти не задумываясь оперировать "пользовательским" списком CV, добавляя или удаляя в него CV. Или, например, выводить список с расшифровкой значений в виде текста. Все это на фоне постоянной экономии памяти в ардуине нано.

Например, список CV для скетча-заготовки светофорного/серво декодера на PCA9685:

Нажмите на изображение для увеличения
Название: 10762.png
Просмотров: 259
Размер:	48.9 Кб
ID:	166612

В итоге, для 16 независимых PWM-каналов декодера, со списком CV из 44 шт (размер CV в локонете больше, чем в DCC, и можно записать значение 0..65535, тогда как в DCC только 0..255), с поддержкой 8 двухзначных светофоров, вроде даже видел зачатки кода для плавного розжига. На все про все код декодера занимает:
Цитата:
Скетч использует 21580 байт (70%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 1383 байт (67%) динамической памяти, оставляя 665 байт для локальных переменных. Максимум: 2048 байт.
В-общем я доволен. Раньше CV в коде было посвящено несколько страниц описания, неудобства при попытке удалить или добавить CV.

Библиотека - это как надежный мотор - куда ни поставь, при правильном использовании будет работать надежно и можно ставить из одной модели автомобиля в другую.

p.s. Немного не в тему основной темы пульта, но речь про базовый слой библиотек, общий для всех последних локонет-проектов: бустера+ОС, стрелочного, светофорно/стрелочно/светового декодера и самого пульта.

Последний раз редактировалось shalex; 20.01.2019 в 01:19.
shalex вне форума  
Вверх
2 пользователя(ей) сказали cпасибо:
Старый 27.01.2019, 20:57   #225
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,858
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,650
Поблагодарили 3,274 раз(а) в 1,172 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3285)
По умолчанию

Приехало новое "железо". С чипом MAX7219 светодиодная матрица засветилась с отличным качеством.
Свет ровный, на камеру не мерцает. Процессорное время теперь светодиодная матрица 8х8 не тратит совсем. Плюс потенциальная возможность уменьшить размер базовой ячейки пульта 2х2, за счет снижения числа компонентов. В-общем, доволен.

Нажмите на изображение для увеличения
Название: 10767.jpg
Просмотров: 217
Размер:	113.7 Кб
ID:	166954 Нажмите на изображение для увеличения
Название: 10768.jpg
Просмотров: 198
Размер:	85.5 Кб
ID:	166955

Последний раз редактировалось shalex; 28.01.2019 в 11:56.
shalex вне форума  
Вверх
6 пользователя(ей) сказали cпасибо:
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прототип стрелочного декодера из arduino. Anri Электрика и DCC 52 16.09.2021 22:16
странная работа пульта MARKLIN CS3 tecnoport НО (1:87) 8 21.12.2017 21:46
Диспетчер в режиме стрелочного пульта Arendatr Цифровая аппаратура Modelldepo 15 10.09.2013 20:03
Два пульта управления на макете (аналог). jenya83 Электрика и DCC 22 19.11.2011 13:05
управление при помощи ТВ пульта Васёк Электрика и DCC 10 10.10.2010 05:52


Текущее время: 20:12. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Copyright © ModelldepO.ru 2006 -