Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Rtmip »

Не думаю. Сначала надо бы проверить программатор USBASP и программу Progisp v1.72 на другом МК, желательно из серии AT89Sхххх.
Можно просто на АВР любом. Проверить все цепи на отладочной(макетной) плате, особенно сброс. Если все нормально, то...
После последней прошивки МК работает, выполняет программу какая была в нем?
Чтобы каждый раз не программировать МК может подумать о эмуляторе-мониторе в виде внешней памяти для МК?
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение BOB51 »

Мог и убить... Единственный вариант перепроверить на параллельном программаторе.
Имитатор штука хорошая - но то внешнее ПЗУ (естественно частота должна быть пониже).
Пока_без_кота
Потрогал лапой паяльник
Сообщения: 359
Зарегистрирован: Чт авг 08, 2013 01:06:54

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Пока_без_кота »

Rtmip писал(а):Сначала надо бы проверить программатор USBASP и программу Progisp v1.72 на другом МК
После последней прошивки МК работает, выполняет программу какая была в нем?

AVR видит и шьет нормально.
Последними операциями были стирание и чтение сигнатуры. Чип пустой. Программа пишет "Chip Enable Program Error". Точно такое-же сообщение выдает, если отключить микроконтроллер от программатора. Тоесть программа его просто не видит. Вообще. Никак.
Других AT89 в ДИПе нет, была только 1, на ней и планировал учиться((
BOB51 писал(а):Мог и убить...

Паралельный я наверное быстро сделать не смогу, опыта нет, чтоб такие сложные штуки собирать. СТК-200 имеет смысл делать и пробовать (другими программами)?
Вообще не нашел в даташите на AT89S52 раздел "errata", где про это (почему может так умереть контроллер) можно почитать. Я привык что это только у АВР проблемы с фьзами бывают, а тут на ровном месте такая проблема.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение BOB51 »

Убиваются... весьма специфично - достаточно нарушения контакта (какого-нить) в процессе работы программатора...
Сам так "урыл" в прошлом AT89C2051.
Сбросились байты идентификации - по штатному протоколу МК перестал опознаваться (а значит и программироваться).
Однако поскольку у меня была самоделка - вычеркнул процедуру запрета программирования неопознанного кристалла (она обычно ставится первой в комплексе действий программатора) и спокохонько дальше тем МК пользовался. Зато скоко недоумения у народа сей "неопознаваемый" кристалл вызывал при попытке содержимое считать! Там ведь тоже штатная преамбула по байтам идентификации торчит...(signature bytes для AT89S52 включают atmel ID=0x1E, device ID=0x52, device ID=0x06).
Возможно и у Вас такой "фокус" получился...
Самое интересное методу как эти ID поменять Атмел не дает, да и мне, сколько потом не пытался повторить - такой фокус более не удалось воспроизвести, а весьма полезное действо - похлеще битов защиты памяти - на всех видах программаторов определяется сходу как "убитый"МК.
8)
Пока_без_кота
Потрогал лапой паяльник
Сообщения: 359
Зарегистрирован: Чт авг 08, 2013 01:06:54

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Пока_без_кота »

BOB51 писал(а):Однако поскольку у меня была самоделка - вычеркнул процедуру запрета программирования неопознанного кристалла (она обычно ставится первой в комплексе действий программатора) и спокохонько дальше тем МК пользовался.
Возможно и у Вас такой "фокус" получился... 8)
Вот это да, прочитал это, и возникло впечатление, что Вы какой-то нейрохурург в мире МК))
Так а "самоделка" Ваша, это аппаратно-програмный комплекс ? Или Вы сами писали только программу под существующее железную реализацию ? Можете дать скачать, потому что я не представляю, как можно отключить принудительную проверку сигнатуры кристала, в уже написаных программах. Сам я не х86 программист, написать свою не смогу.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение BOB51 »

Самодельный аппаратный блочек в котором сидит самодельная программка + небольшой на бэйсике писаный мониторчик-оболочка под ДОС/винь(до 98 включительно). Делалось ооччень давно... При появлении ХР работать перестало - там некоторый нюанс по определению линий связи - хрюша ЛПТ-порт "напрямую" дергать не дает - а модифицировать было вллоооммушки, да и в полномасштабном комплексе уже особой надобности не имелось. Так и остались "до лучших времен" программатор и имитатор ПЗУ. Программные фрагменты писались по имеющимся даташитам.
Ежли интересно - скину архивчики на почту - там где-то под 12-14 мегабайт (все что осталось - разбираться сам будеш)...Главное, чтоб почтовик пропускал приложения до 16-20 мегабайт...
8)
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Rtmip »

