|
nedoPC.orgCommunity for electronics hobbyists, established in 2002 |
|
Last visit was: 10 Nov 2024 12:43
|
It is currently 10 Nov 2024 12:43
|
Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну взял бы, да и выложил проект полностью рабочий, где все подводные камни указаны. А?
А то все везде (и на этом форуме) пишут про какие-то глюки, но никто конкретно их не указывает.
Ну так и у PIC-ов есть глюки, если почитать форумы. Но если кто столкнулся - их учитывают, и
даже в литературе их указывают.
Я собираюсь начать отплясывать от цикла статей Александра Черномырдина про 1878ВЕ1...
Я в общем-то и с PIC так начинал - купил всё, покрутил в Proteus простой и понятный мне проект -
DoorBell.
Потом - прошил его успешно, всё заработало, хотя и слышал от многих, что Proteus - это " костыль"
и " резиновая женщина".
Ну и поскольку у меня всё удачно прошло с первого раза - дальше я стал делать своё, по образу и
подобию...
Так что эмулятор 6502 - это конечная цель, которая должна сделать для меня весь этот процесс
освоения 1878ВЕ1 чисто интересным практически, а не так, чтобы:" нажми на кнопочку - загорится лампочка".
Все процессоры разные же, хотя в них и много общего, и 6502, когда я с ним начал, казался немного
несподручным после Intel...
Тогда я подошел к нему с другой стороны - от PDP-8 и EDUC-8 - и ничего... освоил...
Сейчас заказал себе 6 штук R65C02 с Али-Экспресса. Пока идут, позанимаюсь 1878ВЕ1, благо - они
есть у меня.
_________________ iLavr
|
23 Jan 2015 11:50 |
|
|
Tronix
Doomed
Joined: 18 Nov 2013 02:38 Posts: 662 Location: Москва
|
Эмулировать 6502 маловато, нужно же хоть как-то с внешним миром общаться. И опкоды на исполнение брать откуда-то. Ну опкоды ладно, шьем прямо в память контроллера небольшую програмку для 6502 из трех строк. А дальше что? Ну понятно, что mov один регистр - другой у нас работает, сложение там вычитание и тд. А как результат вывести? (куда)? Это есть на мой взгляд проблема всех малоногих контроллеров.
|
23 Jan 2015 13:22 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Это придуманная тобой проблема, Tronix, и она заключается в том, что ты форум, видимо, совсем не читаешь, кроме того, что пишешь в нем сам.
Если я пишу "переписать эмуляцию 8080", то значит, я это уже делал именно
на " малоногом контроллере".
И всё было пучком, в том числе и ответ на твой вопрос:" А дальше что?"
Дальше - эмулятор 6502 будет выполнять программы в кодах 6502 - вот что.
А эмулятор будет 6502, а не 8080, поскольку и повторяться мне не интересно,
и сделать я хочу в этот раз кое-что несколько иначе.
_________________ iLavr
|
23 Jan 2015 14:58 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А в " Чип & Дипе" КР1878ВЕ1 подешевел, как ни странно, несмотря на перверсии рубля и экономики... http://www.chipdip.ru/product/kr1878ve1/
Активно разбираюсь сейчас с ним. Удачно, что приступил к нему после 6502.
Адресация в этой связи не вызвала затруднений - есть сходство.
_________________ iLavr
|
01 Feb 2015 10:25 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Заказал еще 6 штук этих микроконтроллеров, в понедельник товарищ мой из Москвы приезжает,
попросил его зацепить их с оказией.
Основные нарекания у всех, по имеющимся у меня материалам, преимущественно на процесс
прошивки этих микроконтроллеров, а у меня все 4 имеющихся из одной партии - если прошивка
не пойдет, заменить совершенно не на что...
_________________ iLavr
|
04 Feb 2015 15:26 |
|
|
AIS
Novelist
Joined: 30 Nov 2013 05:04 Posts: 32 Location: 83.149.47.40
|
О! Вспомнил! В 2000 году менялся способ чтения при верификации записанного кристалла - симптом - процесс записи проходит нормально, когда начинается верификация сразу ошибка. При этом кристалл записан и прошивка работоспособна.
Чем лечилось не помню...
|
05 Feb 2015 06:02 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Читал об этом глюке - "лечили" отключением верификации, если есть эта опция, либо написанием новых версий программаторов...
Товарищ отзвонился мне с утра - сказал, что этих микрсхем в сранном " Чип & Дипе" - нет,
а на заказ - ждать 2 месяца...
Не поверил, открыл страницу: http://www.chipdip.ru/product/kr1878ve1/ - всё на месте.
Позвонил сам +7 495 544-00-08, долго пудрили мне мозг условиями оплаты и доставки, я
сказал - на всё согласен - скажите мне, есть ли их в наличии 6 штук.
Действительно, оказалось в наличии нет ни одной.
Не удержался, сказал "в цвет" - "Зачем же вы людям своим сайтом мозг парите?" - их это не смутило...
Как говорит другой мой хороший друг:" Воистину, российский сервис бессмысленен и беспощаден!"
Интересно, что 12 января, сразу после новогодних праздников, я сам звонил в 8 крупных фирм с мыслью
прикупить кое-что из микропроцессоров.
На "складе" у них ничего не было. Когда в 8-й по счету фирме мне сказали,что микросхемы у них
" есть на дальнем складе", и заказ придется ждать 2 месяца - тоже подпустил шутку юмора, спросив:
" А дальний склад у Вас в Китае - на Али-Бабе?" В ответ услышал в трубке сдержанное хихиканье...
_________________ iLavr
|
05 Feb 2015 07:26 |
|
|
AIS
Novelist
Joined: 30 Nov 2013 05:04 Posts: 32 Location: 83.149.47.40
|
Скинул заказ на 10шт кр1878ве1 по 140руб.
Неделю тишина и вот сейчас смотрю на сайте - опомнился Чип-Дип. Теперь цена 530руб. за шт.
Гады
|
13 Feb 2015 04:57 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
| | | | Vosiley wrote: насчет программаторов - на настоящее время есть рабочий программатор под названием "программатор П. Семенова" - под LPT и Win98 - я сделал его в железе, и могу сказать, что он работает а также моя поделка - лежит тут http://sites.google.com/site/russianlabyrinth/ - под Com-порт и winXP - некий аналог ExtraPIC, в нем реализована только прошивка памяти команд, а прошивку памяти данных пока не удалось реализовать в связи с отсутствием внятного алгоритма. | | | | |
Я посмотрел, товарищ Vosiley не появлся здесь 2012 года, так что его и при желании спросить невозможно... Интересно мне стало что же произошло с алгоритмом прошивки микроконтроллера КР1878ВЕ1?... Дело в том, что много где пишут, что алгоритм прошивки был изменен в 2000-м году, и поэтому многие программаторы и программы к ним не работают. Поэтому я поискал в сети алгоритм прошивки микроконтроллера КР1878ВЕ1, и выяснил, что много неленивых людей стряпают и программаторы и свой софт к ним, причем непонятно, какой всё же алгоритм они используют. По приведенной здесь ссылке от товарища Vosiley написано следующее: Вот как хочешь, так и понимай это... Но после долгого поиска я вроде как нашел этот алгоритм прошивки микроконтроллера КР1878ВЕ1, возможно, что он даже правильный:
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
13 Nov 2020 18:14 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 23399 Location: Silicon Valley
|
"Bit-Bang" просто означает, что байты данных засовываются в цифровой выход по битам ПРОГРАММНО Ну ещё параллельно таже программа может контрольными битами дёргать...
|
13 Nov 2020 19:47 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Вот что, собственно, и вызывает недоумение: "Bit-Bang" - это скорее способ, как передаются байты данных, но никак не протокол, относящийся к МК КР1878ВЕ1. Можно с такой же информативностью сказать, что CPLD программируется в режиме "Bit-Bang" или там FTDI Chip какой. Потому что по определению: Но алгоритм прошивки микроконтроллера КР1878ВЕ1 эта фраза никак не проясняет. Мне просто интересно самому стало - обо что же там копья вокруг этого алгоритма ломают... Про старый алгоритм пишут, что он приведен в старой документации Ангстрема - я не нашел. Ну а новый алгоритм - это, видимо, то, что я выложил... но сравнить, получается, не с чем.
_________________ iLavr
|
14 Nov 2020 03:52 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
В общем, мне вроде как стало понятно, откуда все знают алгоритм прошивки микроконтроллера КР1878ВЕ1. Я пропустил программу программатора КР1878ВЕ1 от ООО "Ангстрем" через File Analyzer, и выяснил вот что: А когда посмотрел в код P_WMCT.EXE через WinHEX, то увидел, что там больше текста и пустоты, нежели самог о ассемблерного кода. Значительную часть EXE-файла занимает пустое место, видимо, под бинарник прошивки. Попробую-ка я тоже декомпильнуть этот P_WMCT.EXE ...
_________________ iLavr
|
15 Nov 2020 06:24 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Декомпильнул... Собирается TASM-ом без ошибок. EXE-шник стартует как и оригинал... За полную корректность поручиться не могу - TASM вставляет выравнивающие NOP, NOP и мой EXE-файл получается длиннее оригинала. Заставить TASM не вставлять NOP, NOP не смог, там в тексте и так выравнивание на байт. Обычно я считаю дизассемблирование корректным, если собираю точную побитную копию оригинала. Но работу с портом LPT в тексте видно, и алгоритм прошивки МК КР1878ВЕ1 проследить можно. P.S. Всё, что можно проверить без программатора копия делает идентично оригиалу. Проверил.
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
15 Nov 2020 10:10 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Привёл в соответствие все метки. Подчистил всякие косяки... Разобрал подпрограммы. Для полного соответствия: ниоткуда не обращаются к И ниоткуда не вызывается подпрограмма: Либо это делается как-то хитро-косвенно, либо это остатки чего-то непонятного в коде...
You do not have the required permissions to view the files attached to this post.
_________________ iLavr
|
15 Nov 2020 20:08 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
| | | | Lavr wrote: И ниоткуда не вызывается подпрограмма: | | | | Code: byte_0_A6A db 30h, 31h, 32h, 33h, 34h, 35h, 36h, 37h, 38h, 39h; 0123456789 db 41h, 42h, 43h, 44h, 45h, 46h; ABCDEF sub_0_A7A proc near push ax ; в АХ - слово push bx ; слово перекодируется push cx ; в текстовый вид push si ; по адресу в [si] mov cx, 4 ; все 4 ниббла слова
loc_0_A81: ; rol ax, 4 ; младший ниббл АХ - в старший, mov bx, ax ; самый старший - в младший and bx, 0Fh ; выделить младший ниббл add bx,offset byte_0_A6A ; прибавить смещение таблицы mov bl, cs:[bx]; взять байт - символ из таблицы mov cs:[si], bl; сохранить симвоо по адресу [si] inc si; указать на следующий байт loop loc_0_A81; и так 4 раза pop si pop cx pop bx pop ax retn sub_0_A7A endp | | | | |
| | | | |
Подпрограмма в общем-то и связана с этой областью данный: Подпрограмма превращает слово из АХ в текстовый HEX вид. В таком случае SI должен указывать как раз на db '0000'. Возможно, эта подпрограмма использовалась при отладки для вывода в HEX виде.
_________________ iLavr
|
15 Nov 2020 22:35 |
|
Who is online |
Users browsing this forum: No registered users and 0 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|