nedoPC.org

Community for electronics hobbyists, established in 2002
Last visit was: 10 Nov 2024 12:43
It is currently 10 Nov 2024 12:43



 [ 91 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7  Next
PIC16x84 vs КР1878ВЕ1 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Post 
AIS wrote:
Вспомнилось - когда-то начинал именно с этого микроконтроллера... Сначала шло тяжело,
в заводской документации есть пара неточностей, уже не вспомню каких. Но потом, что
называется "лег в руку".

Ну взял бы, да и выложил проект полностью рабочий, где все подводные камни указаны. А? :rotate:

А то все везде (и на этом форуме) пишут про какие-то глюки, но никто конкретно их не указывает.
Ну так и у 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
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Post 
Эмулировать 6502 маловато, нужно же хоть как-то с внешним миром общаться. И опкоды на исполнение брать откуда-то. Ну опкоды ладно, шьем прямо в память контроллера небольшую програмку для 6502 из трех строк. А дальше что? Ну понятно, что mov один регистр - другой у нас работает, сложение там вычитание и тд. А как результат вывести? (куда)? Это есть на мой взгляд проблема всех малоногих контроллеров.


23 Jan 2015 13:22
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Post 
Tronix wrote:
Это есть на мой взгляд проблема всех малоногих контроллеров.

Это придуманная тобой проблема, Tronix, и она заключается в том, что ты форум,
видимо, совсем не читаешь, кроме того, что пишешь в нем сам.

Lavr wrote:
...почитал я собранные все материалы и вспомнил, что хотел я на этих 1878ВЕ1 переписать эмуляцию 8080,
ибо при одинаковой тактовой частоте 1878ВЕ1 якобы шустрее PIC-a в 2 раза и богаче набором адресаций и команд.

Если я пишу "переписать эмуляцию 8080", то значит, я это уже делал именно
на "малоногом контроллере".
И всё было пучком, в том числе и ответ на твой вопрос:"А дальше что?"
Дальше - эмулятор 6502 будет выполнять программы в кодах 6502 - вот что. :lol:

А эмулятор будет 6502, а не 8080, поскольку и повторяться мне не интересно,
и сделать я хочу в этот раз кое-что несколько иначе.

_________________
iLavr


23 Jan 2015 14:58
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Post 
Lavr wrote:
по 230 рублей 4 штуки + 300 рублей
курьерская доставка.

А в "Чип & Дипе" КР1878ВЕ1 подешевел, как ни странно, несмотря на перверсии
рубля и экономики... :o

http://www.chipdip.ru/product/kr1878ve1/

Quote:
КР1878ВЕ1, 8-и разрядный RISC микроконтроллер
170 руб.
от 3 шт. — 140 руб.
от 30 шт. — цена по запросу


Активно разбираюсь сейчас с ним. Удачно, что приступил к нему после 6502.
Адресация в этой связи не вызвала затруднений - есть сходство.

_________________
iLavr


01 Feb 2015 10:25
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Post 
Lavr wrote:
А в "Чип & Дипе" КР1878ВЕ1 подешевел, как ни странно, несмотря на перверсии
рубля и экономики...

Заказал еще 6 штук этих микроконтроллеров, в понедельник товарищ мой из Москвы приезжает,
попросил его зацепить их с оказией.

Основные нарекания у всех, по имеющимся у меня материалам, преимущественно на процесс
прошивки этих микроконтроллеров, а у меня все 4 имеющихся из одной партии - если прошивка
не пойдет, заменить совершенно не на что...

_________________
iLavr


04 Feb 2015 15:26
Novelist

Joined: 30 Nov 2013 05:04
Posts: 32
Location: 83.149.47.40
Post 
О! Вспомнил! В 2000 году менялся способ чтения при верификации записанного кристалла - симптом - процесс записи проходит нормально, когда начинается верификация сразу ошибка. При этом кристалл записан и прошивка работоспособна.
Чем лечилось не помню...


05 Feb 2015 06:02
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Post 
AIS wrote:
Чем лечилось не помню...

Читал об этом глюке - "лечили" отключением верификации, если есть эта опция,
либо написанием новых версий программаторов... :roll:

Lavr wrote:
Заказал еще 6 штук этих микроконтроллеров, в понедельник товарищ мой из Москвы
приезжает, попросил его зацепить их с оказией.

Товарищ отзвонился мне с утра - сказал, что этих микрсхем в сранном "Чип & Дипе" - нет,
а на заказ - ждать 2 месяца...

Не поверил, открыл страницу: http://www.chipdip.ru/product/kr1878ve1/ - всё на месте.
Позвонил сам +7 495 544-00-08, долго пудрили мне мозг условиями оплаты и доставки, я
сказал - на всё согласен - скажите мне, есть ли их в наличии 6 штук.
Действительно, оказалось в наличии нет ни одной.
Не удержался, сказал "в цвет" - "Зачем же вы людям своим сайтом мозг парите?" - их это не смутило...

Как говорит другой мой хороший друг:"Воистину, российский сервис бессмысленен и беспощаден!" :lol:

Интересно, что 12 января, сразу после новогодних праздников, я сам звонил в 8 крупных фирм с мыслью
прикупить кое-что из микропроцессоров.
На "складе" у них ничего не было. Когда в 8-й по счету фирме мне сказали,что микросхемы у них
"есть на дальнем складе", и заказ придется ждать 2 месяца - тоже подпустил шутку юмора, спросив:
"А дальний склад у Вас в Китае - на Али-Бабе?" :wink: В ответ услышал в трубке сдержанное хихиканье...

_________________
iLavr


05 Feb 2015 07:26
Novelist

Joined: 30 Nov 2013 05:04
Posts: 32
Location: 83.149.47.40
Post 
Скинул заказ на 10шт кр1878ве1 по 140руб.
Неделю тишина и вот сейчас смотрю на сайте - опомнился Чип-Дип. Теперь цена 530руб. за шт.
Гады :evil:


13 Feb 2015 04:57
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Post Re:
Vosiley wrote:
насчет программаторов - на настоящее время есть рабочий программатор под названием "программатор П. Семенова" - под LPT и Win98 - я сделал его в железе, и могу сказать, что он работает
а также моя поделка - лежит тут http://sites.google.com/site/russianlabyrinth/ - под Com-порт и winXP - некий аналог ExtraPIC,
в нем реализована только прошивка памяти команд, а прошивку памяти данных пока не удалось реализовать в связи с отсутствием внятного алгоритма.

Я посмотрел, товарищ Vosiley не появлся здесь 2012 года, так что его и при желании спросить невозможно... :-?
Интересно мне стало что же произошло с алгоритмом прошивки микроконтроллера КР1878ВЕ1?...

Дело в том, что много где пишут, что алгоритм прошивки был изменен в 2000-м году, и поэтому
многие программаторы и программы к ним не работают.

Поэтому я поискал в сети алгоритм прошивки микроконтроллера КР1878ВЕ1, и выяснил, что много
неленивых людей стряпают и программаторы и свой софт к ним, причем непонятно, какой всё же
алгоритм они используют.

По приведенной здесь ссылке от товарища Vosiley написано следующее:
Quote:
Программирование МК осуществляется в режиме "Bit-Bang"

Вот как хочешь, так и понимай это...

Но после долгого поиска я вроде как нашел этот алгоритм прошивки микроконтроллера КР1878ВЕ1,
возможно, что он даже правильный:
Attachment:
ciklogramma.rar


You do not have the required permissions to view the files attached to this post.

_________________
iLavr


13 Nov 2020 18:14
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23399
Location: Silicon Valley
"Bit-Bang" просто означает, что байты данных засовываются в цифровой выход по битам ПРОГРАММНО
Ну ещё параллельно таже программа может контрольными битами дёргать...

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


13 Nov 2020 19:47 WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Shaos wrote:
"Bit-Bang" просто означает, что байты данных засовываются в цифровой выход по битам ПРОГРАММНО
Ну ещё параллельно таже программа может контрольными битами дёргать...

Вот что, собственно, и вызывает недоумение: "Bit-Bang" - это скорее способ, как передаются байты данных,
но никак не протокол, относящийся к МК КР1878ВЕ1.
Можно с такой же информативностью сказать, что CPLD программируется в режиме "Bit-Bang" или там FTDI Chip какой.
Потому что по определению:
Quote:
Bit-banging — технология организации последовательного соединения с использованием программной
эмуляции вместо специализированного аппаратного устройства.

Но алгоритм прошивки микроконтроллера КР1878ВЕ1 эта фраза никак не проясняет.

Мне просто интересно самому стало - обо что же там копья вокруг этого алгоритма ломают...
Про старый алгоритм пишут, что он приведен в старой документации Ангстрема - я не нашел.
Ну а новый алгоритм - это, видимо, то, что я выложил... но сравнить, получается, не с чем.

_________________
iLavr


14 Nov 2020 03:52
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Lavr wrote:
...алгоритм прошивки микроконтроллера КР1878ВЕ1 эта фраза никак не проясняет.

В общем, мне вроде как стало понятно, откуда все знают алгоритм прошивки микроконтроллера КР1878ВЕ1. :wink:

Я пропустил программу программатора КР1878ВЕ1 от ООО "Ангстрем" через File Analyzer, и выяснил вот что:
Quote:
File Analyzer v.1.8 FREEWARE
Written by Hypn0tizeR
Copyright (c) Oct 1996 All Rights Reserved.

File Name: P_WMCT.EXE
File Date: 7 Dec 1999
File Size: 20121
File type: MZ-EXE. Old-style DOS executable file
Processed: It's file may be writted on Assembler
Extension: DOS executable file

А когда посмотрел в код P_WMCT.EXE через WinHEX, то увидел, что там больше текста и пустоты,
нежели самого ассемблерного кода. :wink:
Значительную часть EXE-файла занимает пустое место, видимо, под бинарник прошивки.

Попробую-ка я тоже декомпильнуть этот P_WMCT.EXE ... 8)

