КР1878ВЕ1
Moderator: Shaos
-
- Devil
- Posts: 912
- Joined: 06 Oct 2006 03:17
- Location: г.Лянтор,Сургутского р-на,ХМАО
Re: КР1878ВЕ1
Это почти тоже самое, я через такой подключал программатор плисин от Алтеры. Современнее было бы именно под USB.
-
- Fanat
- Posts: 67
- Joined: 10 Mar 2018 12:50
Re: КР1878ВЕ1
https://7b17252a-a-62cb3a1a-s-sites.goo ... edirects=0fifan wrote:Вот именно, а есть схема программатора под USB, переходники LPT/USB не предлагать.
вот схема под COM. Добавив преобразователь на CH340 или FT232 будет по USB
-
- Junior
- Posts: 8
- Joined: 15 May 2022 16:10
Re: КР1878ВЕ1
Есть. У Б.Ю. Семёнова есть странички, посвящённые этому МК. Там есть ссылка на программатор со схемой на USB. Конструкция называется Ve1ProgUSB. Сделано на базе отладки FT245BM, которую уже не купить. В принципе, ещё можно купить отдельно микросхему, отдельно память 93C46 и сделать. Но мне показалось, что свой на ардуине сделать быстрее. Показалось =).fifan wrote:Вот именно, а есть схема программатора под USB, переходники LPT/USB не предлагать.
вот тут статья по программатору http://www.mcu-cpld.narod.ru/Ve1ProgUSB.html
Навсяк приложу файлы.
Схема с компортом, которую выложил Shumadan мне неизвестна. По крайней мере, я не знаю, каким софтом можно было бы гарантированно прошить этот МК через ком порт.
You do not have the required permissions to view the files attached to this post.
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
А что, Венды, начиная с Win XP, меняют порядок байт в файле?kotofalk wrote:Это потому, что у вас win98 и железный LPTLavr wrote: ... , но вот "порядок байт" меня ни разу
не побеспокоил в этом процессе...

Что-то я такого не слышал...

Last edited by Lavr on 16 May 2022 15:38, edited 2 times in total.
iLavr
-
- Junior
- Posts: 8
- Joined: 15 May 2022 16:10
Re: КР1878ВЕ1
Да не. Просто w98+LPT - это железная связка, на которой всё работает. А она не у всех есть.Lavr wrote: А что, Венды, начиная с Win XP, меняют порядок байт в файле?![]()
Начиная с winXP уже прямая работа с LPT не катит. У кого-то был опыт использования каких-то прокачанных драйверов. Но у меня такого опыта нет. Да и вряд ли это поможет exe-файлу написанному под 16-разрядный DOS.
Порядок байт может менять софт. Если, к примеру, компилятор пишет в файл.sav 16b-word'ами, то в хекс-редакторе байты будут перевёрнутыми. Ну это если на x86 запускать. Соответственно, читающая программа также читает 16b-слова и никаких проблем нет. Вопрос возникает, когда файл открывается программой, которая не знает, что там word'ы и читает файл побайтно.
Да модель протеуса с толку сбила. Там на вкладке ROM содержимое контроллера с перевёрнутыми байтами. Хотя, скорее всего, разработчик модели просто не заморачивался содержимым окна ROM.
Просто открывая прошивку я надеялся увидеть опкоды. А увидел, что программа начинается после пропуска 512 байт и не с jmp 0x8015, а 0x1580. До того как залез файл прошивки, я так с этой пустотой в 512 байт данные в камень и отправлял.
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
Я сам скачал этот asm-файл, посмотрел в него и увидел, что там все просто.kotofalk wrote:Я скачал ваш asm-файл, но никак в нём сам не разберусь.
Файл *.sav считывается в буфер памяти программы - как есть.
Никаких перестановок байтов нет. После чего байты берутся из буфера памяти
по одному в том порядке, как их занесли из файла *.sav.
Где там может поменяться порядок байтов - я просто не представляю...
Файл *.sav используется так, как он создан.
iLavr
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
Что-то вы и про Proteus странные сказки рассказываете... Либо Proteus у вас кривой...kotofalk wrote:Да модель протеуса с толку сбила. Там на вкладке ROM содержимое контроллера с перевёрнутыми байтами. Хотя, скорее всего, разработчик модели просто не заморачивался содержимым окна ROM.

