1-Wire Software для DS2432 Copyright (с) 2004-2006 Lapatushka. http://xerox90.narod.ru http://xerox90.nm.ru http://xerox90.150m.com mailto:[email protected] mailto:[email protected] 1-Wire Software for DS2432 предназначено для программирования чипов DS2432. На текущий момент программа поддерживает следующие аппаратные интерфейсы: -1WProgrammer.pdf – аппаратный интерфейс для чипов 1-Wire. -PrX90&1WCol.pdf- аппаратный интерфейс для чипов: Xerox90/Xerox01/1-Wire. -1WX90VivacePrgCol.pdf – аппаратный интерфейс для чипов: Xerox90/Xerox01/1-Wire/Xerox-Vivace. Программа будет работать с аппаратным интерфейсом от Dallas Sem - DS9097E, DS9097 либо клонами этих интерфейсов. Версия от 0.15 имеет поддержку USB интерфейса DS9490R от Dallas Sem. Для использования этого интерфейса должны быть установлены TMEX драйверы от Dallas Sem. Домашняя страница драйверов: http://www.maxim-ic.com/products/ibutton/software/tmex/ 1-Wire Software for DS2432 использует два библиотечных файла: “ib97e32.dll”, “ibfs32.dll” (для Native или DS9097E интерфейса). Эти .dll файлы – драйверы от Dallas Sem для DS9097E интерфейса. Эти файлы должны находится в той же папке, где и исполняемый файл 1-Wire software for DS2432 (Pr1Wire2432.exe). Для других интерфейсов должны быть инсталлированы соответствующие драйверы. Кратко о функциях 1-WireSoftware for DS2432: -File->Read: читает ‘.bin’, созданный Pr1Wire2432.exe (расширение '.bin') в окно редактора; Этот элемент дублируется на панели инструментов. -File->Write: сохраняет данные из окна редактора во внешний файл (расширение ‘.bin’). Этот элемент меню дублируется на панели инструментов. -File->Exit: выход из программы. -Action->Read Chip: Читать данные из DS2432. Если возможно прочитать текущий Секрет, он будет скопирован в адресный диапазон [98h..9Fh] окна редактора. Этот диапазон предназначен для хранения используемого при записи Секрета. Если возможность прочитать Секрет заблокирована, область редактора [98h..9Fh] останется неизменной. Этот элемент меню дублируется на панели инструментов. -Action->Check DS2432: проверить свойства текущего DS2432 (который находится в программаторе). Для этого программа читает страницу байтов статуса и анализирует каждый байт, который влияет на поведение чипа. Этот элемент меню дублируется на панели инструментов. -Action->Write DS2432 use current Secret: программа записывает данные в чип используюя текущий Секрет, инсталлированный в чипе. Программа пробует прочитать текущий Секрет из чипа. Если прочитать его не удается, в качестве Секрета будут использованы данные редактора по адресу [98h..9Fh]. Этот элемент меню дублируется на панели инструментов. -Action->Write DS2432+Install new Secret: программа записывает данные в чип. Перед записью программа пробует инсталлировать новый Секрет из окна редактора, адрес: [98h..9Fh]. Если Секрет защищен от изменения, программа пробует прочитать текущий Секрет чипа. Если это не удастся, программа будет использовать данные окна редактора [98h..9Fh] в качестве Секрета, для записи данных в чип. Этот элемент меню дублируется на панели инструментов. -Show/Hide debug panel: показать/скрыть отладочную панель/панель дополнительных функций (режим предназначен для отладки или дополнительных операций над чипом). Этот элемент меню дублируется на панели инструментов. -About: Кратко о программе. Панель инструментов содержит несколько дополнительных кнопок: -Empty editor: заполнить окно редактора значением 'FFh' (пустое значение); -Write file. Set file name as ROM number – сохранить содержимое окна редактора во внешнем файле. В качестве имени файла установить ROM-идентификатор чипа. Поскольку в природе не существует двух чипов с одинаковой ROM-областью (это свойство этих чипов, заданное производителем), это хороший путь для хранения однотипных прошивок. ROM-область чипа находится по адресу [90h..97h]. Панель инструментов имеет несколько списков для: -выбора COM-порта, аппаратной части программатора (для Native и DS9097E интерфейов); -выбора USB-порта, аппаратной части программатора (для DS9490R интерфейса); -выбора типа интерфейса. Панель инструментов программатора.. позволяет выбрать COM-порт, куда подсоединена аппаратная часть Отладочная панель (чтобы увидеть/скрыть эту панель нужно нажать кнопку “Show/Hide debug panel”) имеет области: DS2432[Debug], DS2432[Extended] для отладочных и дополнительных процедур. -DS2432[Debug]: -ReadDS2432: читает данные из DS2432 и показывает отладочную информацию (полезно, если что-то идет не так); -Write DS2432: записывает данные в DS2432 и показывает отладочную информацию (полезно, если что-то идет не так); -DS2432[Extended]: -Analyse Status: расшифровать текущие (для дампа в окне редактора) значения байтов статуса. -Memory Map: показать карту памяти DS2432. -+/- 2nd Hex: окрыть панель дополнительного редактора (Hex-Editor2). Панель используется при чтении дополнительной информации из чипа. -Map 2nd Hex: показать карту памяти дополнительного редактора. -Ext Read: читать всю возможную информацию из чипа. Для этого программа делает следующие шаги: --читает EEPROM чипа в окно редактора [00h..7Fh]; --читает Секрет чипа (если возможно) в окно редактора [80h..87h]; --читает страницу Статуса чипа в окно редактора [88h..8Fh]; --читает ROM чипа в окно редактора [90h..97h]; --если Секрет можно прочитать, то он будет скопирован в окно редактора [98h..9Fh] для хранения в дампе; --читает MAC код для страницы 0, в окно Hex-Editor2 [00h..13h]. Используется команда А5h. ---в качестве Challenge используются данные из окна Hex-Editor2[18h..1Fh] --читает MAC код для страницы 1, в окно Hex-Editor2 [20h..33h]. Используется команда А5h. ---в качестве Challenge используются данные из окна Hex-Editor2[18h..1Fh] --читает MAC код для страницы 2, в окно Hex-Editor2 [40h..53h]. Используется команда А5h. ---в качестве Challenge используются данные из окна Hex-Editor2[18h..1Fh] --читает MAC код для страницы 3, в окно Hex-Editor2 [60h..73h]. Используется команда А5h. ---в качестве Challenge используются данные из окна Hex-Editor2[18h..1Fh] --читает ROM чипа, используя команду 33h в окно Hex-Editor2 [78h..7Fh]. -Ext.Save: сохранить все считанные данные во внешний файл. В качестве имени файла установить ROMидентификатор чипа. ROM-область чипа находится по адресу [90h..97h]. DS2432 имеет следующие свойства. Данные из чипа можно читать много раз без любых ограничений. Для того, чтобы можно было записать данные в DS2432, нужно знать (или установить) 8-ми байтный «секрет» (код доступа на запись). Свойства секрета в том, что его можно записать, но нельзя прочитать (по документации на чип от Dallas Sem). На самом деле, область “секрета” ведет себя следующим образом: если байт статуса “Factory byte”не активирован (не равен $55 или $AA), то "секрет" можно читать как и любые другие данные. Если байт активирован, то при чтении данных из области памяти "секрета" будут читаться одни FFh DS2432 имеет 8 байтов статуса (Status bytes), которые влияют на поведение чипа. Полную информацию по DS2432 можно получить из даташита на чип. Карта памяти для DS2432 следующая: Адрес 00h-1Fh 20h-3Fh 40h-5Fh 60h-7Fh 80h-87h 88h-8Fh 88h 89h 8Ah 8Bh 8Ch 8Dh 8Eh 8Fh 90h-97h 98h-9Fh Описание Данные страницы памяти 0 (свободное чтение, запись только зная “секрет”) Данные страницы памяти 1 (свободное чтение, запись только зная “секрет”) Данные страницы памяти 2 (свободное чтение, запись только зная “секрет”) Данные страницы памяти 3 (свободное чтение, запись только зная “секрет”) Область памяти для “секрета” (только для записи, если не активирован Factory Byte) Байты статуса Защита “секрета” от записи (активируется значением: AAh или 55h) Защита страниц памяти 0..3 от записи (активируется значением: AAh или 55h) Байт пользователя (активируется значением: AAh или 55h Factory byte Байт пользователя/режим EPROM для страницы 1 (активируется значением: AAh или 55h) Байт пользователя/защита от записи страницы 0 (активируется значением: AAh или 55h) Байт пользователя/Идентификатор заказчика Байт пользователя/Идентификатор заказчика 64-битовыйt регистрационный номер (ROM-область), только для чтения Область окна редактора для хранения заданного пользователем “секрета” в дампе (используется 1-Wire Software для DS2432). Из этого адресного пространства программа инсталлирует новый секрет для DS2432.