Пока_без_кота писал(а):...Других AT89 в ДИПе нет, была только 1, на ней и планировал учиться((...
Если уж действительно учиться, то данная ситуация относится к разряду "нет худа без добра" :))
Как минимум получите опыт и не будет таких ошибок в будущем. Как максимум придумаете как восстановить данный МК. Средний вариант -
можно подумать о том, что бы прицепить внешнее ПЗУ и ОЗУ (если МК жив, конечно), найти кого-нибудь с параллельным программатором,
зашить в ПЗУ "отладчик", а далее скидывать программы через преобразователь USB-UART или через com - порт и отлаживать их уже не боясь,
что-либо убить. В результате многому можно научиться, на самом деле это все просто, сложно только плату сделать или проводками на
макетке соединять ПЗУ-ОЗУ-МК-регистры... ну и найти человека с программатором под параллельные ПЗУ...
Но, пока, давайте посмотрим, что можно сделать проще: в PROGISP есть галочка Verify Signature, если ее снять, то программе плевать какой
id у МК, главное, чтобы отзывался. Поэтому, если Ваш МК еще жив, но забыл как его зовут, то для начала программа его увидит когда дадите
команду прочитать flash. А вообще, кварц другой поставьте для проверки.
Пока_без_кота
Потрогал лапой паяльник
Сообщения: 359
Зарегистрирован: Чт авг 08, 2013 01:06:54

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Пока_без_кота »

Rtmip писал(а):1. в PROGISP есть галочка Verify Signature
2. Поэтому, если Ваш МК еще жив
3. А вообще, кварц другой поставьте для проверки

1. Она и так была все время снята.
2. Не жилец((
3. Кварц другой первым делом пробовал ставить.
Пока отложу в надежде когда-то собрать парралельный программатор, а пока буду работать в симуляторе.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение BOB51 »

С внешним ПЗУ всегда работать будет! 8)
Только монтажа поболее. Можно и комбинированное ПЗУ/ОЗУ или вариации на ту тему внешнии подвесить. Для теста жизнеспособности достаточно "пустое" внешнее пзу поставить - будет выполняться "прогон адресов" по кольцу. (Или имитатор команды NOP).
:beer:
Голимый
Встал на лапы
Сообщения: 117
Зарегистрирован: Пн дек 08, 2014 19:45:24
Откуда: Воронеж

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Голимый »

Микроконтроллер SyncMOS SM8958AC25PP (система MCS-51), язык - ассемблер.
Потребовался для проекта 16-битный логический сдвиг. Число в двух регистрах, задача - последователь выдвинуть его через ногу порта.
Как сделать 8-битный сдвиг - понятно. Как сделать 16-битный в общем тоже понятно - через бит переноса, за исключением того что сдвигать можно только аккумулятор. Число из него и в него потребуется неоднократно загружать - выгружать - перезагружать, и с этой последовательностью никак не могу разобраться.
Подскажите пожалуйста, что для этого надо сделать.
Трудное детство, стальные игрушки.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение BOB51 »

Можно использовать косвенную адресацию для загрузки/выгрузки акумулятора или возможности поля прямоадресуемых бит в области регистров 0х20-0х2F...
Только вот в последовательном выводе как-то проблем не наблюдаю...
Пример глянь вывод в индикатор download/file.php?id=199966 программный исходник download/file.php?id=199968 в теме viewtopic.php?f=62&t=94201&start=40
:beer:
Только вот 58-я это весьма солидная машинка, жалко матрицу счетчиков по пустякам портить... :cry:
Голимый
Встал на лапы
Сообщения: 117
Зарегистрирован: Пн дек 08, 2014 19:45:24
Откуда: Воронеж

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Голимый »

BOB51 писал(а):Можно использовать косвенную адресацию для загрузки/выгрузки акумулятора или возможности поля прямоадресуемых бит в области регистров 0х20-0х2F...

Бит-адресуемую память отверг, т.к невозможно адресовать через указатель отдельные биты.
Все гораздо хуже - я просто не понимаю какую последовательность действий надо предпринять, чтоб получить 16-битный сдвиг.

BOB51 писал(а):Пример глянь вывод в индикатор

Это слишком сложная для меня программа. Я в ней не смогу разобраться.

BOB51 писал(а):Только вот 58-я это весьма солидная машинка, жалко матрицу счетчиков по пустякам портить...

А чего ее беречь. В Китае ее много и дешево. Стоит дешевле безмозглого дешифратора для 7-сегментника.
Последний раз редактировалось Голимый Пн фев 09, 2015 19:16:14, всего редактировалось 2 раза.
Трудное детство, стальные игрушки.
petrenko
Друг Кота
Сообщения: 5321
Зарегистрирован: Вт фев 21, 2012 13:51:55
Откуда: Начинающий
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение petrenko »

Голимый писал(а):..Бит-адресуемую память отверг, т.к невозможно адресовать через указатель отдельные биты.
Все гораздо хуже - я просто не понимаю какую последовательность действий надо предпринять, чтоб получить 16-битный сдвиг..
Вам именно сам 16-ьит сдвиг нужен или всё же конечный результат в виде появления на определенном выводе ИМС поочередно нужных битов ? :roll:
Уточните пожалуйста.
Последний раз редактировалось petrenko Пн фев 09, 2015 19:22:39, всего редактировалось 1 раз.
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
Голимый
Встал на лапы
Сообщения: 117
Зарегистрирован: Пн дек 08, 2014 19:45:24
Откуда: Воронеж

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Голимый »

petrenko писал(а):Вам именно сам 16-ьит сдвиг нужен или всё же конечный результат

Разумеется, интересует конечный результат. Только иначе как сдвигом, - не выходит. Причем выдвинуть надо 16-битное число последовательно, без джиттера, с одинаковыми интервалами между битами.
Трудное детство, стальные игрушки.
petrenko
Друг Кота
Сообщения: 5321
Зарегистрирован: Вт фев 21, 2012 13:51:55
Откуда: Начинающий
Контактная информация:

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение petrenko »

Могу предложить вам вариант как "поразвлекаться" : сначала разкладываете все Ваши 16 битиков в младшие позиции каких-нибудь 16 байтиков ( остальные 7 позиций каждого байтика оставляете в "0" ) , а потом по прерываниям с таймера выводите байтики в ( например ) порт 1 - в результате на младшем выводе порта будут появляться нужные биты и как раз с ровненикими временными промежутками... :)
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
Голимый
Встал на лапы
Сообщения: 117
Зарегистрирован: Пн дек 08, 2014 19:45:24
Откуда: Воронеж

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Голимый »