Вот у меня проект Proteus этих самых часов, и выведен дамп памяти. А вот файл прошивки Clock18.sav - через WinHex... Я не вижу ни перевёрнутых байтов, ни каких иных различий. Если что - Windows 7 у меня.
You do not have the required permissions to view the files attached to this post.
iLavr
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
Это тоже вы неправду излагать изволите...kotofalk wrote:Начиная с winXP уже прямая работа с LPT не катит.

Вот у меня самодельный программатор ByteBlasterMV :
Работаю с ним из под winXP под «MAX+plus II» через LPT и всё "катит"...
Программатор не сложнее того, что используется здесь для КР1878ВЕ1.
Единственное различие: под winXP прямое обращение к LPT идёт из DLL-
библиотеки, потому как обычной программе это просто запрещено.
iLavr
-
- Junior
- Posts: 8
- Joined: 15 May 2022 16:10
Re: КР1878ВЕ1
У меня там всё то же, что и у вас.Lavr wrote: Что-то вы и про Proteus странные сказки рассказываете...
Вот только незадача, по документации ангстрема, jmp никак не может быть 1580.
Так что, байты явно где-то перепутаны. Возможно, что и в документации.
Ну хотя бы со смещением 0x200 вы согласны? Оно видно на ваших скриншотах.
Если sav-файл используется так, как он создан, то в контроллер предварительно должны отправляться 512 байт пустоты.
Хорошо, что у вас с байтбластером получается. У меня пока ни разу нормально битбанг на LPT не заработал. А теперь и ни одного компьютера дома нет с LPT. И венда x64. Все 16-разрядные приложения только из-под виртуалки запускаются.
Я конечно удивлён. Попробую засовывать в камень "как есть". Ошибочки пока ещё не все нашлись, видимо. Спасибо за участие =)
You do not have the required permissions to view the files attached to this post.
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
Да какая мне разница? Я не писал компилятор для КР1878ВЕ1...kotofalk wrote:У меня там всё то же, что и у вас.Lavr wrote:Что-то вы и про Proteus странные сказки рассказываете...
Вот только незадача, по документации ангстрема, jmp никак не может быть 1580.
Файл *.sav - это бинарник, который создаёт компилятор ангстрема.
Никто на всём просторе интернета, пока я занимался КР1878ВЕ1, не сказал
ни разу, что компилятор ангстрема создаёт неправильный файл *.sav !

На программаторы грешат многие, на компилятор нареканий я не слышал...
iLavr
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
И "пустоты" у меня там тоже нет, а есть какие-то байты. Но я себе не морочил голову содержимым... есть *.sav-файл и это - прошивка, созданная средствами Ангстрема.kotofalk wrote:Если sav-файл используется так, как он создан, то в контроллер предварительно должны отправляться 512 байт пустоты.
Значит - она такая, как надо, и её надо залить как есть.
You do not have the required permissions to view the files attached to this post.
iLavr
-
- Junior
- Posts: 8
- Joined: 15 May 2022 16:10
Re: КР1878ВЕ1
Я нигде не сказал, что он неправильный. Я выражаю сомнение, что файл sav, это точный дамп. Т.к. я не могу взглянув на asm-файл прошиватора, сказать, что там всё просто и все байты заходят в камень точно так, как написано в файле. Потому к вам и обратился.Lavr wrote: Да какая мне разница? Я не писал компилятор для КР1878ВЕ1...
Файл *.sav - это бинарник, который создаёт компилятор ангстрема.
Никто на всём просторе интернета, пока я занимался КР1878ВЕ1, не сказал
ни разу, что компилятор ангстрема создаёт неправильный файл *.sav !![]()
Т.к. мне не на что больше ориентироваться. В документации на камень - одно. В модели протеуса - другое (перевёрнуто), в файле sav - третье (перевёрнуто+смещение).
Я Бы тоже не морочил себе голову, если б не собрался свой USB-программатор сделать.
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
А кто и где сказал, что файл *.sav - это точный дамп?kotofalk wrote:Я нигде не сказал, что он неправильный. Я выражаю сомнение, что файл sav, это точный дамп.

