Среда программирования для AT89c2051
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4083739#p4083739"]...Думаете, если выпаять ULM2003, контроллер перестанет глючить?[/uquote]
Зачем строить гипотезы, если всё можно измерить, и сразу станет ясно.
P.S. 2003 в моей практике, дохли в разы чаще чем контролеры.
Зачем строить гипотезы, если всё можно измерить, и сразу станет ясно.
P.S. 2003 в моей практике, дохли в разы чаще чем контролеры.
- Реклама
Re: Среда программирования для AT89c2051
Выпаял ULM2003 - ничего принципиально не изменилось, только на табло теперь цифр нет. На панели набора ИК-светодиоды так и не засветились. Судя по звукам (частое пиканье), всё осталось по-прежнему.
Re: Среда программирования для AT89c2051
Если сей девайс когда-то работал...
Как вариант - "уход" частоты кварца, некорректные значения на входных линиях (особо ежли там на прерывания программа завязана).
Была бы схемка - можно хош теоретически проанализировать вероятные точки "приложения внимания"...

Как вариант - "уход" частоты кварца, некорректные значения на входных линиях (особо ежли там на прерывания программа завязана).
Была бы схемка - можно хош теоретически проанализировать вероятные точки "приложения внимания"...
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4083850#p4083850"]Выпаял ULM2003...[/uquote]
Совсем не обязательно было выпаивать.
[uquote="BOB51",url="/forum/viewtopic.php?p=4083855#p4083855"]...вероятные точки "приложения внимания"...
[/uquote]
Достаточно пройтись осциллографом по выводам сканирования клавиатуры.
Err говорит о том, что проблема именно там. От банальной грязи на защитном
пластике за которыми стоят светодиоды, до "умирания" этих самих свето/фотодиодов.
Почему просто не ткнуть прибором ? Ведь всё сразу проясниться, иначе можно гадать
на кофейной гуще до второго пришествия.
Совсем не обязательно было выпаивать.
[uquote="BOB51",url="/forum/viewtopic.php?p=4083855#p4083855"]...вероятные точки "приложения внимания"...
Достаточно пройтись осциллографом по выводам сканирования клавиатуры.
Err говорит о том, что проблема именно там. От банальной грязи на защитном
пластике за которыми стоят светодиоды, до "умирания" этих самих свето/фотодиодов.
Почему просто не ткнуть прибором ? Ведь всё сразу проясниться, иначе можно гадать
на кофейной гуще до второго пришествия.
Re: Среда программирования для AT89c2051
Светодиоды и фотодиоды проверял в первую очередь - рабочие.
Осциллографа нету. Но кое-что я проверил при помощи УМЗЧ. Вот схема клавиатуры.
Я прикладывал щупы УМЗЧ между общим минусом и входами A, B, C, INH нижнего по схеме мультиплексора CD4051BE. На слух ясно, что какие-то сигналы стробируют на каждом из входов.
Дальше я решил проверить, идут ли сигналы с выходов этого мультиплексора на ULM2003. Ни с "0", ни с "1", ни с "2", ни с "3" никаких сигналов не слышно.
Отпаивал ULM2003, проверял - рабочая. Имеется подозрение, что сломался мультиплексор.
Но даже если я его заменю, и замена поможет, это ведь не отменяет того, что крякнулся микроконтроллер? Всёж-таки цифры он криво рисует. Или цифры залипают из-за транзисторной сборки?
Осциллографа нету. Но кое-что я проверил при помощи УМЗЧ. Вот схема клавиатуры.
Я прикладывал щупы УМЗЧ между общим минусом и входами A, B, C, INH нижнего по схеме мультиплексора CD4051BE. На слух ясно, что какие-то сигналы стробируют на каждом из входов.
Дальше я решил проверить, идут ли сигналы с выходов этого мультиплексора на ULM2003. Ни с "0", ни с "1", ни с "2", ни с "3" никаких сигналов не слышно.
Отпаивал ULM2003, проверял - рабочая. Имеется подозрение, что сломался мультиплексор.
Но даже если я его заменю, и замена поможет, это ведь не отменяет того, что крякнулся микроконтроллер? Всёж-таки цифры он криво рисует. Или цифры залипают из-за транзисторной сборки?
- Реклама
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4084175#p4084175"]...Осциллографа нету.[/uquote]
Беда, без приборов туго.
[uquote="ypppu",url="/forum/viewtopic.php?p=4084175#p4084175"]...это ведь не отменяет того, что крякнулся микроконтроллер?[/uquote]
Попробуйте решить вопрос с клавиатурой, а дальше видно будет.
Разрисовал схему (без компаратора, не увидел питания на нём).
Фотодиоды включены не верно, по идее А-К должны быть наоборот.
Порядковые номера микросхем условные.
На входе INH V4 сигнал разрешения присутствует ? (в виде импульсов или постоянно)
если сигнал постоянно "1" то на выходе мультиплексора ничего не будет.
Беда, без приборов туго.
[uquote="ypppu",url="/forum/viewtopic.php?p=4084175#p4084175"]...это ведь не отменяет того, что крякнулся микроконтроллер?[/uquote]
Попробуйте решить вопрос с клавиатурой, а дальше видно будет.
Разрисовал схему (без компаратора, не увидел питания на нём).
Фотодиоды включены не верно, по идее А-К должны быть наоборот.
Порядковые номера микросхем условные.
На входе INH V4 сигнал разрешения присутствует ? (в виде импульсов или постоянно)
если сигнал постоянно "1" то на выходе мультиплексора ничего не будет.
- Вложения
-
- Schem_AO3000_KBD.pdf
- (46.66 КБ) 230 скачиваний
Re: Среда программирования для AT89c2051
Перерисовал схему. Исправил ошибки: дорисовал питание компаратора и перевернул фотодиоды.
На входах A, B, C и INH мультипплексора V4, как я выше и говорил, сигналы присутствуют. Все эти сигналы в виде импульсов.
На входах A, B, C и INH мультипплексора V4, как я выше и говорил, сигналы присутствуют. Все эти сигналы в виде импульсов.
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4084797#p4084797"]...сигналы присутствуют. Все эти сигналы в виде импульсов...[/uquote]
Тогда логично будет - проверить ключи ULN2003, мультиплексор.
Тогда логично будет - проверить ключи ULN2003, мультиплексор.
Re: Среда программирования для AT89c2051
ULN2003 несколько дней назад уже выпаивал и проверял - микросхема рабочая. А как проверять мультиплексор?
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4084863#p4084863"]... как проверять мультиплексор?[/uquote]
На вход IO(3) подать уровень"1", на вход INH (6) подать уровень "0"(питание -5в на 6,7,8), +5в на 16,
входы A B C код адреса, в зависимости от которого уровень "1" должен появляться на выходах IO0-IO7.
Поскольку 2003 является инвертором, то на его выходах будет "0" в соотв. разряде.
На вход IO(3) подать уровень"1", на вход INH (6) подать уровень "0"(питание -5в на 6,7,8), +5в на 16,
входы A B C код адреса, в зависимости от которого уровень "1" должен появляться на выходах IO0-IO7.
Поскольку 2003 является инвертором, то на его выходах будет "0" в соотв. разряде.
Re: Среда программирования для AT89c2051
Dismas, я выпаял и проверил мультиплексор V4 как Вы написали.
На выходы подключил светодиоды. Подавая сигнал на входы A, B, C в различных комбинациях, удаётся засветить каждый светодиод поотдельности. Из чего делаю вывод, что мультиплексор рабочий.
На выходы подключил светодиоды. Подавая сигнал на входы A, B, C в различных комбинациях, удаётся засветить каждый светодиод поотдельности. Из чего делаю вывод, что мультиплексор рабочий.
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4086315#p4086315"]...Из чего делаю вывод, что мультиплексор рабочий.[/uquote]
Отлично, осталось проверить схему клавиатуры подав на неё питание и задавая
код по входам A B C при этом на вход INH подать "0".
Перебирая код можно увидеть (в камеру) свечение одного из излучающих IR светодиодов.
Заодно и проверить, "ловит" ли IR приёмник (соотв. разряда) этот сигнал (до и после компаратора).
P.S. При наличии осциллографа, всё это можно было бы сделать намного проще.
Отлично, осталось проверить схему клавиатуры подав на неё питание и задавая
код по входам A B C при этом на вход INH подать "0".
Перебирая код можно увидеть (в камеру) свечение одного из излучающих IR светодиодов.
Заодно и проверить, "ловит" ли IR приёмник (соотв. разряда) этот сигнал (до и после компаратора).
P.S. При наличии осциллографа, всё это можно было бы сделать намного проще.
- Вложения
-
- Schem_AO3000_KBD_all.pdf
- (57.88 КБ) 263 скачивания
Re: Среда программирования для AT89c2051
Перебрал по входам A, B, C возможные комбинации - все ИК светоды поочерёдно включаются. Выходит, мультиплексор CD4051 (V4), отвечающий за светодиоды, исправный.Отлично, осталось проверить схему клавиатуры подав на неё питание и задавая
код по входам A B C при этом на вход INH подать "0".
На данный момент на входы A, B, C, INH мультиплексора CD4051 (V4) приходят импульсы (на слух 100 Гц). А раньше были килогерцы (на слух не менее 5 кГц). То ли на эти входы "пробралось" питание с блока питания.
Re: Среда программирования для AT89c2051
Выше уже упоминал - проверить (перепаять) кварц у МК.
Дефект иногда возникает после длительной эксплуатации и/или некачественного лужения выводов резонатора.

