реклама на сайте
подробности

 
 
> 74HC595 80шт проблема управления от AVR, Дефекты при т ос=0....-20 градусов
An@BoLiK
сообщение Jan 6 2010, 08:18
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
An@BoLiK
сообщение Jan 8 2010, 17:14
Сообщение #2


Участник
*

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



Всем спасибо за советы. Сегодня собирались как раз выяснить в чем дело. Погода не дала, температура выше 0, все работает, смысла ехать нет, так что ждем морозов..... Как разбиремся обязательно проинформирую.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jan 8 2010, 21:52
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(An@BoLiK @ Jan 8 2010, 22:14) *
Сегодня собирались как раз выяснить в чем дело. Погода не дала, температура выше 0, все работает, смысла ехать нет, так что ждем морозов.....
Можно не ждать морозов, а воспользоваться Freese75 (быстрая заморозка) для выявления локальных "узких" мест, критичных к низкой температуре. Я как-то раз с помощью него "выловил" глюк, проявляющийся в узком температурном диапазоне (примерно -10°C...-25°C). При температуре выше и ниже (до -50°C) глюк не проявлялся.
Go to the top of the page
 
+Quote Post
sazh
сообщение Jan 9 2010, 09:11
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(rezident @ Jan 9 2010, 00:52) *
Я как-то раз с помощью него "выловил" глюк, проявляющийся в узком температурном диапазоне (примерно -10°C...-25°C). При температуре выше и ниже (до -50°C) глюк не проявлялся.


А конкретно в чем глюк заключался ?
Go to the top of the page
 
+Quote Post
rezident
сообщение Jan 9 2010, 10:48
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(sazh @ Jan 9 2010, 14:11) *
А конкретно в чем глюк заключался ?
78M15 плюс ограничитель напряжения (схема с общим истоком) на полевике перед ней. В указанном диапазоне температур эта связка почему-то не работала как предполагалось и напряжения (+15В) на выходе не было. В дальнейшем полевик на биполярный транзистор заменили.
P.S. Электролитов, кстати, в обвязке не было. Лишь комбинация из керамики и 1 Омных резисторов.
Go to the top of the page
 
+Quote Post
zhevak
сообщение Jan 9 2010, 14:55
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 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, если можно чуть подробнее -- почему схема не работала, транзистор не захотел открываться? Перепад напряжения на транзисторе у Вас какой был? Глюк был постоянный или возникал периодически? Схема в отказ уходила при включении или в процессе работы? Вы не указали тип полевика... (Буф! Хоть новую ветку открывай!)


--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
Go to the top of the page
 
+Quote Post
rezident
сообщение Jan 10 2010, 00:03
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(zhevak @ Jan 9 2010, 19:55) *
если можно чуть подробнее -- почему схема не работала, транзистор не захотел открываться?
Достоверно определенной причины не нашли, но локализовали с точностью до этого полевика. Защита примитивная конечно, но нужно было лишь защитить от кратковременных выбросов входного напряжения амплитудой до 3-х кратного номинального. Ток потребления около 100-150мА.
Цитата(zhevak @ Jan 9 2010, 19:55) *
Перепад напряжения на транзисторе у Вас какой был?
Перепад в рабочем режиме был вполне ожидаемый, на уровне VGS(th), порядка 2,7-3,4В. А вот при неисправности какие-то чудеса наблюдались. К сожалению, я уже не помню всех подробностей. sad.gif
Цитата(zhevak @ Jan 9 2010, 19:55) *
Глюк был постоянный или возникал периодически? Схема в отказ уходила при включении или в процессе работы?
Неисправность возникала при переходном процессе во время включения питания (подача напряжения путем механической коммутации) в узком диапазоне отрицательных температур. Если устройство включилось и работает, то дальнейшее охлаждение или нагрев на работоспособность не влияло. Проверку в термокамере проводили. На столе я охлаждал отдельные детали "заморозкой" из баллончика и, контролируя температуру, дожидался нагрева до попадания в критический диапазон температур, затем подавал питание. На глючащих экземплярах эффект был весьма повторяемым. Достоверные осциллограммы переходного процесса по-моему тогда снять не получилось.
Цитата(zhevak @ Jan 9 2010, 19:55) *
Вы не указали тип полевика...
Si2328DS, на схеме указан. Рисовал схему по памяти. C1 электролит на входе всего устройства. Еще было подозрение на "левую" керамику ЧИП0805 4,7мкФ 50В, но замена ее не дала результата. Точно также как и замена полевика ощутимого эффекта не давала. В общем изменили схемотехнику, заменив Si2328DS на BCX56 с уменьшением номинала резистора (и увеличением его мощности конечно же), стабилитрона и устройство пошло в серию. laughing.gif

Цитата(Herz @ Jan 9 2010, 23:36) *
Простите, а как же он открывается? Ведь напряжение на затворе всегда ниже напряжения на истоке?
ИМХО при включении (предполагаю, что напряжение на сток подается) потенциалы затвора и истока одинаковы и равны нулю.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 16:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.0148 секунд с 7
ELECTRONIX ©2004-2016