Страница 1 из 2
динамическая индикация
Добавлено: Чт дек 31, 2015 07:49:15
креазот
к сожалению нет общей темы для вопросов по AVR. поэтому открыл тему. по сути наверное с пустяковым вопросом.
у меня AT90S2313, я так и не смог понять читая книги, какой ток допустим через один вывод микроконтроллера?
7 выводов под индикацию. какой ток можно пропустить через каждый вывод, так что не бояться спалить микросхему?
если 3 семисегментных знака работают в импульсном режиме какой ток нужно выбирать чтобы и светилось нормально и и не спалить ни микросхему ни индикаторы
делаю по схеме ниже
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 07:51:44
креазот
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 07:56:49
Аlex
На Ваш вопрос сможет ответить даташит.
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 07:58:53
КРАМ
"Нормально" - это как?
Вообще то 3 разряда дадут коэффициент мультипликации тока - 3.
То есть импульсный ток сегментов должен быть В ТРИ РАЗА больше среднего.
В даташитах на контроллер ВСЕГДА пишут максимально допустимый ток одного пина и максимально допустимый ток всех пинов вместе. Если принять ток пина 15 мА (максимально допустимый 20 мА), то ток всех пинов будет 105 мА (7*15). Проверьте по даташиту допустимость этого суммарного тока.
В таком раскладе СРЕДНИЙ ТОК сегментов составит 15/3=5 мА. Этот средний ток и определит яркость свечения.
Какая яркость будет при таком среднем токе зависит от самого светодиодного индикатора. Просто подайте такой ток (5мА) на один сегмент и оцените глазом.
Если такая яркость не устраивает, придется ставить сегментные ключи. Кроме того, нужно проверить допустимость выбранного импульсного тока для самого индикатора. Так же нужно обратить внимание на длительность импульса который допустим у сегментов индикатора для такого импульсного тока.
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 08:13:29
креазот
КРАМ, спасибо Вам за ответы.
5 мА на 1 сегмент индикатора тускло выходит. я уже смотрел. 10 надо бы..
я тут задавался вопросом какой длительности должны быть импульсы тока для индикаторов, в смысле какой длительности подразумевают составители даташитов, но я не нашел какой частоты они приводят импульсный ток. пишут импульный ток -такой -то, и все.
в даташите на AT90S2313 вот что написано. максимальные значения
DC Current per I/O Pin ........... 40.0 mA
DC Current V CC and GND Pins .............. 200.0 mA
40 мА это максимальный ток для 1 вывода?
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 08:29:46
КРАМ
Да, через один можно 40. Но это МАКСИМУМ.
То есть реально стоит ограничить 30 мА.
Однако у Вас 7 сегментов, то есть при зажигании восьмерки получится суммарный ток 210 мА, что уже превышает допустимый через пин GND контроллера. А через GND кроме этого текут и другие токи, например ток потребления самим контроллером...
То есть по любому потребуется ВНЕШНИЙ ключ на каждый сегмент.
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 08:34:36
креазот
КРАМ спасибо еще раз. теперь становится понятно
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 09:44:03
креазот
в одном даташите на семисегментный индикатор написано вот что:
Peak Forward Current IPF
(Duty 1/10 @1KHZ) ..........150 мА
помогите понять что это значит? понимаю что импульсный ток, частота 1кГц, а 1/10? и как все это вместе связано?
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 10:27:12
trengtor
1/10 это скважность
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 14:49:05
akl
duty cycle -
это коэффициент заполнения. В данном случае, за каждый период 1000мкс в течение 100мкс допускается ток через светик 150мА. Соответственно 900мкс тока не должно быть.
Re: динамическая индикация
Добавлено: Чт дек 31, 2015 19:24:23
креазот
akl, спасибо, теперь ясно
Re: динамическая индикация
Добавлено: Пт янв 01, 2016 11:51:43
OKF
Re: динамическая индикация
Добавлено: Сб янв 02, 2016 01:33:00
креазот
OKF, у Вас без ключей транзисторных как понимаю работает? хватает яркости свечения? как индикатор называется?
еще вопрос у меня. спрошу здесь.
надо ли при прошивке мк предварительно каждый раз стирать старую прошивку? если да, то является ли стирание своего рода тоже записью и не уменьшает ли оно количество перезаписи контроллера в таком случае в 2 раза?
Re: динамическая индикация
Добавлено: Сб янв 02, 2016 04:04:22
akl
креазот писал(а):...надо ли при прошивке мк предварительно каждый раз стирать старую прошивку?
Обязательно нужно стирать, т.к. запись осуществляется в предварительно подготовленную к этой процедуре память. Практически, при стирании память устанавливается в состояние лог. 1 по всем битам. При записи в нужные места заносится лог. 0.
Re: динамическая индикация
Добавлено: Сб янв 02, 2016 07:03:37
КРАМ
креазот писал(а):
надо ли при прошивке мк предварительно каждый раз стирать старую прошивку? если да, то является ли стирание своего рода тоже записью и не уменьшает ли оно количество перезаписи контроллера в таком случае в 2 раза?
Память программ перед новой прошивкой стирается. Но стирание не является записью. Это совершенно другой процесс.
В зависимости от типа флеша (NOR или NAND) под записью понимают запись нуля или единицы соответственно. Противоположное состояние записывать не нужно - оно возникает при стирании.
При использовании программаторов и оболочек к ним при программировании МК специально стирать память программ не требуется. Софт оболочки это делает автоматически.
Количество циклов записи определяется именно записью. Стирание тут не причем. Поэтому фактически изнашиваются не байты, а конкретные биты, в зависимости от количества записей в эти конкретные биты.
В МК с возможностью самопрограммирования (таких большинство), но без флеша данных (EEPROM) можно эмулировать этот флеш в памяти программ, используя часть разрядов слова команды (оно длиннее слова данных) как адрес эмулируемой EEPROM. При этом нужно помнить, что ресурс у программного флеша заметно ниже (NOR имеет высокую скорость выборки, но низкий ресурс, в отличии от NAND). Поэтому запись производят в скользящем режиме, каждый раз сдвигая массив на новое место. Можно отвести для этого скользящего массива в 10...100 раз больше места, чем требуется для EEPROM данных, и писать массив по кругу в этой области, тем самым во столько же раз увеличивая ресурс ячеек.
Re: динамическая индикация
Добавлено: Сб янв 02, 2016 08:42:12
akl
КРАМ писал(а):Количество циклов записи определяется именно записью. Стирание тут не причем. Поэтому фактически изнашиваются не байты, а конкретные биты, в зависимости от количества записей в эти конкретные биты.
Практика показывает, что крепко изношенную память программатор не может стереть. Видимо, поэтому число циклов запись/стирание в DS семейства AVR неразрывны.
Спойлер

