4х разрядный 7-сегментный индикатор нужен драйвер
- Войдите на сайт для отправки комментариев
Вс, 22/06/2014 - 18:55
Здравствуйте, уважаемые. ПОдскажите, пожалуйста. есть такой (извиняюсь за ссылку ) индикатор 7 сегментов на 4 разряда. Хочу подключить его к ардуине для того, чтобы выводить на него скорость. (бортовой компьютер).
Я так понимаю, мне нужен драйвер, потому что если без него - очень много портов будет занято....подскажите, как лучше его подключить? Что для этого нужно использовать? Если можно, то дайте конкретные маркировки микросхем....может у кого есть схема подключения или примеры управления...буду очень благодарен.
P.S.: я не прошу сделать за меня. Хочу разобраться сам, ищу в Интернете уже долго, ничего не пойму пока....
Приношу извинения...пришлось отходить от компьютера. Благодарю за обширный ответ.
Нет, я не студент медунивера =) кардиостимулятор делать не буду) курсовую не пишу.
Вот семисегментник, который я заказывал у китайцев (ибэй.ком)
дело в том, что здесь показано как подсоединить напрямую к ардуине. Для этого я задействую 12 портов....А если использовать микросхему для сдвига регистров, то я потрачу 2-3 цифровых порта.
Значит все же рекомендуете подключать напрямую к ардуине, без драйверов?
А вот есть элемент....только я так понял, он только для одного разряда? Для моего 4х разрядного не пойдет?
http://amperka.ru/product/cd4026-segment-driver
Нет, Ваза у меня нет) Ауди 100 С3. Под нее и делается. Покупать не вариант. Ардуину, думаю, осилим!) И индикатор победим!) Импульсы буду брать с цифрового одометра. Уже приобрел у китайцев. Он прикручивается на коробку передач вместо троса спидометра. На нем 3 контакта: +, - и сигнальный.
Хорошо, начнем с поиска транзисторов и подключения напрямую. Думаю скоро новые вопросы появятся))) Благодарю за ответы)
код какой-то есть
вы его понимаете?
да. Только здесь немного странный способ отображения значений. Путем "накручивания" счетчиком от единицы до заданного числа. Если, допустим, у меня скорость 120 км/час....интересно, насколько быстро будет "накручиваться" значение? Или я буду наблюдать этот процес? Интересно, а зимой, когда индикатор замерзнет....скорость не упадет? Это ж не слд-дисплей...
понятно значит схемы ВАЗ-2170 вам в помошь
Чем она мне может помочь? Я что-то не пойму...
Хорошо. Спасибо за советы. Тему не закрывайте. Соберу детали, попробую подключить, а там отпишусь....чтобы продолжить.
я не пойму, зачем мне схема от ВАЗ-2170? Ведь у меня есть схема от ауди 100....Или я Вас просто не понял? Объясните, пожалуйста.
На ибее есть уже смонтированные сборки с драйвером MAX7219, подключаются по SPI, поддерживают каскадное включение и есть отличные библиотеки к ним...
ищущий да обрящет
На ибее есть уже смонтированные сборки с драйвером MAX7219, подключаются по SPI, поддерживают каскадное включение и есть отличные библиотеки к ним...
К сожалению уже купил этот. Ничего, победим и такой вариант. На днях попаду на радиорынок, закуплю деталек и приступлю.
Так-с, сегодня приехали диоды, с ними и сдвиг-регистр (но он пока будет ждать своего череда). Хочу подключить напрямую...сейчас буду пытаться это сделать.
А где делись первые ответы???? Там же так подробно было все расписано.... =( Арт100, Вы удалили свои ответы???
Помогите подключить 4 разрядный индикатор управляемый через два сдвиговых регистра.
Они распаяны на его обратной стороне. Плата имеет 5 выводов: RSLK, SCLK, DIO, питание и земля. Индикатор который припаян к плате - 12 выводов.
Как я понял 4 из них отвечают за разряд, оставшиеся 8 - за сегменты (7+точка).
Подскажите как на него выводить данные?
Использование стандартного кода для сдвиговых регистров:
дает в результате попеременное зажигание 2 и 4 регистра (все сегменты)
дубль
Для начала попробуйте со стандартной библиотекой SPI...если ничего не получится, надо будет понять по какой именно схеме собрана ваша плата, и тогда уже думать
С платой и сдвиговыми регистрами (СР) понятно, они подключены таким образом:
а) первый СР задействован только на 4 ноги индикатора
если смотреть с "фронта" ноги такие:
4 * * 3 2 *
* * * * * 1
б) второй СР задействован полностью
* 1 6 * * 2
5 4 8 3 7 *
Не понятно какую комбинацию уровней подавать для вывода чего нибудь определённого уже на самом этом 12 ногом индикаторе. Ничего толкового кроме абракатабры не получается.
_______________________-
Добавлено чуть позже:
Ага спасибо всем сочувствующим. Разобрался.
Первая строка - "нули" активируют сегменты. Вторая "еденицы" активируют разряды.
Для многорозрядных чисел - строки повторить последовательно изменяя адрес разряда во второй строке.
Привет, denis64!! Спасибо тебе огромное, что научил пользоваться индикатором!)) у меня такой же как и у тебя, и я думал что никогда не разберусь с ним.
Но блин всё равно у меня проблемы. хотел сделать стробоскоп с индикацией частоты мегания. отдельно индикация и отдельно стробоскоп работает. А вместе не хочет нормально работать(
Система должна работать так так: включаешь питание горит индикатор с с показанием частоты, регулируешь частоту потенциометром, на индикотре меняются значения, нажимаешь кнопку и светодиод начинает моргать, ещё раз нажимаешь кнопку светодиод перестает моргать.
Система работает так: включаешь питание горит индикатор с с показанием частоты, регулируешь частоту потенциометром, на индикотре меняются значения, нажимаешь кнопку и светодиод начинает моргать а индикатор гаснет, ещё раз нажимаешь кнопку светодиод перестает моргать, а индикатор загорается.
При детальном рассмотрении выяснил, что при включённом режиме моргания система ведет себя так: загорается светодиод, горит установленной время, выключается, в выключенном состоянии находиться заданное время, на долю секунды высвечивается показания на индикаторе (причем вродебы в пол яркости), и светодиод включается снова. далее цикл повторяется бесконечно.
Думаю что ошибка в коде, но незнаю какая...
Как сделать чтобы индикатор всегда был включён?
Привет gosha2393! Феноменально! Я Забросил свои эксперименты с индикатором летом и вернулся к ним всего лишь 2 дня назад! Это судьба))) Сам вчера хотел задать похожий вопрос:
У меня была такая же почти проблемка. Я хочу сделать часы в автомобиль, такие что бы попеременно показывали время, дату, температуру за бортом, и напряжение питания бортовой сети.
И загвоздка в том что индикатору необходимо динамическое обновление с высокой частотой. И пока микроконтроллер отрисовывает числа на индикаторе - всё нормально, но как только он начинает заниматься ещё чем либо, например выяснением сколько времени, сколько напряжения на аналоговых пинах и прочими вещами.. то у него начинает не хватать времени на обновление индикатора. Вследствие этого некоторые разряды начинают светится тускло.
Я попробовал выполнять всё функции кроме индикации один раз в полсекунды использовав конструкцию типа:
timetemp1 = millis();
if (timetemp2 - timetemp1>500)
{
timetemp2=timetemp1;
// выполнять действия
}
А у тебя мне видится почти такая же причина, я досконально не изучал твой код но думаю что беда в том что ты используешь функцию delay в обработке мигания светодиода, вот в этом месте:
{
digitalWrite(ledPin, HIGH);
delay(time);
digitalWrite(ledPin, LOW);
delay(time);
}
попробуй избавится от всех delay в программе(используя пример на странице http://arduino.ru/tutorials/BlinkWithoutDelay), наверняка они и притормаживают индикацию.
Выбирайте схему сразу правильно - все выбирают матричные и динамические схемы - у вас что нет денег на регистры? Купите на каждую цифру по регистру и не парьтесь - процедура вывода будет предельно проста.
Спасибо, как только избавился от delay сразу всё заработало))) спасибо)