|
74HC595 80шт проблема управления от AVR, Дефекты при т ос=0....-20 градусов |
|
|
|
Jan 6 2010, 08:18
|
Участник

Группа: Свой
Сообщений: 69
Регистрация: 24-04-07
Из: Харьков
Пользователь №: 27 289

|
Есть устройство "Бегущая строка" длина ее 6 метров. Индикация статическая. Схема индикации включает в себя 80 шт сдвиговых регистров 74HC595 включенных последовательно. Линии CLK DATA общие. Сигналы CLK DATA LATCH с микроконтроллера идут через 74HC244 (буфер, шинный формирователь). Устройство блочное 6 блоков по 1 метру. В первом блоке стоит контроллер. Микроконтроллер MEga168, работает на частоте 7,3728 Мгц Проблема: При +50...0 градусов информация отображается нормально, 0...-20 идут искажения, искажения не хаотичного характера а постоянны ( например столбец символа делиться на 2 столбца, или верх символа налазит на низ) при 0 градусов эффект только в том что верхняя строка светодиодов сдвинута на 1 пиксель назад ( т.е. когда бежит как бы тянется за остальными) при более низких температурах -10 -20 искажения усиливаются до неузнаваемости символов. Думаю возможные причины: 1) Криво написан код вывода в последовательный регистр. Уже было 2 варианта В1... этот код не менялся пару лет и работает с драйверами типа MBI5026, DM134 Тут я вижу лишь один косяк Clock фронт идет сверху вних а не снизу вверх (одна из главных причин) CODE void loadReg(unsigned int value) { char bitCnt; for(bitCnt=0;bitCnt<8;bitCnt++) { if((value&0x01)==0x01)PORTC|=(1<<PC3); //Data else PORTC&=~(1<<PC3); PORTC|=(1<<PC1); PORTC&=~(1<<PC1); //Clock value=(value>>1); } } B2.... Это проба немного изменить его ( когда менял попал на теплую погоду поэтому не мог видеть дефект, вносил изменения в слепую, но с морозами эффект не изменился) Тут вроде исправил фронт Clock на СНИЗУ-ВВЕРХ, плюс пытался ввести задержки несколько ns CODE void loadReg(unsigned int value) { char bitCnt; for(bitCnt=0;bitCnt<8;bitCnt++) { PORTC&=~(1<<PC1); //Clock delay(clk_delay); if((value&0x01)==0x01)PORTC|=(1<<PC3); //Data else PORTC&=~(1<<PC3); delay(data_delay); PORTC|=(1<<PC1); delay(clk_delay); value=(value>>1); } }
Также в качестве причины возможно неправильные тайминги, длинная линия передачи данных, большая емкость линий которая с уменьшением температуры растет (Как ее посчитать и как с ней бороться программно?) Помогите выбрать наиболее вероятную причину или укажите на ошибку.
74HC595PW.pdf ( 129.25 килобайт )
Кол-во скачиваний: 492
Сообщение отредактировал An@BoLiK - Jan 6 2010, 08:32
|
|
|
|
|
 |
Ответов
|
Jan 8 2010, 17:14
|
Участник

Группа: Свой
Сообщений: 69
Регистрация: 24-04-07
Из: Харьков
Пользователь №: 27 289

|
Всем спасибо за советы. Сегодня собирались как раз выяснить в чем дело. Погода не дала, температура выше 0, все работает, смысла ехать нет, так что ждем морозов..... Как разбиремся обязательно проинформирую.
|
|
|
|
|
Jan 9 2010, 14:55
|

Знающий
   
Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065

|
Цитата(rezident @ Jan 9 2010, 15:48)  78M15 плюс ограничитель напряжения (схема с общим истоком) на полевике перед ней. В указанном диапазоне температур эта связка почему-то не работала как предполагалось и напряжения (+15В) на выходе не было. В дальнейшем полевик на биполярный транзистор заменили. P.S. Электролитов, кстати, в обвязке не было. Лишь комбинация из керамики и 1 Омных резисторов. Ой, Вы меня пугаете... У меня сейчас в одном изделии используется связка TPS71533 + MMBF4363 для повышения входного напряжения (для питания девайса на базе MSP430). MMBF4393 -- это полевой транзистор со встроенным каналом (не MOS!). При Ugs = 0 он проводит ток, что бы его закрыть, нужно опустить напряжение затвора ниже напряжения на истоке. Соответственно схема: на сток транзистора подается входное напряжение, затвор сидит на выходе LDO, исток -- на входе LDO. Такое построение схемы не приводит к увеличению потребляемого стабилизатором тока (у меня каждый мкА на счету), и в то же время позволяет увеличить входное напряжение TPS-а. Запуск и удержание режима стабилизации эта "сладкая парочка" обеспечивает прекрсно. Вопросов нет, смотрел во всех режимах. А вот протестировать по температуре -- я что-то поленился. Я погонял всего один макет от -70 до +105'С, и, убедившись, что граблей нет, сразу заложил в серию... Блин, теперь я весь в думах, а не вылезет ли этот баг где-нибудь на объектах? Может штуки три-пять надо было попробовать? (Эх-х! Скорее бы на работу!) rezident, если можно чуть подробнее -- почему схема не работала, транзистор не захотел открываться? Перепад напряжения на транзисторе у Вас какой был? Глюк был постоянный или возникал периодически? Схема в отказ уходила при включении или в процессе работы? Вы не указали тип полевика... (Буф! Хоть новую ветку открывай!)
--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
|
|
|
|
|
Jan 10 2010, 00:03
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(zhevak @ Jan 9 2010, 19:55)  если можно чуть подробнее -- почему схема не работала, транзистор не захотел открываться? Достоверно определенной причины не нашли, но локализовали с точностью до этого полевика. Защита примитивная конечно, но нужно было лишь защитить от кратковременных выбросов входного напряжения амплитудой до 3-х кратного номинального. Ток потребления около 100-150мА. Цитата(zhevak @ Jan 9 2010, 19:55)  Перепад напряжения на транзисторе у Вас какой был? Перепад в рабочем режиме был вполне ожидаемый, на уровне V GS(th), порядка 2,7-3,4В. А вот при неисправности какие-то чудеса наблюдались. К сожалению, я уже не помню всех подробностей.  Цитата(zhevak @ Jan 9 2010, 19:55)  Глюк был постоянный или возникал периодически? Схема в отказ уходила при включении или в процессе работы? Неисправность возникала при переходном процессе во время включения питания (подача напряжения путем механической коммутации) в узком диапазоне отрицательных температур. Если устройство включилось и работает, то дальнейшее охлаждение или нагрев на работоспособность не влияло. Проверку в термокамере проводили. На столе я охлаждал отдельные детали "заморозкой" из баллончика и, контролируя температуру, дожидался нагрева до попадания в критический диапазон температур, затем подавал питание. На глючащих экземплярах эффект был весьма повторяемым. Достоверные осциллограммы переходного процесса по-моему тогда снять не получилось. Цитата(zhevak @ Jan 9 2010, 19:55)  Вы не указали тип полевика... Si2328DS, на схеме указан. Рисовал схему по памяти. C1 электролит на входе всего устройства. Еще было подозрение на "левую" керамику ЧИП0805 4,7мкФ 50В, но замена ее не дала результата. Точно также как и замена полевика ощутимого эффекта не давала. В общем изменили схемотехнику, заменив Si2328DS на BCX56 с уменьшением номинала резистора (и увеличением его мощности конечно же), стабилитрона и устройство пошло в серию.  Цитата(Herz @ Jan 9 2010, 23:36)  Простите, а как же он открывается? Ведь напряжение на затворе всегда ниже напряжения на истоке? ИМХО при включении (предполагаю, что напряжение на сток подается) потенциалы затвора и истока одинаковы и равны нулю.
Эскизы прикрепленных изображений
|
|
|
|
Сообщений в этой теме
An@BoLiK 74HC595 80шт проблема управления от AVR Jan 6 2010, 08:18 ukpyr попробуйте найти более мощный формирователь (74AC,... Jan 6 2010, 08:43 Duhas а все элементы для работы ниже нуля рассчитаны? Jan 6 2010, 09:08 An@BoLiK Цитата(Duhas @ Jan 6 2010, 12:08) а все э... Jan 6 2010, 09:23 _Pasha Думаю, иголки где-то по сдвиговому клоку надо иска... Jan 6 2010, 09:26 rx3apf Цитата(_Pasha @ Jan 6 2010, 12:26) Думаю,... Jan 6 2010, 10:42 An@BoLiK Платы длиной 20 см , на каждой плате 4 шт hc595+... Jan 6 2010, 09:44 SasaVitebsk Я делаю вход-выход. То есть, после каждого блока б... Jan 6 2010, 09:46 An@BoLiK Цитата(SasaVitebsk @ Jan 6 2010, 13:46) Я... Jan 6 2010, 10:04 Duhas а если попробовать замедлить передачу данных ? Jan 6 2010, 10:32 domowoj Цитата(Duhas @ Jan 6 2010, 16:32) замедли... Jan 6 2010, 11:22 Ant_m Почему вы думаете что проблема именно с клокам?
То... Jan 6 2010, 10:48 manul78 Цитата(Ant_m @ Jan 6 2010, 13:48) Почему ... Jan 6 2010, 12:05 An@BoLiK вот видео -10С http://www.youtube.com/watch?v=wl4i... Jan 6 2010, 12:07 manul78 Цитата(An@BoLiK @ Jan 6 2010, 15:07) А ту... Jan 6 2010, 12:16  An@BoLiK Цитата(manul78 @ Jan 6 2010, 16:16) Может... Jan 6 2010, 12:26   manul78 Цитата(An@BoLiK @ Jan 6 2010, 15:26) нет ... Jan 6 2010, 12:35 rezident Цитата(An@BoLiK @ Jan 6 2010, 17:07) може... Jan 6 2010, 12:55  An@BoLiK Цитата(rezident @ Jan 6 2010, 16:55) А не... Jan 6 2010, 13:06 _Pasha Навеяно разговорами про WDT. Включена собака? Если... Jan 6 2010, 12:28 An@BoLiK Цитата(_Pasha @ Jan 6 2010, 16:28) Навеян... Jan 6 2010, 12:32 Ant_m Я в шоке, какой подогрев??? Если проблема с конден... Jan 6 2010, 13:41 Евгений Германович Мне пришлось решать подобную проблему. причины был... Jan 6 2010, 17:31 An@BoLiK Одна такая платка потребляет максимум 2 А от 12 В.... Jan 6 2010, 18:00 manul78 Цитата(An@BoLiK @ Jan 6 2010, 21:00) Кто ... Jan 6 2010, 18:33  sazh Цитата(manul78 @ Jan 6 2010, 21:33) Вот е... Jan 6 2010, 18:41   manul78 Цитата(sazh @ Jan 6 2010, 21:41) Да по ба... Jan 6 2010, 18:58  Ant_m Цитата(manul78 @ Jan 6 2010, 21:33) Вот е... Jan 6 2010, 20:33 rx3apf Цитата(An@BoLiK @ Jan 6 2010, 21:00) Кто ... Jan 6 2010, 18:44  An@BoLiK Цитата(rx3apf @ Jan 6 2010, 21:44) И вот ... Jan 6 2010, 20:23   rx3apf Цитата(An@BoLiK @ Jan 6 2010, 23:23) Да т... Jan 6 2010, 21:20    ReAl Цитата(Ant_m @ Jan 6 2010, 22:33) Случай ... Jan 7 2010, 10:21 zhevak Я там на плате у Вас увидел переходные отверстия с... Jan 6 2010, 19:20 zombi Делал подобные девайсы длиной 1м состоящие из 4-х ... Jan 7 2010, 14:39 ukpyr а может развести CLK витой парой с MAX485 на каждо... Jan 8 2010, 09:42 zhevak Цитата(ukpyr @ Jan 8 2010, 14:42) а может... Jan 8 2010, 10:40     Herz Цитата(zhevak @ Jan 9 2010, 16:55) MMBF43... Jan 9 2010, 18:36      Herz Цитата(rezident @ Jan 10 2010, 02:03) ИМХ... Jan 10 2010, 09:46       rezident Цитата(Herz @ Jan 10 2010, 14:46) Допусти... Jan 10 2010, 17:32      zhevak to rezident
Спасибо!
to Herz
Да, у нас разные... Jan 10 2010, 16:59 Massi прошу Вас для ускорения работы снять осциллограммы... Jan 8 2010, 19:18 An@BoLiK Проблема решена. Но явной причины конкретно устано... Jan 19 2010, 11:30 zhevak Цитата(An@BoLiK @ Jan 19 2010, 16:30) Про... Jan 19 2010, 17:00
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|