Lavr wrote:Наверное, надо рискнуть и прожечь одну штуку
КР1878ВЕ1.
Просто как-то не хочется испортить себе впечатление об этих МК ещё на 5 лет вперёд...

В общем рискнул, прошил и впечатления себе не испортил, ибо мне этого очень не хотелось.
Photo0228.jpg
По текстам программатора я не выявил каких-либо заметных отклонений от документации ООО "Ангстрем",
поэтому решил прошивать их программой
p_wmct.exe, но на всякий случай внёс изменения в схему
программатора, чтобы учесть всё, что я прочитал про микроконтроллер
КР1878ВЕ1.
sxema001.gif
Также эта схема должна поддерживать ещё две других сторонних программы, поэтому имеет некоторые
отличия от имеющихся в сети "стандартных" схем.
Но первый блин комом не вышел,
p_wmct.exe оригинальный от ООО "Ангстрем" исправно прошил экземпляр
КР1878ВЕ1 с датой изготовления
10.08, т.е. изготовленный в 8-ю неделю 2010 года.
Замечания по схеме: буфер
74НС244 я поставил с двоякой целью: поберечь сам LPT-порт, ибо они
сейчас стали редкостью, и второе -
все сигналы в этой схеме подаются на КР1878ВЕ1 только
когда включено через LPT-порт питание +5В. Читал, что микроконтроллер не любит подачи сигналов
на свои выводы (особенно напряжения программирования
+12В), если питание
+5В не подано.
Второй очень важный момент, который я сам заметил при отладке:
LPT-порт должен быть включен в
стандартный однонаправленный режим. У меня был включен режим
bidirectional - это конкретно мешало.
Даже в статике просто при отладке.
Прошивал под чистым
DOS 7.1 на
IBM Thinkpad 600E (
PII 366 MHz).
Пишут, что можно из-под
Windows 95(
98) прошить, но я не рискнул, хотя у меня и
Windows 98, но
в процессе отладки видел, что Венда имеет привычку полезть в свой LPT-порт (возможно, это процесс
SPOOL32 забавляется, но я не стал экспериментировать).
Отлаживал под
Windows 98 с помощью вот этой программы:
Обратил внимание вот на что - напряжения питания и программирования должны быть близки, на мой
взгляд, к номинальным. Поэтому напряжение программирования выставил
+12.1В - учесть падение на
транзисторе. И
620 Ом в базе
VT4 - также, чтобы увеличить ток коллектора. В результате напряжение
питания было
4.9В точно (
142ЕН5А тоже не даёт чистые
+5.0В - в моей практике всегда занижает),
напряжение программирования было точно
+12В на коллекторе
VT3.
Во время отладки от контактов микроконтроллера
PB0,
PB1,
PB2 прицепил на землю светодиоды
FYL-5013URC через
1 К, они яркие, через
1 К вполне прилично светят.
При подаче "
1" на выходы
D3, D4 включается питание
+5В, и горит светодиод
HL2.
При подаче "
1" на выходы
D1, D2 включается питание
+12В, и горит светодиод
HL1.
Если питание
+5В не включено, то питание
+12В не включится, и светодиод
HL1 - не горит.
При подаче "
1" на выход
D5 - загорится светодиод
HL3 - это индикация включения
+12В в программе
p_wmct.exe и для программирования
КР1878ВЕ1 он не нужен.
HL1,
HL2 индицируют питание.
Через программу управления портом подавал "
1"/"
0" на выход
/STROBE, при этом изменяется
/BUSY,
и горит/гаснет светодиод. При подаче "
1"/"
0" на выход
/AUTOLF - изменяется
ACKNLG, и горит/
гаснет светодиод. При подаче "
1"/"
0" на выход
INIT только горит/гаснет светодиод на
PB2.
Транзисторы
VT1,
VT2 притянуты через
12К по базам к земле, чтобы не открылись, если потеря
контакта в разъёме
LPT. С этой же целью -
1К на землю от вывода
A1 буфера
DD1.
Порядок программирования:
1. Подсоединяем программатор к
LPT при выключенном компьютере и выключенном питании
+12.1В.
2. Микроконтроллер
КР1878ВЕ1 в панельку
НЕ ВСТАВЛЯЕМ!
3. Включаем компьютер, он тестирует порты и
светодиоды могут моргать!
Питание проходит от выводов порта
LPT через защитные диоды
74НС244!!!
4. После процедуры
POST на выходах
LPT могут быть лог."
1" - надо их сбросить в "
0" любой
программой (кто не умеет могу выложить).
5. Вставляем
КР1878ВЕ1 в панельку, подаём питание
+12.1В.
6. Запускаем программу программатора, к примеру так:
C:\TEMP\PROG\p_wmct.exe clock18.sav /c:011 /d:EEPROM.DAT
7. Если прошивка прошла удачно, программа программатора сама переводит все сигналы в "
0".
8. Отключаем питание
+12.1В, вынимаем
КР1878ВЕ1 из панельки.
Я не был уверен, что всё закончится успешно, поэтому данная схема может работать со сторонними
программами программатора:
p_1878.exe,
we1.exe - вторая делает прошивку без верификации чтением,
поскольку, как пишут, ошибки случаются в основном при верификации чтением.
P.S. Если нет нужды априори записывать что-то в EEPROM, то файл EEPROM.DAT - обычный текстовый файл
следующего содержания.
Code: Select all
ff ff ff ff ff ff ff ff ;0...7 Bytes
ff ff ff ff ff ff ff ff ;8...15 Bytes
ff ff ff ff ff ff ff ff ;16...23 Bytes
ff ff ff ff ff ff ff ff ;24...31 Bytes
ff ff ff ff ff ff ff ff ;32...39 Bytes
ff ff ff ff ff ff ff ff ;40...47 Bytes
ff 07 ff ff ff ff ff ff ;48...55 Bytes
ff ff ff ff ff ff ff ff ;56...63 Bytes
Если нужно занести что-то в EEPROM, то правим файл EEPROM.DAT в текстовом редакторе.
P.S. Следующая утилита сбрасывает в "0" выводы LPT1:
ZLPT.zip
И утилита и сама программа программатора p_wmct.exe работают только с LPT1!
You do not have the required permissions to view the files attached to this post.