petrenko писал(а):Могу предложить вам вариант как "поразвлекаться" : сначала разкладываете все Ваши 16 битиков в младшие позиции каких-нибудь 16 байтиков

Да, наверное так и придется сделать. Тем более что таймер уже задействовал, и это хорошо (хотя и несколько избыточно) вписывается в логику программы.
Трудное детство, стальные игрушки.
Пока_без_кота
Потрогал лапой паяльник
Сообщения: 359
Зарегистрирован: Чт авг 08, 2013 01:06:54

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Пока_без_кота »

Небольшое продолжение моей эпопеи с умершим AT89S52. Собрал я таки STK200. И перепробовав много разных программ, добрался до ispprog v1.2.0.56. Она с принудительным выбором типа МК определила пациента, но оно некорректно определяет, какой бы МК я не выбрал, оно соглашаеться, что это он. Но радость была недолгой, при считывании флеша, она не может создать хекс-файл, хотя прогрес-бар чтение добегает до конца. Аналогично не может совершить туда никакую запись. Возможно это происходит потому что у меня все время самустанавливаються галочки лок-битов. Если я подцеплю внешнюю память (как советовали выше), смогу ли я ее читать-писать через ISP (как раньше внутреннюю) ? Или она доступна только при парралельном программировании ? И распостраняються ли на нее установки сбесившихся лок-битов ?
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение BOB51 »

Панелька под МК обязательно должна быть оснащена кварцем 4МГц ( и он же указан в установках программы).
Насчет "просто пробегает" и не определяется тип МК - значит не видит сам МК...
Кроме того, частенько требуется пару раз тыцнуть перезапуск - определение. Несколько с заторможенностью срабатывает пару первых "тыц", затем "прихватывает" ккристалл. Файлы "куда" и "откуда" надо заранее в каталогах разместить. "Куда" вроде сама создает, а вот "откуда" - надо на готовый *.hex принудительно указать.
:(

Пы.Сы.
это для Голимый
Насчет сдвигов... Усапп в синхронном режиме (синхронный ведущий) как оптимальное решение. 8)
Голимый
Встал на лапы
Сообщения: 117
Зарегистрирован: Пн дек 08, 2014 19:45:24
Откуда: Воронеж

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение Голимый »

Пока_без_кота писал(а):Если я подцеплю внешнюю память (как советовали выше), смогу ли я ее читать-писать через ISP (как раньше внутреннюю) ?

Внешнее ПЗУ для МК надо программировать отдельно на параллельном программаторе. Сам контроллер это не умеет.
Трудное детство, стальные игрушки.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК-51 а-ка MCS-51, ASM и не только..

Сообщение BOB51 »

В принципе... при наличии "бутлоадера" в РПП нет ничего невозможного - хош ISP, хош RS232, хош чего самодельного - как напишеш начальный загрузчик, так и будет работать.
8)
Ответить

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