Повторно: в своем посте Вы рассказали, что у Вас есть проблемы на предприятии с использованием микросхемы. Таких предприятий, у которых есть вопросы по функционированию схем и с которыми мы не работаем, не осталось. Напишите в личку название вашего предприятия, чтобы я проверил текущее состояние дел по вашему вопросу.Dreamer писал(а):А остальные клиенты не должны об этом знать?! Это просто свинство. Выкладывайте пример как решить эту проблему и подробное описание почему, в какой ситуации и что конкретно происходит!Sanek писал(а):"paskal" по почте получил объяснение возникшей у него проблемы. Ему был предложен программный обход.Так что нашли причину нестабильной работы микроконтроллеров? Программно можно как то решить?
Результат программной коррекции и проверки в оборудовании его устроил.
1882ВЕ53У
Модераторы: ea, Alis, pip, gurzzza, sya, _sva_
-
- Специалист
- Сообщения: 215
- Зарегистрирован: 12 ноя 2009, 17:42
- Откуда: Воронеж
- Контактная информация:
Re: 1882ВЕ53У
Re: 1882ВЕ53У
Эти же биты T1R и T0R "расположены" в одном и том же регистре.paskalИ насчет объяснения проблемы. Оно со многим не согласуется. Например с тем что влияет бит TRx не только своего таймера, но и другого. Тут еще высказывались какие то версии про пропуск такта таймера, я пытался это проверить трогая TRx и считывая счетчик.Вроде бы пропусков не обнаружил.
Попытаюсь обьяснить на примере таймера 0.для других пользователей
Выполнение команды " mov TR0,c" состоит из нескольких внутренних микрокоманд:
1)Считывание регистра TCON во "временную область"
2)Корректировка бита TR0 во "временной области"
3)Запись из "временной области" обратно в TCON
При возникновение переполнения таймеров после пункта 1) и до конца пункта 3) изменение флага T0F(который находится регистре TCON) будет проигнорирован.
Для T1R та же ситуация.
Так организуется установка битов во всех контроллерах MCS-51.
-
- Сообщения: 6
- Зарегистрирован: 18 ноя 2010, 13:07
- Предприятие: ОАО "СКБ ПА"
- Откуда: Ковров
- Контактная информация:
Re: 1882ВЕ53У
EA логическое состояние единицаsya писал(а):В каком логическом состоянии находятся выводы EA, P1.4(SS) при программировании?
P1.4 не подключен
Re: 1882ВЕ53У
А программатором ChipProg-48 (ООО «Фирма Фитон») Вам удается программировать(через AE-ISP-U1)?melted
После мучений с микросхемами 1882ВЕ53У на программаторе Sterh ST-007 решили приобрести рекомендуемые разработчиком программатор ChipProg-48 (ООО «Фирма Фитон») и USB-программатором КФДЛ.301411.247 (ОАО «НИИЭТ»). Обновили версию ChipProg-48 до актуальной, выставили на микросхемах возможность последов...
Re: 1882ВЕ53У
Ну то есть вам предложили не транслировать напрямую в бит TR0 состояние бита управляющего запуском/остановкой таймера, а запускать таймер установкой бита TR0 только в том случае, если он остановлен (если ранее Вы его сами останавливали, чтобы получить паузу в работе какого-то вашего механизма).paskal писал(а):Там ничего такого что вас могло бы заинтересовать. Заводится дополнительный бит в котором запоминается текущее состояние флага TR. Если то что пишем и текущее состояние одинаково, то пропускаем запись бита. То есть по сути это не программный обход, а алгоритмический. Алгоритмически исключается прохождение той части программы, которая вызывает сбой.
Re: 1882ВЕ53У
Ну и дела! Получается, если переполнение любого таймера случайно совпало с моментом обращения к регистру TCON на запись, то не получив прерывание от таймера будете очень долго искать в тёмной комнате чёрную кошку, чем мы уже более полугода и занимаемся.Sanek писал(а):Попытаюсь обьяснить на примере таймера 0.
Выполнение команды " mov TR0,c" состоит из нескольких внутренних микрокоманд:
1)Считывание регистра TCON во "временную область"
2)Корректировка бита TR0 во "временной области"
3)Запись из "временной области" обратно в TCON
При возникновение переполнения таймеров после пункта 1) и до конца пункта 3) изменение флага T0F(который находится регистре TCON) будет проигнорирован.
Re: 1882ВЕ53У
Но на других МК мы этот сбой не обнаруживали. В том числе и на импортных. И что неприятно, рекомендуемый выше способ не устраняет эту потерю флага переполнения таймера. Кристалл, я считаю, надо исправлять.Sanek писал(а): При возникновение переполнения таймеров после пункта 1) и до конца пункта 3) изменение флага T0F(который находится регистре TCON) будет проигнорирован.
Для T1R та же ситуация.
Так организуется установка битов во всех контроллерах MCS-51.
Мучитель микропроцессоров.
Re: 1882ВЕ53У
Перевожу на русский "Мы, типа, сами до конца всех глюков не выловили, по мере вылавливания их пользователями будем решать проблемы". Мой завод, на счастье, имел запас старых микрух, которыми и закрыл текущую производственную программу. Прикольно было-бы объяснять Заказчику: "Мы, типа, тут ПО стоящее на литере поправили, т.к. МК глючит..." А Заказчик: "Типа, как глючит, ТУ-то на МК не поменялось!?"Sanek писал(а):
Так что нашли причину нестабильной работы микроконтроллеров? Программно можно как то решить?
А остальные клиенты не должны об этом знать?! Это просто свинство. Выкладывайте пример как решить эту проблему и подробное описание почему, в какой ситуации и что конкретно происходит!"paskal" по почте получил объяснение возникшей у него проблемы. Ему был предложен программный обход.
Результат программной коррекции и проверки в оборудовании его устроил.
Повторно: в своем посте Вы рассказали, что у Вас есть проблемы на предприятии с использованием микросхемы. Таких предприятий, у которых есть вопросы по функционированию схем и с которыми мы не работаем, не осталось. Напишите в личку название вашего предприятия, чтобы я проверил текущее состояние дел по вашему вопросу.
Не думаю, что уважаемый НИИЭТ не в курсе, что подобные заплатки в ПО в некоторых отрослях ведут к повторному проведению цикла испытаний.
Так, что увы, свинство и натуральное.
Re: 1882ВЕ53У
Ну типовые испытания несложно для нас провести. Лишь бы все работало. Мы даже для себя микр-р из новой партии на климатики проверили.
Re: 1882ВЕ53У
Добрый день.
Не удалось запрограммировать процессор 1882ВЕ53У ранее приобретённым программатором для внутрисхемного программирования микросхем КФДЛ.301411.233ТО.
Во-первых, при загрузке буфера HEX файлом получаем сообщение "ошибка в читаемом HEX файле". ChipProg-48 таких сообщений не выдаёт при чтении этого-же файла. Есть какие-то особые требования к HEX файлу?
Во-вторых, программатор прошивает не используемую часть Flash 00 и какими-то кодами (Хотя буфер был заполнен кодом FF). В результате при сравнении выдаёт ошибку всегда по одному и тому же адресу для данного файла при последующих попытках стирания и записи микросхемы.
В результате прошили процессор программатором ChipProg-48. Может быть есть новая версия ПО для этого программатора?
Не удалось запрограммировать процессор 1882ВЕ53У ранее приобретённым программатором для внутрисхемного программирования микросхем КФДЛ.301411.233ТО.
Во-первых, при загрузке буфера HEX файлом получаем сообщение "ошибка в читаемом HEX файле". ChipProg-48 таких сообщений не выдаёт при чтении этого-же файла. Есть какие-то особые требования к HEX файлу?
Во-вторых, программатор прошивает не используемую часть Flash 00 и какими-то кодами (Хотя буфер был заполнен кодом FF). В результате при сравнении выдаёт ошибку всегда по одному и тому же адресу для данного файла при последующих попытках стирания и записи микросхемы.
В результате прошили процессор программатором ChipProg-48. Может быть есть новая версия ПО для этого программатора?