Например TDA7294

Форум РадиоКот • Просмотр темы - Динамическая индикация
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 23, 2024 18:38:21

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 04:18:23 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Вт сен 11, 2012 20:21:37
Сообщений: 211
Рейтинг сообщения: 0
Здравствуйте! Помогите пожалуйста разобраться в таком вопросе: имеется кусок кода термометра на 7-ми сегментном индикаторе. В коде есть строки и комментарий - "Меняем эти числа для другого индикатора":

#define a 32
#define b 128
#define c 2
#define d 8 //Меняем эти числа для другого индикатора
#define e 16
#define f 64
#define g 1
#define DP 4
#define minus Dig[10]
#define grad Dig[11]
#define probel Dig[12]

Есть такой вариант:
flash char digits[] = { //масив с цифрами
0b00000011, //0
0b10011111, //1
0b00100101, //2
0b00001101, //3
0b10011001, //4
0b01001001, //5
0b01000001, //6
0b00011111, //7
0b00000001, //8
0b00001001, //9
0b11111101, //знак минус
0b11111111 //пусто
};

Объясните пожалуйста откуда берутся эти цифры. Нигде не могу найти понятного объяснения.


Последний раз редактировалось vipien Пн дек 12, 2016 05:41:09, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 04:48:00 
Друг Кота

Карма: 64
Рейтинг сообщений: 966
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4221
Откуда: Ижевск
Рейтинг сообщения: 0
Если считать с 0, то сегмент a подключен к порту 5, сегмент b - к порту 7 и т.д.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 05:43:10 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Вт сен 11, 2012 20:21:37
Сообщений: 211
Рейтинг сообщения: 0
akl писал(а):
Если считать с 0, то сегмент a подключен к порту 5, сегмент b - к порту 7 и т.д.

:facepalm: непонятно. Можно подробнее? Для новичка в этом деле, так сказать.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 06:15:57 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -27
Зарегистрирован: Сб ноя 19, 2016 21:05:48
Сообщений: 203
Рейтинг сообщения: 0
vipien писал(а):
#define d 8 //Меняем эти числа для другого индикатора
#define e 16

Есть такой вариант:
flash char digits[] = { //масив с цифрами
0b00000011, //0
0b10011111, //1

В первом варианте - переведите число 8 из десятичной в двоичную системы с помощью встроенного в винду калькулятора в режиме Программист. Получите в двоичной системе 00001000. То есть, 1 будет зажигать сегмент d индикатора. Расположение сегментов индикатора есть в его даташите или в гуглопоиске. Подключение сегментов индикатора к выводам микроконтроллера показано на схеме, по которой вы работаете.
Второй вариант цифр в двоичной системе показывает сразу, какие сегменты индикатора будут включены для отображения на нем цифр 0, 1...
В зависимости от типа индикатора и его подключения, сегменты могут зажигаться как лог.единицей, так и лог.нулем. Второй вариант как раз этим принципиально и отличается от первого. Во втором варианте сегменты зажигаются лог.нулем на выходах.

_________________
Подпись убрал вместе с автором. aen


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 06:47:18 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Вт сен 11, 2012 20:21:37
Сообщений: 211
Рейтинг сообщения: 0
[/quote]В первом варианте - переведите число 8 из десятичной в двоичную системы с помощью встроенного в винду калькулятора в режиме Программист. Получите в двоичной системе 00001000. То есть, 1 будет зажигать сегмент d индикатора. [/quote]
Я тоже так думал, но не сходится у меня. Для сегмента d, согласен, совпадает. Для других сегментов нет.

Эти цифры откуда:
#define minus Dig[10]
#define grad Dig[11]
#define probel Dig[12]


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 06:56:14 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -27
Зарегистрирован: Сб ноя 19, 2016 21:05:48
Сообщений: 203
Рейтинг сообщения: 0
Для других сегментов переделайте так, чтобы совпадало. Обратно преобразуйте из двоичной в десятичную.
#define minus Dig[10] - это присвоение имени minus для элемента массива Dig с индексом 10. Тот массив содержит значение для зажигания сегментов индикатора

_________________
Подпись убрал вместе с автором. aen


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 07:52:06 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Вт сен 11, 2012 20:21:37
Сообщений: 211
Рейтинг сообщения: 0
Так, с выводами индикатора вроде разобрался. Осталось с #define minus Dig[10] разобраться. Спасибо за разъяснения!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Пн дек 12, 2016 18:05:46 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -27
Зарегистрирован: Сб ноя 19, 2016 21:05:48
Сообщений: 203
Рейтинг сообщения: 0
Найдите данные массива Dig, в нем найдите 11-й по счету элемент (индексы считаются с 0, поэтому элемент с индексом 10 будет в списке массива 11-м по счету). Точно так же и с Dig[11], Dig[12].
Вообще, вам очень следует подробнее изучить основы языка Си.

_________________
Подпись убрал вместе с автором. aen


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Динамическая индикация
СообщениеДобавлено: Вт дек 13, 2016 03:15:14 
Прорезались зубы
Аватар пользователя

Зарегистрирован: Вт сен 11, 2012 20:21:37
Сообщений: 211
Рейтинг сообщения: 0
Мурато Мяуконни, спасибо за подсказку. Основы изучаю по наличию свободного времени :)


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 23


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y