Дефект иногда возникает после длительной эксплуатации и/или некачественного лужения выводов резонатора.
Re: Среда программирования для AT89c2051
BOB51, я себе так представляю, что кварц задаёт частоту, на которой работает "мозг", то бишь микроконтроллер "ATtmel AT89C51 20PT 9852". И, поскольку из динамика раздаются адекватные звуки, значит кварц в порядке. Не может же при изменившейся частоте кварца звук остаться прежним? 
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4086639#p4086639"]...из динамика раздаются адекватные звуки...[/uquote]
Друг мой, таким способом, провести точные измерения просто не возможно.
Наличие соотв. приборов является не прихотью или модой, а производственной необходимостью.
[uquote="ypppu",url="/forum/viewtopic.php?p=4086544#p4086544"]Перебрал по входам A, B, C возможные комбинации - все ИК светоды поочерёдно включаются.[/uquote]
Это хорошо, а как с приёмной частью ? Что в момент свечения на входе/выходе компаратора ?
Что на входе/выходе компаратора в отсутствии свечения ? Опять же, при перекрывании пальцем луча ?
Друг мой, таким способом, провести точные измерения просто не возможно.
Наличие соотв. приборов является не прихотью или модой, а производственной необходимостью.
[uquote="ypppu",url="/forum/viewtopic.php?p=4086544#p4086544"]Перебрал по входам A, B, C возможные комбинации - все ИК светоды поочерёдно включаются.[/uquote]
Это хорошо, а как с приёмной частью ? Что в момент свечения на входе/выходе компаратора ?
Что на входе/выходе компаратора в отсутствии свечения ? Опять же, при перекрывании пальцем луча ?
Re: Среда программирования для AT89c2051
Кварц как раз и подбрасывает всевозможные "летучки", завязанные на температуру и питающее напряжение.
Как вариант может быть грязь на плате (особо ежли та из старого гетинакса), разрушение припоя на точках пайки, окисление в контактах панельки МК (если не запаян намертво в плату).
Если верить схеме там еще две времязависимые цепочки имеются...
и замер соответствия "попадания" импульсов даже на простом осциллографе увидеть не удастся - или свою тест-программку надо делать или логический анализатор + знание программы чего и как там делается при сканировании.