Это файл прошивки... точный дамп - это обычно *.bin !
А что вам мешает? Там прилично комментариев...kotofalk wrote:. я не могу взглянув на asm-файл прошиватора, сказать, что там всё просто и все байты заходят в камень точно так, как написано в файле.
Я в упор не помню всего этого, но открыл файл и всё увидел...
Code: Select all
sub_FILE_89E proc near ; CODE XREF: start+3Cp start+9Ap
pusha
push ds
push cs
pop ds
assume ds:seg000
mov ax, 3D00h
int 21h; DOS - 2+ - OPEN DISK FILE WITH HANDLE
; DS:DX -> ASCIZ filename
; AL = access mode
; 0 - read
jb loc_0_8DB
mov bx, ax
xor cx, cx
mov dx, cx
mov ax, 4202h
int 21h; DOS - 2+ - MOVE FILE READ/WRITE POINTER (LSEEK)
; AL = method: offset from end of file
jb loc_0_8DB
mov bp, ax
xor cx, cx
mov dx, cx
mov ax, 4200h
int 21h; DOS - 2+ - MOVE FILE READ/WRITE POINTER (LSEEK)
; AL = method: offset from beginning of file
jb loc_0_8DB
mov cx, bp
mov dx, offset byte_0_A99; 0A99h
mov ah, 3Fh
int 21h; DOS - 2+ - READ FROM FILE WITH HANDLE
; BX = file handle, CX = number of bytes to read
; DS:DX -> buffer
jb loc_0_8DB
cmp ax, cx
stc
jnz loc_0_8DB
mov cs:word_0_89C, ax
mov ah, 3Eh
int 21h; DOS - 2+ - CLOSE A FILE WITH HANDLE
; BX = file handle
loc_0_8DB: ; CODE XREF: sub_FILE_89E+9j
; sub_FILE_89E+16j ...
pop ds
assume ds:nothing
popa
retn
sub_FILE_89E endp
На самом деле вы весьма долго мне голову морочите и всему форуму совершенно надуманными проблемами...kotofalk wrote:В модели протеуса - другое (перевёрнуто), в файле sav - третье (перевёрнуто+смещение).
Я Бы тоже не морочил себе голову, если б не собрался свой USB-программатор сделать.

P.S. Особенно с учетом того, что вы решили "свой USB-программатор сделать", а я лишь проверил
программу Ангстрема, работающую на LPT, на соответствие Ангстремовским же алгоритмам...
Причем мне и в голову не приходило ковыряться в структуре *.sav файла...
P.P.S. Может быть, вам лучше у этого чувачка спросить исходник? На ЯВУ написано...http://radionet.com.ru/shem/shem956.html
You do not have the required permissions to view the files attached to this post.
iLavr
-
- Fanat
- Posts: 67
- Joined: 10 Mar 2018 12:50
Re: КР1878ВЕ1
вот здесь и прога под XPkotofalk wrote: Схема с компортом, которую выложил Shumadan мне неизвестна. По крайней мере, я не знаю, каким софтом можно было бы гарантированно прошить этот МК через ком порт.
https://sites.google.com/site/russianlabyrinth/
-
- Supreme God
- Posts: 16689
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: КР1878ВЕ1
Я структуру файла *.sav не разбирал, поскольку, судя по коду, программатор считывает его целиком в свой внутренний буфер.kotofalk wrote:в файле sav - третье (перевёрнуто+смещение).Lavr wrote:*.sav - это файл прошивки...
В этом случае в памяти программатора байты лежат так, как лежали в файле *.sav
Из интересу я вчера пошарил структуру файла *.sav поисковиками по Интернету, и ничего не нашел...

Но, сравнив несколько собственных файлов типа *.sav, пришел к выводу, что в начале файла - служебная
информация, по крайней мере, два ненулевых байта - это длина кода с адреса 200h. Что касается "другое (перевёрнуто), ... третье (перевёрнуто+смещение)", то ничего там
не перевёрнуто, а всё - совершенно правильно!
Команда КР1878ВЕ1 - 16-разрядная:

Программатор начинает читать команду побитно, начиная со старшего бита старшего байта слова: Поэтому старший байт в файле *.sav лежит первым, ибо это - файл прошивки.
После 16 сдвигов этот байт окажется на своём старшем месте, а следующий за ним - на своём младшем.
You do not have the required permissions to view the files attached to this post.
iLavr