Запись_стирание_FLASH_EEPROM.GIF
Re: динамическая индикация
Добавлено: Сб янв 02, 2016 08:46:40
креазот
akl, КРАМ, спасибо, интересно..
покумекал тут над сказанным, пришла мысль что можно попробывать сдвигать каждый раз область при записи во флеш программ, а потом вспомнил что первые адреса все равно зарезервированы под прерывания. и каждый раз при записи по этим адресам записываются одни и теже значения. получается не выходит увеличить количество циклов перезаписи.
или все же можно сдвигать всю таблицу прерываний?
Re: динамическая индикация
Добавлено: Сб янв 02, 2016 09:21:06
OKF
креазот писал(а):OKF, у Вас без ключей транзисторных как понимаю работает? хватает яркости свечения? как индикатор называется?
Не только транзисторных, но и резисторных, если Вы не заметили. Индикаторы с буковками SR, как сейчас помню - super red по нашему. Яркости хватает, хотя её много не бывает.
Re: динамическая индикация
Добавлено: Сб янв 02, 2016 09:36:14
akl
Видимо поэтому вместо красного светики полыхают желтым цветом. По мне - явный признак перекала.

Re: динамическая индикация
Добавлено: Сб янв 02, 2016 10:29:15
maxitch
Всех с Наступившим!
А как рассчитывается резистор в цепи базы транзистора? На общем аноде/катоде индикатора?