_________________
iLavr


15 Nov 2020 06:24
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Lavr wrote:
Попробую-ка я тоже декомпильнуть этот P_WMCT.EXE ... 8)

Декомпильнул...
Attachment:
p_wmct_a.zip

Собирается TASM-ом без ошибок. EXE-шник стартует как и оригинал...
За полную корректность поручиться не могу - TASM вставляет выравнивающие NOP, NOP
и мой EXE-файл получается длиннее оригинала. :-?

Заставить TASM не вставлять NOP, NOP не смог, там в тексте и так выравнивание на байт. :osad:
Обычно я считаю дизассемблирование корректным, если собираю точную побитную копию оригинала.

Но работу с портом 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
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Lavr wrote:
Обычно я считаю дизассемблирование корректным, если собираю точную побитную копию оригинала.

Привёл в соответствие все метки. Подчистил всякие косяки... Разобрал подпрограммы.
Attachment:
P_WMCT1.zip

Для полного соответствия: ниоткуда не обращаются к
Code:
byte_0_C5 db 0Ah
    db 0Dh
    db '0000'
    db 0Ah,0Dh,00h

И ниоткуда не вызывается подпрограмма:
Code:
sub_0_A7A  proc near
    push ax
    push bx
    push cx
    push si
    mov  cx, 4
...
    loop loc_0_A81
    pop  si
    pop  cx
    pop  bx
    pop  ax
    retn
sub_0_A7A  endp

Либо это делается как-то хитро-косвенно, либо это остатки чего-то непонятного в коде... :-?


You do not have the required permissions to view the files attached to this post.

_________________
iLavr


15 Nov 2020 20:08
Supreme God
User avatar

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

Подпрограмма в общем-то и связана с этой областью данный:
Code:
byte_0_C5 db 0Ah
    db 0Dh
    db '0000'
    db 0Ah,0Dh,00h

Подпрограмма превращает слово из АХ в текстовый HEX вид.
В таком случае SI должен указывать как раз на db '0000'.

Возможно, эта подпрограмма использовалась при отладки для вывода в HEX виде.

_________________
iLavr


15 Nov 2020 22:35
 [ 91 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7  Next

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

Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.