1. Необходим LTP-порт, желательно интегрированный в материнскую плату (PCI LPT-плата может не поддерживать нужный режим), переключенный в режим SPP (Standart Parallel Port), обычно это выставляется в BIOS - соответствующий пункт может иметь название "Output Only" или похожее. Все манипуляции по прошивке следует производить из под Windows 95/98/ME и 2K/XP (32-разрядной). Есть вероятность что драйвер окажется работоспособным под 32-битными версиями Vista/7 (на данный момент не тестировалось)
2. Требуется стандартный Altera Byte Blaster MV, подключенный к LPT-порту.
3. Следует соединить разъем X1 (UART/JTAG) РЕ-мулятора с разъемом Byte Blaster'а по следующему соответствию контактов:
Контакт X3 ByteBlaster Цепь процессора STM32F1xx
1 9 - TCK
2 6 - GND
3 8 - TDO
4 2 - +3.3V
5 10 - TMS
6 не используется
7 не используется
8 5 - ~RESET
9 7 - TDI
10 6 - GND
Для исключения падения напряжения (3.3В) необходимо между соединяемыми выводами 2 и 4 установить диод, например 1N4148, а лучше диод Шоттки или германиевый, на пропуск напряжения от РЕ-мулятора в сторону байт-бластера.
4. Открываем диспетчер устройств Windows и смотрим свойствах LPT-порта в закладке "Ресурсы" начальный адрес первого диапазона ввода-вывода (т.е. минимальный из всех указанных там адресов). Данный адрес будет передаваться в командную строку в качестве одного из параметров для программирования. Затем переходим в закладку "Параметры порта", возможно эти настройки и не принципиальны, но на всякий случай укажу, как они были выставлены у меня:
- метод ресурсов фильтра:
Использовать любое прерывание, назначенное порту;
- Разрешить обнаружение старого Plug and Play:
установлено- номер порта LPT:
LPT15. Скачиваем архив REmulator.zip и распаковываем, например на диск C:, копируем файл c:\REmulator\jload_123a\xport\Install\xport.sys в папку Windows\System32\Drivers
Далее запускаем консольное окно и переходим в папку
C:\REmulator\jload_123a>
Для установки прошивки с набором конфигураций для БК0011М, набираем в командной строке и запускаем:
C:\REmulator\jload_123a>jload -# -p378 -tstm32f2 -e -w -v c:\REmulator\firm\a205_gcc11m_jtag.hex
в командной строке после
-p
указывается адрес, который ранее мы подсмотрели во вкладке "Ресурсы" свойств LPT-порта. В моём случае это был адрес 378 (hex).
Для установки прошивки с набором конфигураций для БК0011, набираем в командной строке и запускаем:
C:\REmulator\jload_123a>jload -# -p378 -tstm32f2 -e -w -v c:\REmulator\firm\a205_gcc11_jtag.hex
После запуска, в обоих случаях, если все в порядке, должна быть выведена информация:
Universal JTAG loader software (light), (c) 2000-2012 Help Micro v1.23a
Altera Byte Blaster found at : 0x0378, 643
Chip ID read from hardware : 4BA00477
Board type is presumed as : STM32F2
Chip type is presumed as : STM32F2xx
IR & SNR lengths are set to : 09:04
AP identification register : 24770011
CPUID identification register : 412FC230
Internal loader code size : 2180
Storing the loader code in RAM : Done
Boot loader code verification : Done
Native software version loaded : 1.F201
Memory chip signature read : 207C
STM flash FPEC_OPTCR register : 0FFFAAED
Memory chip size (in bytes) : 40000
Primary writable unit size : 100
Primary erasable unit size : 20000
Erasing operation in progess : Done
Loading from intelhex file : Done
Writing data to flash memory : Done
Verify flash memory with model : Done
В последних 4-х строках перед появлением
Done
примерно в течение 15 сек будут бежать счетчики. Если сообщений об ошибках и других странных сообщений не было выведено - конфигурация прошита и верифицирована успешно, отсоединяем перемычку SA6, запаиваем перемычки R4 и R5 РЕмулятор готов к использованию.
Конкретная конфигурация из прошитого набора выбирается комбинацией перемычек SA1..SA4.
Краткая памятка по составу конфигураций из прошивки для БК0011:# Стандартные конфигурации для установки в DS17
# 0 (DS17) - монитор БК11 (201, 202), SA1-4:off; CS1->DS18.23;
# 1 (DS17) - монитор БК11 + Бейсик БК11 (198, 199, 200), SA1:on SA2-4:off; CS1->DS18.23; CS2->XT8.21;
# 2 (DS17) - монитор БК11 + МСТД БК11 (203), SA1,3,4:off; SA2:on; CS1->DS18.23; CS3->D19.37;
# 3 (DS17) - монитор БК11 + Бейсик БК11 + МСТД БК11 (203), SA1-2:on; SA3-4:off; CS1->DS18.23; CS2->XT8.21; CS3->D19.37;
# 4 (DS17) - монитор БК11 + КНГМД БК11 (253), SA1,2,4:off; SA3:on; CS1->DS18.23; CS3->D9.11 (КР559ИП2 на плате КНГМД);
# 5 (DS17) - монитор БК11 + Бейсик БК11 + КНГМД БК11 (253), SA1,3:on, SA2,4:off; CS1->DS18.23; CS2->XT8.21; CS3->D9.11 (КР559ИП2 на плате КНГМД);
#
# Стандартные конфигурации НЕ для установки в DS17
# 6 (XT8) - только Бейсик БК11 (198, 199, 200), SA2,3:on; SA1,4:off; CS1->XT8.22; CS2->XT8.21;
# 7 - эмуляция отдельной МСТД БК11 (203), SA1-3:on; SA4:off;
# 8 - эмуляция отдельной КНГМД БК11 (253), SA1-3:off; SA4:on;
#
# Альтернативные конфигурации для установки в DS17
# 9 - эквивалентна конфигурации 4, 326v12 вместо 253, SA1,4:on; SA2,3:off; CSx - как в конфигурации 4;
# 10 - эквивалентна 5, 326v12 вместо 253, SA1,3:off; SA2,4:on; CSx - как в конфигурации 5;
#
# Альтернативные конфигурации не для установки в DS17
# 11 - эквивалентна 8, 326v12 вместо 253, SA1,2,4:on; SA3:off;
#
# Расширенная конфигурация для установки в DS17 (эмулирует наличие ПЗУ 017, 018 в панельках на плате ПЗУ Бейсика)
# 12 (DS17) - монитор БК11 + Бейсик БК11 + монитор БК10 (017) + Фокал БК10 (018), SA1,2:off; SA3,4:on; CS1->DS18.23; CS2->XT8.21; CS3->XT8.23;
Краткая памятка по составу конфигураций из прошивки для БК0011М:# Стандартные конфигурации для установки в DS17
# 0 (DS17) - монитор БК11М (324, 325), SA1-4:off; CS1->DS18.23;
# 1 (DS17) - монитор БК11М + Бейсик БК11М (327, 328, 329), SA1:on SA2-4:off; CS1->DS18.23; CS2->XT8.21;
# 2 (DS17) - монитор БК11М + МСТД БК11М (330), SA1,3,4:off; SA2:on; CS1->DS18.23; CS3->D19.37;
# 3 (DS17) - монитор БК11М + Бейсик БК11М + МСТД БК11М (330), SA1-2:on; SA3-4:off; CS1->DS18.23; CS2->XT8.21; CS3->D19.37;
# 4 (DS17) - монитор БК11М + КНГМД БК11М (326), SA1,2,4:off; SA3:on; CS1->DS18.23; CS3->D9.11 (КР559ИП2 на плате КНГМД);
# 5 (DS17) - монитор БК11М + Бейсик БК11М + КНГМД БК11М (326), SA1,3:on, SA2,4:off; CS1->DS18.23; CS2->XT8.21; CS3->D9.11 (КР559ИП2 на плате КНГМД);
#
# Стандартные конфигурации НЕ для установки в DS17
# 6 (XT8) - только Бейсик БК11М (327, 328, 329), SA2,3:on; SA1,4:off; CS1->XT8.22; CS2->XT8.21;
# 7 - эмуляция отдельной МСТД БК11М (330), SA1-3:on; SA4:off;
# 8 - эмуляция отдельной КНГМД БК11М (326), SA1-3:off; SA4:on;
#
# Альтернативные конфигурации для установки в DS17
# 9 - эквивалентна конфигурации 4, 326v12 вместо 326, SA1,4:on; SA2,3:off; CSx - как в конфигурации 4;
# 10 - эквивалентна 5, 326v12 вместо 326, SA1,3:off; SA2,4:on; CSx - как в конфигурации 5;
#
# Альтернативные конфигурации не для установки в DS17
# 11 - эквивалентна 8, 326v12 вместо 326, SA1,2,4:on; SA3:off;
#
# Расширенная конфигурация для установки в DS17 (эмулирует наличие ПЗУ 017, 018 в панельках на плате ПЗУ Бейсика)
# 12 (DS17) - монитор БК11М + Бейсик БК11М + монитор БК10 (017) + Фокал БК10 (018), SA1,2:off; SA3,4:on; CS1->DS18.23; CS2->XT8.21; CS3->XT8.23;
Конфигурации №2,3 подразумевают физические отсутствие микросхемы ПЗУ в блоке МСТД (если он подключен), или отсутствие самого блока.
Конфигурации №4,5 подразумевают физические отсутствие микросхемы ПЗУ в подключенном блоке КНГМД.
Примечание:При использовании конфигурации 12 на БК11М для корректного старта монитора БК11М необходимо, пока после включения едет заставка монитора, зажать пробел, и отпустить его после появления приглашения монитора для ввода и курсора. Теперь, набрав
@12;1C
@100000G
можно запустить Фокал, а набрав из Фокала
*P M
<Enter>
- выйти в монитор БК0010. Набрав в мониторе БК0010 команду
? S147712
<Enter>
- можно снова оказаться в мониторе БК0011М.
При использовании конфигурации 12 на БК11 пробел зажимать не нужно, просто дождаться старта монитора, и для запуска Фокала набрать
@12;1C
@100000G