Среда программирования для AT89c2051

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="BOB51",url="/forum/viewtopic.php?p=4086706#p4086706"]...Если верить схеме там еще две времязависимые цепочки имеются...[/uquote]
Где они на схеме ?
[uquote="ypppu",url="/forum/viewtopic.php?p=4084175#p4084175"]...Отпаивал ULM2003, проверял - рабочая...[/uquote]
Как проверяли ?
[uquote="ypppu",url="/forum/viewtopic.php?p=4088459#p4088459"]... светодиод коротко вспыхивает и тут же гаснет...[/uquote]
А питание при этом не "проседает" ?
Реклама
OKF
Это не хвост, это антенна
Сообщения: 1401
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Среда программирования для AT89c2051

Сообщение OKF »

Касательно программатора. Лет, эдак, 10 назад, когда мне нужно было прошить AT89C2051, соорудил программатор на ATtiny2313, на которую вторым этажом (1 в 1, кроме ног 1 и 11) припаивалась панелька для прошиваемой 2051. Ну и пару транзисторов для коммутации высокого +12 вольт. Диалог через эмулятор терминала: Signature, Read, Erase, Write, Lock, Verify. Всё по минимуму.
Реклама
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

[uquote="Dismas",url="/forum/viewtopic.php?p=4088523#p4088523"][uquote="ypppu",url="/forum/viewtopic.php?p=4084175#p4084175"]...Отпаивал ULM2003, проверял - рабочая...[/uquote]Как проверяли ?[/uquote]На входы подавал плюс через резистор. При этом к соответствующим выходам подтягивался минус. Выходы были нагружены цепочками "светодиод последовательно с резистором". При подаче "+" на каждый IN появлялся "-" на соответствующем OUT и загорался светодиод.


[uquote="Dismas",url="/forum/viewtopic.php?p=4088523#p4088523"][uquote="ypppu",url="/forum/viewtopic.php?p=4088459#p4088459"]... светодиод коротко вспыхивает и тут же гаснет...[/uquote]
А питание при этом не "проседает" ?[/uquote]Решил вместо блока питания включить крону на 9 вольт свежую. Вдруг там как-то связь с фазой сказывается. Но нет, с батарейкой ведёт себя точно так же: реагирует только на дребезг. К батарейке прикладывал вольтметр: просадок что на холостом ходу, что при подаче сигналов на входы A, B, C нету.
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="ypppu",url="/forum/viewtopic.php?p=4088912#p4088912"]...с батарейкой ведёт себя точно так же...[/uquote]
Защитные диоды проверялись ? (С каждого выхода на вывод COM (9) ).
При проверке этот вывод куда был подключен ?
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

При проверке 9ый вывод подключал к плюсу батарейки, а 8ой к минусу. Сигнал на входы подавал от плюса батарейки через резистор. Светодиоды подключал между плюсом батарейки и выходом (последовательно с резистором).

Сейчас я проверил диоды между выходами и COM (9). При прямом подключения мультиметра на всех показывает 0,7 В. При обратном - на всех около 0,95 В. Правда, микросхема уже впаяна обратно на плату. Если что, могу завтра отпаять и перепроверить.
Реклама
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="ypppu",url="/forum/viewtopic.php?p=4088982#p4088982"]...могу завтра отпаять и перепроверить.[/uquote]
Отпаивать не надо. Задать код на входах A-1; B,C,INH-0 (подтянуты к общему через резистор),
далее мультиком измерить напряжение на соотв. выходе 4051 и на соотв. выходе 2003.
Реклама
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

Dismas, извиняюсь, был невнимателен, когда проверял. :oops: Хотел сориентироваться по светодиодам видимого света, чтобы не возиться с видеокамерой, но позабыл, что у них рабочее напряжение больше, чем у ИК. Сейчас достал камеру и убедился, что у ИК светодиодов ничего не подмаргивает. Прошёлся по всем комбинациям - всё чётко включается-выключается.
Отдельно панель с ик излучателями и приёмниками.
Задать код A B C подать питание 12в, подать на вход INH "0".
Появится луч, на соотв. линии с ним проверить что доходит до приёмной части.
Теперь лучи точно появляются. А как проверить, что доходит до приёмной части? И правильно ли я вообще понимаю как это работает?
Я представляю (весьма приблизительно) себе это так:
1) верхний мультиплексор в режиме "прослушки", он по каналам A, B, C выдаёт состояние фотодиодов (засвечены / не засвечены) тогда, когда приходит нужный сигнал на ногу "COM out / in";
2) нижний мультиплексор принимает с контроллера по каналам A, B, C сигнал, который ИК светодиод нужно засветить. Но когда приходит высокий уровень по каналу INH, изменять состояние выходов запрещено. В этом режиме (пока контроллер опрашивает верхний мультиплексор) светодиоды не переключаются, а фиксируются в состоянии "как было".

В итоге контроллеру требуется:
- передать на плату панели шифр светодиода (A, B, C), который требуется засветить;
- зафиксировать нижний мультиплексор, подав высокий уровнь на INH;
- считать шифр фотодиода с верхнего мультиплексора (уровни по каналам A, B, C), подав сигнал на ногу "COM out / in".

