Программирование 24 индикаторов?
- Войдите на сайт для отправки комментариев
Вс, 30/06/2013 - 13:49
Добрый день, есть проблемка.
Собрал что-то типа панели из 24 семисегментных индикаторов.
Сами индикаторы разные: 3-х разрядные, 1-разрядные , и еще один 4х разрядный с динамической индикацией.
Все подключил каскадом через четыре 74HC595 регистра. Библиотека SPI.h.
Проблема в следующем: когда все начинают светится - ОЧЕНЬ тускло получается.
Как это можно исправить?
Спасибо.
Сделайте поярче.
??? Не очень понял. Как?
На сколько я понимаю, зажигание каждого сегмента делается по такому принципу:
соответственно если зажечь 4 индик. - то они светят ярко, т.к. задержка небольшая.
Если 24, то яркость сильно падает.
??? Не очень понял. Как?
Может тут знают как. А мне и никому кто читает эту тему не видно, что и как у вас подключено и какой код вы в дуину заливаете.
Почитайте темку, если не понимаете на что я вам намекаю.
Я конечно дико извиняюсь, что отнял у Вас драгоценное время ( ведь на поиск таких сайтов "http://z90.ru/forum/index.php" нужно время).
И мог бы расписать и весь код и схему включения , на пару листов.
Вместо этого хотел попросить у Специалистов решение проблемы. И по-моему основную информацию предоставил.
4 регистра через каскад - думаю знающим людям это понятно. (для подключения к ардуине используются всего 3 провода) используемая библиотека и код зажигания написал.
Единственно что не написал, что подключаю индикаторы напрямую к ардуине.
А проблема все таже
Малое количество индикаторов светится ЯРКО, большое количество - тускло.
Единственно что не написал, что подключаю индикаторы напрямую к ардуине.
А проблема все таже
Малое количество индикаторов светится ЯРКО, большое количество - тускло.
Давайте я угадаю... если двигатель от моторолера установить в легковую машину, то машина едет медленно и двигатель сильно греется и ломается... но когда двигатель на моторолере, то моторолер же носится быстро.. в чем же проблема? :)
Вместо этого хотел попросить у Специалистов решение проблемы. И по-моему основную информацию предоставил.
И по-моему основную информацию предоставил.
Так по-моему вам основной ответ и предоставили...
дык чего тут гадать то? если несколько лампочек горит ярко, а много лампочек горит тускло.. уже даже пьяным ежикам в лесу понятно что напряжения просаживается.... вы бы еще плазменую панель от ардуино запитали :) и спрашивали чего она там скачко образно плазму поджигает...
дык чего тут гадать то? если несколько лампочек горит ярко, а много лампочек горит тускло.. уже даже пьяным ежикам в лесу понятно что напряжения просаживается.... вы бы еще плазменую панель от ардуино запитали :) и спрашивали чего она там скачко образно плазму поджигает...
Не факт - сейчас топикстартер заявит, что вы у него драгоценное время своими безосновательными догадками отбиратете и ардуино питается от киловатного блока питания.
(с) пьяные коньяком ёжики
Не факт - сейчас топикстартер заявит, что вы у него драгоценное время своими безосновательными догадками отбиратете и ардуино питается от киловатного блока питания.
(с) пьяные коньяком ёжики
Да я уже даже уверен, что у него своя атомная станция которая питает Ардуино...
(С) Ёжик проводящий совещание с 3 бутылками вина под шашлык из лисы
https://fbcdn-sphotos-g-a.akamaihd.net/hphotos-ak-ash4/1048187_471416206...
фотограф был немного не в фокусе, но вроде торт со свечками видно ясно.. 120 лет аднака!
дык чего тут гадать то?
дык чего тут гадать то?
ну я как бы и не настаиваю, но это первое что бы я проверил, а то я видел одного.. он 30 метров светодиодных лент повесил на вроде бы большой трасформатор. только ленты соединил все в одну... и бегал удивлялся что это так все не равномерно светится :)
Смотрим:
Видим - 4 цифры, в один момент времени горит только одна цифра, то есть на каждую цифру затрачено 1/4 времени свечения всего индикатора - то есть 25% периода.
А теперь представьте 10 таких цифр, и так же в один момент времени горит толька одна цифра. Получим 1/10 от всего времени - то есть 10% периода.
Теперь подытожим. Ничего не напоминает? Например ШИМ. Так а теперь скажите какой светодиод будет светить ярче: с 10% заолнения периода или 25% ?
Так что для вас "дык чего тут гадать" - и это только по аппаратной части, а еще вариантов 5 - 10 по программной части может быть.
Но так ТС все знает, и уже все решил, то пусть ждет своего спецэкстрасенса.
не ну это все понятно, но у него там же целая куча индикаторов собрана.... а в целом согласен..
- Чаинки не умеют предсказывать будущее, это всем известно.
- Кроме самих чаинок.
- Ну да, нужно быть совсем слабоумной, чтобы спорить с чайной заваркой.
(С) Пратчетт :)
Блин, ребята.
Ну просто смех, такую активность бы и на дело, а то столько мусора и слюней да впустую.
Ну кто ж спорит, что Вы гуру в програмировании ардуины и электроники.
Я в этом деле пока "чаинка в чайнике", (хотя владею пятью языками программирования, ну это так к слову).
В начале было указано, что подключение индикаторов через сдвиговые регистры, ну почему для этого экстрасенс нужен? Ведь ясно, что индикация будет динамическая. На сколько я понимаю, динамическая индикация зажигает в каждый момент времени один сегмент, т.е. атомная станция для питания ардуины не нужна. и питание просаживаться не должно.
единственно maksim ответил по делу:
Видим - 4 цифры, в один момент времени горит только одна цифра, то есть на каждую цифру затрачено 1/4 времени свечения всего индикатора - то есть 25% периода.
А теперь представьте 10 таких цифр, и так же в один момент времени горит толька одна цифра. Получим 1/10 от всего времени - то есть 10% периода.
Это я и имел ввиду, и просил помощи как это решается, программно или аппаратно.
ну так вы же гуру в 5 языках :)
и понимаете уже что в один период времени горит только один сегмент :)
продалжайте свои расуждения дальше...
сегментов много.. в один момент времени может гореть только один...
ардуина медленная... пока она все сегменты пробежит.... думаю что если вы добавите еще несколько секций то увидите даже как сегменты мерцают... :)
а дальше опять начинаются гадания..
мы ж не видим вашего кода, чего вы там нагородили...
не видим вашей схематики чего вы там насоединяли...
пойду чаинок поспрашаю
так дык. вы в первом посте указали что с динамической индикацией только один 4-х разрядный индикатор. следовательно, можно предположить что все остальные подключены напрямую к 595. А сама по себе 595 вполне себе может быть статичной. Записал и всё. Так что вы таки не полностью раскрыли суть вопроса.
сегментов много.. в один момент времени может гореть только один...
Если вы имели в виду не разряд, а именно сегмент, то:
Ну почему же - и семь сегментов одновременно гореть могут - цифра "8".
И даже больше - если замусоленная здесь динамическая индикация не выходит за пределы одного модуля (1-, 2-, 3- или 4-разрядного). Лишь бы сдвиговых регистров хватило...
так дык. вы в первом посте указали что с динамической индикацией только один 4-х разрядный индикатор. следовательно, можно предположить что все остальные подключены напрямую к 595. А сама по себе 595 вполне себе может быть статичной. Записал и всё. Так что вы таки не полностью раскрыли суть вопроса.
Именно поэтому:
Блин, ребята.
Ну просто смех, такую активность бы и на дело, а то столько мусора и слюней да впустую.
[...]
Если вы имели в виду не разряд, а именно сегмент, то:
Извиняюсь разряд, который отображает цифру.
так дык. вы в первом посте указали что с динамической индикацией только один 4-х разрядный индикатор. следовательно, можно предположить что все остальные подключены напрямую к 595. А сама по себе 595 вполне себе может быть статичной. Записал и всё. Так что вы таки не полностью раскрыли суть вопроса.
Не буду спорить, но я имел ввиду следующее:
3х разрядный (статический) 28 ног. если ноги отвечающие за сегменты запитать на один регистр, а за включение разрядов на другой получается - динамический. таких индикаторов 5 штук.
1х разрядный - 5 штук.
4х разрядный - 1шт.(динамический),
т.к. все пины со всех индикаторов отвечающие за сегменты запараллелены, т.е. один 595 на отображение сегментов, остальные три 595 отвечают за включение разрядов.
я так понимаю при таком подключении через 595, неважно динамический или статич. индикатор. разница в кол-ве ножек.
далее регистры включены каскадом, т.е. на ардуино приходит всего 3 провода управления . +5v и земля.
да код пока простецкий, для теста. если выполнить один любой цикл, то отобразится только 8 цифр на определенном регистре. и яркость будет приемлемая.
в таком виде все сегменты отображают пять. а так уже тускло.
Так чего страшная тайна питания 24-х индикаторов от одной ардуино будет схемотехнически раскрыта или так и продолжим теоретизировать, почему оно так тускло?
Максим там чего то про шим рассказал - дык, 74HC595 должен хранить своё состояние в момент отсутствия опроса контроллера, т.е. находиться в статическом состоянии, а не тупо отключать индикаторы.
если все включены параллельно, то наверное добиться яркости будет не возможно. делите на группы по пять штук. разве что попробывать уменьшить номинал резисторов.
и попробовать выводить не в цикле, а в прерывании таймера.
74HC595 должен хранить своё состояние в момент отсутствия опроса контроллера, т.е. находиться в статическом состоянии, а не тупо отключать индикаторы.
Об этом я не знал, если можно по подробнее.
и попробовать выводить не в цикле, а в прерывании таймера.
спасибо, об этом я не подумал наверное это правильный вариант.
хотя на мой взгляд выполнение For должно быть быстрее чем loop, т.е. чем частота проца
P.S.
трудно менять мышление с линенйного на циклическое программирование.
Первый попавшийся пример из гугла - http://www.rlocman.ru/shem/schematics.html?di=65110
Пока на выводе 12 (ST_CP, иногда обозначается как RCLK) низкий уровень, данные записываются в регистр сдвига. Когда уровень переходит в высокий, данные из сдвигового регистра фиксируются в регистре хранения, из которого поступают на выводы Q0…Q7.
Иначе, зачем вообще эта микросхема нужна?