Перейти к содержанию
    

весення миграция MCS-51 (old)

Вливаю работающий на at89c51 контент в at89c55wd и не работает, вернее признаки жизни есть, но жутко косые. Прочитал интернет, говорят мол полная совместимость, прочитал обое спецрегистры, и правда совместимость.. Никто ли не подрывался на моих грабельках, например не нужно ли отдельно оговаривать Reset-овую и WDT части ну или еще чего... Можт кто присоветует, неохота на полку за бубном.. сорри если не буду онлайн

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Программируете Вы этот МК чем?

Помнится, что когда переходили с at89c55 на at89c55wd, то имеющийся на тот момент программатор про МК с буковками WD ничего не знал, и пришлось изготавливать переходник (две ноги меняли между собой), что бы программатор видел его "правильно"(якобы как at89c55, т.е. без буковок WD)... Других "граблей" - не припоминаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...контент в at89c55wd и не работает...

 

проверяйте "контент" свой. проблем с кристаллом не было. партии несколько тысяч (с 2004 по 2008 где то). отличаи только с работой памяти (насколько я помню).

 

(круглый)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

replyFor Палыч

чем- железяка своя и софт, параллельная, изначально была для с51 и мелких,

потом когда-то добавилось Р2.4 для А12 для с52, теперь добавлено Р2.5 для А13,

также Р3.3 (режимовый), добавлен выбор 5/6,5 вольт питательных по просьбе Атмел.

Так что, вышла миграция не с55-to-с55wd, а с51/52-to-с55wd, пока с глюками. Заливка сразу

с верификацией, ну и отдельно выгружаемый контент тоже совпадает. Мосг заклинило на

подозрениях про неучёт можт архитектуры камня. Интересно узнать, какие две ноги в

переходнике менялось? Временно или нажестко менялось? В линиях адреса, данных?

Или переходник был -не панелька. Вот пробую, сигнатуры камушков читает правильно:

c2051 1Eh 21h FFh

c4051 1Eh 41h FFh

с51 1Eh 51h FFh

с52 1Eh 52h FFh

с55wd 1Eh 55h 06h

с55wd FFh FFh FFh (lb=10000011b)

 

2 kolobok0

та да, пасибо за оптимизм, пойду ему ресет сделаю микросхемовый японский, а то в с51-шной

железяке, куда ткну wd-шку стоит электролитно-диодовая цеп. Хотя и вручную коротил, бестолку

всё, может увязано с моментом подачи питания, а контент проверочный свежий, всего лет 8 как те

настенные часики пашут, очень динамично, отказываются быть переписаны наново :)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

потом когда-то добавилось Р2.4 для А12 для с52, теперь добавлено Р2.5 для А13,

также Р3.3 (режимовый)

А, это ничего, что в 55WD ещё и Р3.4 используется для А14 ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

= = = = Nemo2000 May 23 2011, 16:38

про миграцию с55->с55wd имеется файлик.

спасибо, их есть у меня, но... с 55-го не мигрирую, с 51/52 пытаюсь, как и положено злому MythBusterS-u

 

= = = = Палыч May 23 2011, 17:39

у меня тоже используется ;) данная линия, как и другие, защищена рез.300R, а вот реди-бизи висит в воздухе, я так думаю пускай себе и дальше висит.

расскажу тем временем страшную тайну про эту ношку А14. Данный адрес пускает нас в ПП выше 16384 байт, да? Мне было интересно, какой же адрес у самой верхней ячейки, логика подсказывает что примерно 20480, да? Хорошо, минус один, да? А я возьми и проверь... Короче в с55wd записалось и вычиталось обратно 0..32767 байт до переполнения. Мне помог прог-матор, т.к. он не спрашивает у проца фамилие, а только спрашивает у мня чево изволим писать.

Жаль, проблема так и не решилась, буду видимо подбираться к wd начиная со светомигания диодов, типа каждый раз - в первый кл.

плюс жаба щемит взять и выбросить эти кристи

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Жаль, проблема так и не решилась
В своём устройстве Вы внешнюю (по отношению к МК) память, случайно, не используете? kolobok0 на это намекал...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

понятно...

программка влазит в с51 и регистров на борту хватает, в общем никаких внешних ресурсов параллельно-интерфейсных так сказать. будучи залита в 51 а также в 52 прога работает, а в 55wd - нет, под стенд-полигон попали часики для простоты наглядности.

в случае прогресса выложу причину, только на этой неделе совсем мало времени

корпуса wd в которых оказалось 32К вместо 20-ти назыв.так: DIPы- 24PU/0849 тайвань, фреза; PLCC- 24JI/0051 пилиппины, краска, если кому интересно

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

будучи залита в 51 а также в 52 прога работает, а в 55wd - нет
Чисто теоритически: есть ещё одно отличие 55WD от 51 - второй регистр DPTR. Вы программу заливаете в 55WD "сделанную" для 51/52 (она должна работать и на 55WD) или указали компилятору (кстати, какой компилятор?) что транслировать/линковать для 55WD? Некоторые компиляторы имеют в настройках галку типа "Использовать второй DPTR", возможно, она - установлена. Помнится, что кто-то жаловался, что какой-то компилятор (кажется - IAR, за Keil такого не замечал) нахально использовал второй DPTR при явном указании его НЕиспользования...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

При переходе C AT89C51 на более свежий (кажется At89F8252 но не уверен, боьше года прошло) столкнулся с аппаратной "несовместимостью". На старых мк для запуска кварца использовались конденсаторы на 22пФ. Более современной модели они оказались ненужны. Снесли кондюки с платы и код заработал без правок.

Может стоит в этом направлении посмотреть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

AT89S8253 скорее всего. Во всяком случае, столкнулся как раз при переходе на него с AT89S8252. Кстати, на месте автора темы попытался бы проверить на вышеупомянутых с учётом этого прикола с емкостями.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

проверить на вышеупомянутых с учётом этого прикола с емкостями.
Если причина в этом, то это - действительно прикол: в DS на AT89C51 и в DS на AT89C55WD одни и те же рекомендации по ёмкостям

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Должно работать, какая то ошибка в коде скорее всего , у меня было , код с процессора i89С52 не завелся под T89С51RD2 - долго искал отладчиком, оказалось было чтение с порта, но код был не верный и получалось чтение с внутреннего ОЗУ, которое было в T89С51RD2 и пришлось исправлять кучу инструкций, которые работали на i89С52, а затыкались на Т89С51RD2 , типо таких:

0284 B5 FF 02 CJNE A,FFH,0289H

исправлял на :

0284 B4 FF 02 CJNE A,#FFH,0289H

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...