Как вариант может быть грязь на плате (особо ежли та из старого гетинакса), разрушение припоя на точках пайки, окисление в контактах панельки МК (если не запаян намертво в плату).
Если верить схеме там еще две времязависимые цепочки имеются...
и замер соответствия "попадания" импульсов даже на простом осциллографе увидеть не удастся - или свою тест-программку надо делать или логический анализатор + знание программы чего и как там делается при сканировании.
Re: Среда программирования для AT89c2051
По совету BOB51 пропаял кварц - ничего не изменилось. С виду плата пропаяна аккуратно, вручную; все пайки глянцевые и без соплей. Плата после пайки покрыта лаком, материал - односторонний стеклотекстолит. Вряд ли мог разрушиться припой на точках пайки.
Про контакты панельки я тоже думал - несколько раз вытыкал и втыкал её обратно - не помогает.
[uquote="Dismas",url="/forum/viewtopic.php?p=4086703#p4086703"]как с приёмной частью ? Что в момент свечения на входе/выходе компаратора ?
Что на входе/выходе компаратора в отсутствии свечения ? Опять же, при перекрывании пальцем луча ?[/uquote]
Если мы говорим о домофонном блоке в сборе - то я так до этого и не дошёл. Чтобы перекрывать пальцем луч, нужно чтобы был луч. А управляющие импульсы с микроконтроллера по входам A,B,C, INH появляются при неустановленных обстоятельствах. Я подключался к этим входам при помощи УМЗЧ, включал питание домофона и прослушивал импульсы. В 3% случаев (1 раз из 30-40 попыток) появляются ненадолго (секунд 10) импульсы высокой частоты - грубо говоря 10 кГц - по всем четырём входам. На слух, частота одинаково высокая. И я не знаю, почему они появляются и отчего пропадают. Только их засечёшь - через несколько секунд они уже пропадают.
Про контакты панельки я тоже думал - несколько раз вытыкал и втыкал её обратно - не помогает.
[uquote="Dismas",url="/forum/viewtopic.php?p=4086703#p4086703"]как с приёмной частью ? Что в момент свечения на входе/выходе компаратора ?
Что на входе/выходе компаратора в отсутствии свечения ? Опять же, при перекрывании пальцем луча ?[/uquote]
Если мы говорим о домофонном блоке в сборе - то я так до этого и не дошёл. Чтобы перекрывать пальцем луч, нужно чтобы был луч. А управляющие импульсы с микроконтроллера по входам A,B,C, INH появляются при неустановленных обстоятельствах. Я подключался к этим входам при помощи УМЗЧ, включал питание домофона и прослушивал импульсы. В 3% случаев (1 раз из 30-40 попыток) появляются ненадолго (секунд 10) импульсы высокой частоты - грубо говоря 10 кГц - по всем четырём входам. На слух, частота одинаково высокая. И я не знаю, почему они появляются и отчего пропадают. Только их засечёшь - через несколько секунд они уже пропадают.
Re: Среда программирования для AT89c2051
[uquote="ypppu",url="/forum/viewtopic.php?p=4086723#p4086723"]...Чтобы перекрывать пальцем луч, нужно чтобы был луч...[/uquote]
Отдельно панель с ик излучателями и приёмниками.
Задать код A B C подать питание 12в, подать на вход INH "0".
Появится луч, на соотв. линии с ним проверить что доходит до приёмной части.
Это можно сделать без участия контролера.
Если с приёмников идут неверные сигналы, на индикаторах появляется Err.
Отдельно панель с ик излучателями и приёмниками.
Задать код A B C подать питание 12в, подать на вход INH "0".
Появится луч, на соотв. линии с ним проверить что доходит до приёмной части.
Это можно сделать без участия контролера.
Если с приёмников идут неверные сигналы, на индикаторах появляется Err.
Re: Среда программирования для AT89c2051
Попробовал. INH замкнул на минус, на A, B, и C поочерёдно подавал плюс. По идее должны были поочерёдно включаться три светодиода, как в опыте с отдельным мультиплексором. Но на этот раз получилось иначе. Если накинуть плюс, к примеру, на вход A, то нужный светодиод коротко вспыхивает и тут же гаснет. Если снять плюсовой провод со входа А, то светодиод опять же коротко вспыхивает и гаснет. Так же и с остальными светодиодами. То есть питание на светодиод не приходит устойчиво. Получается, что схема панели ввода как бы срабатывает на дребезг контактов.
Напрашивается вывод, что схема панели ввода неисправна.
Напрашивается вывод, что схема панели ввода неисправна.