Правильно? :dont_know:
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="ypppu",url="/forum/viewtopic.php?p=4089656#p4089656"]...- зафиксировать нижний мультиплексор, подав высокий уровнь на INH;
- считать шифр фотодиода с верхнего мультиплексора (уровни по каналам A, B, C), подав сигнал на ногу "COM out / in"...[/uquote]
Выставляя код адреса на A,B,C - выбираем, к какому светодиоду (и фотодиоду одновременно)
идёт обращение.
Линия COM out / in, в данном случае, для считывания состояния компаратора.
Линия INH для клавиатуры - входная, можно разрешить/запретить свечение выбранного светодиода,
разрешающий уровень - низкий. Или "помигать" им, не меняя кода на A,B,C.
Упрощённо 4051 выглядит так:
Вложения
4051.jpg
(24.93 КБ) 163 скачивания
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15575
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Среда программирования для AT89c2051

Сообщение BOB51 »

Только добавить следующее...
Мультиплексоры аналогового сигнала, а уровень сработки определяется компаратором и его обвязкой...
:roll:
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

Я так и не понял, как это всё работает, и как проверить, что доходит до приёмной части. :(
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="ypppu",url="/forum/viewtopic.php?p=4091383#p4091383"]Я так и не понял, как это всё работает...[/uquote]
Да всё просто.
Вкл. светодиод, и проверить мультиком, что приходит на компаратор, и что уходит с него.
Выкл. светодиод, и снова измерить уровни сигнала там же.
При вкл. светодиоде, перекрыть пальцем луч, посмотреть как меняется сигнал до и после
компаратора.
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

Нашёл какую-то плавающую неисправность.
Вчера правый нижний (по моей картинке) светодиод с шифром ABC ярко светился и на ощупь заметно грелся. Хотя я на входы ничего не подавал: входы A, B, C были подтянуты к минусу. Это точно, проверял. Панель набора включал без домофонного блока, отдельно.
Сегодня решил проверить. Отпаял вывод IN4 ULM2003, отвечающий за входной сигнал - проблема прошла. Припаял вывод IN4 обратно - проблемы опять нет.
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

INH закорочен на минус питания. Убрал перемычку - светодиод ABC перестал светиться.
Но почему? :dont_know: Что-то я совсем не понимаю. Наверное надо тупо купить новые детальки - заменить все микросхемы.
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="ypppu",url="/forum/viewtopic.php?p=4093085#p4093085"]INH закорочен на минус питания. Убрал перемычку - светодиод ABC перестал светиться.
Но почему? :dont_know: Что-то я совсем не понимаю. Наверное надо тупо купить новые детальки - заменить все микросхемы.[/uquote]
А разве должно быть иначе ?
Сигнал INH разрешающий, активный уровень - низкий. Пора уже и почитать datasheet на микросхему.
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

Более точно восстановил опыт. Если A,B,С и INH подтянуты к минусу, то ни один ИК-светодиод не должен светиться (кроме нулевого, но эта нога не используется).
Когда на входы мультиплексора A,B,С подаю плюс, а на INH минус, то светится светодиод ABC. После этого, если я оторву от INH минус, то светодиод ABC продолжит светиться. Но если я коснусь вывода INH пальцем, светодиод ABC перестанет светиться. И это при запитывании платы от батарейки. Наверное внутри микросхемы мультиплексора какая-то ёмкость разряжается при касании, и я зря беспокоюсь.
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="ypppu",url="/forum/viewtopic.php?p=4093548#p4093548"]... После этого, если я оторву от INH минус...[/uquote]
Отключить от одной шины, не значит подключить к другой.
Зафиксируйте уровень, не только оторвав от минуса, но и подключив к плюсу через резистор, ну скажем 10к.
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

Dismas, я перебрал все возможные комбинации. Прикрепляю результат опыта. На и входах и выходе компаратора в любом случае одни и те же напряжения. Неисрпавен компаратор либо транзистор, логично?

Ещё вопрос для общего понимания. Микроконтроллер считывает с ноги "Out" компаратора напряжение (уровень), чтобы понять, был ли перекрыт луч?
Вложения
Тестирование компаратора - таблица опыта.pdf
(279.04 КБ) 127 скачиваний
Аватара пользователя
Dismas
Потрогал лапой паяльник
Сообщения: 365
Зарегистрирован: Вс май 02, 2021 18:58:49
Откуда: 俄罗斯

Re: Среда программирования для AT89c2051

Сообщение Dismas »

[uquote="ypppu",url="/forum/viewtopic.php?p=4096158#p4096158"]...Микроконтроллер считывает с ноги "Out" компаратора напряжение (уровень), чтобы понять, был ли перекрыт луч?[/uquote]
Да, именно так.
Отрезать выход мультиплексора IO от остальной схемы и замерять на нём.
Если напряжение меняется - смотреть компаратор, транзистор...
Если не меняется - смотреть мультиплексор.

Не думал, что такие пустяки вызывают такие сложности.
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

Отпаял ножку COM OUT/IN и замерил на ней напряжения. Прикрепляю результат опыта. Мультиплексор явно "видит разницу" между засвеченным и незасвеченным фотодиодом.

На днях заказывал разные детали, в том числе компаратор и транзистор. Попробую их заменить.
Вложения
Тестирование мультиплексора - таблица опыта.pdf
(271.16 КБ) 136 скачиваний
Аватара пользователя
ypppu
Друг Кота
Сообщения: 3535
Зарегистрирован: Ср янв 07, 2009 14:49:59

Re: Среда программирования для AT89c2051

Сообщение ypppu »

Заменил компаратор и транзистор, но проблема не ушла: и не заработало, и с 3 ноги верхнего мультиплексора пропали правильные напряжения. Отпаял 3 ногу чтобы висела в воздухе - правильные напряжения вернулись. Пока сам не понял что получилось, позже разберусь. Кажется проблема осталась, и она не в транзисторе и не в компараторе.
Ответить

Вернуться в «Разные вопросы по МК»