Перейти к содержанию
    

Начальная загрузка PEF22622

Доброго всем времени суток

Не поделится ли кто алгоритмом или ссылкой загрузки firmware- по тому, что дал infineon разобраться не смог.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет!

Какая схема загрузки и какой используется вспомогательный микроконтроллер?

Какие есть загрузочные файлы и какая используется документация (наименование и дата)?

Есть ли соглашение с Infineon о неразглашении?

PEF22622 работает хорошо, только описание на него немного необычное...

Изменено пользователем Волощенко

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет!

Какая схема загрузки и какой используется вспомогательный микроконтроллер?

Какие есть загрузочные файлы и какая используется документация (наименование и дата)?

Есть ли соглашение с Infineon о неразглашении?

PEF22622 работает хорошо, только описание на него немного необычное...

Спасибо за ответ

Да соглашение NDA со Шмелевым делали

работаю по документам:

-socrates_ds1_v14datasheet.pdf-Data Sheet, DS 1, Jan. 2002

-SOC_uC_interface_load .pdf-Application Note, DS 1, July 2001

Контроллер Аt89s8253

Вот как раз в "необычности" и проблема- алгоритм загрузки и что-то типа программы, которые они дают в appNote не сходятся- не понятно -чем проверять, съел он блок или нет, что каждый раз писать в MODE_E. B и еще куча вопросов

 

Если есть инфа, которой можете поделиться,вышлите на [email protected]

Изменено пользователем Kazap

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Та документация, что перечислена, достаточна для работы.

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

У меня используется Atmega128, работаю с двумя PEF22622 (так как проект для регенератора), программа написана в С в среде ICCAVR от IAR. Алгоритм загрузки соответствует следующему:

 

/* 1. Set MODE_E to 80 to signal slave mpu that we want to do a memory download

1a.check STAT_E to see that HDLC is not busy

2. if not busy reset fifos via CMD_E

3. Send BYTE count in XBC_E - 2 address bytes + code data bytes

4. Put MSByte and LSByte of Slave Ram Address in the fifo XFIFO_E

5. Put 64 bytes of code data into fifo XFIFO_E

6. See if slave MPU is ready for another download via ISTA_E.1 bit

7. Download in blocks of 64 or less until finished loading the slave ram.

8. Make sure BYTE Cnt is correct for each block via XBC_E

9. Set BYTE Cnt to 2 but transmit only one byte to recognize next MODE_E

9. Signal slave mpu to send back calculated checksum via MODE_E = 0x80

10.wait till slave mpu signals that the fifo (XFIFO_E) contains the

checksum via STAT_E

11.comapre this checksum vs. the checksum in codetabl.h

12.when finished switch the slave mpu back to HDLC mode via MODE_E=0

*/

 

Для начала нужны функции записи/считывания байт в PEF22622 c учетом используемого Аt89s8253 и Вашей схемы, а затем сама функция загрузки (ниже мои прототипы):

void WR(byte Adr, byte Date);

byte RD(byte Adr);

byte FirmWare_Download_PEF22622(byte __farflash *pCode, word length);

 

Они у Вас уже написаны?

Вы должны считывать отдельные байты из PEF22622 еще до загрузки Firmware, это позволит проверить интерфейс между Аt89s8253 и PEF22622.

Какой файл используете для Firmware?

Изменено пользователем Волощенко

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Та документация, что перечислена, достаточна для работы.

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

У меня используется Atmega128, работаю с двумя PEF22622 (так как проект для регенератора), программа написана в С в среде ICCAVR от IAR. Алгоритм загрузки соответствует следующему:

 

/* 1. Set MODE_E to 80 to signal slave mpu that we want to do a memory download

1a.check STAT_E to see that HDLC is not busy

2. if not busy reset fifos via CMD_E

3. Send BYTE count in XBC_E - 2 address bytes + code data bytes

4. Put MSByte and LSByte of Slave Ram Address in the fifo XFIFO_E

5. Put 64 bytes of code data into fifo XFIFO_E

6. See if slave MPU is ready for another download via ISTA_E.1 bit

7. Download in blocks of 64 or less until finished loading the slave ram.

8. Make sure BYTE Cnt is correct for each block via XBC_E

9. Set BYTE Cnt to 2 but transmit only one byte to recognize next MODE_E

9. Signal slave mpu to send back calculated checksum via MODE_E = 0x80

10.wait till slave mpu signals that the fifo (XFIFO_E) contains the

checksum via STAT_E

11.comapre this checksum vs. the checksum in codetabl.h

12.when finished switch the slave mpu back to HDLC mode via MODE_E=0

*/

 

Для начала нужны функции записи/считывания байт в PEF22622 c учетом используемого Аt89s8253 и Вашей схемы, а затем сама функция загрузки (ниже мои прототипы):

void WR(byte Adr, byte Date);

byte RD(byte Adr);

byte FirmWare_Download_PEF22622(byte __farflash *pCode, word length);

 

Они у Вас уже написаны?

Вы должны считывать отдельные байты из PEF22622 еще до загрузки Firmware, это позволит проверить интерфейс между Аt89s8253 и PEF22622.

Какой файл используете для Firmware?

 

 

Более -менее подразобрались. Файлы RT16_14.bin, , co16_14.bin. Socrates -14 После загрузки firmware- register fwvers дает 96н(это число вызывает сомнения), а romvers-12н(похоже на истину). Не знаете взаимосвязь между содержимым fwvers и версией FW? И еще вопрос- вы CL грузите или без него обходитесь-я так понял, возможно без него

Изменено пользователем Kazap

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Файлы и коды правильные.

Последовательность вхожения в работу у меня такая:

1. Reset PEF22622

2. Firmware Download

3. Capability List Download

4. Program RESTART

5. Wait for INITIALIZATION

6. IF Initial then PREACT or TRAIN

7. Init EOC

На Ваш адрес "rambler.ru" выслана помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще одна картинка внутренних регистров в приложении (это по поводу кодов)

Doc2.doc

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще одна картинка внутренних регистров в приложении (это по поводу кодов)

Большое спасибо за помощь- более-менее с начальной загрузкой разобрались . Начинаем линковать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Слинковался нормально, спасибо за помощь. Есть пара проблем-Если пересбросить в режиме линка один из Socrates, то линк уже не восстанавливается- нужно обязательно дать reset одновременно на оба в пределеах +- 1 сек. Используем режимTrain.

И второе -не удается принять Байты через HDLC-E. (так как HDLC BZ имеет ошибки, не хотим его использовать) Передача проходит как положено- а на приеме флаг готовности RPF_E не выставляется

Изменено пользователем Kazap

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ваша программа что-то портит или Вы, возможно, еще не разобрались в работе с PEF22622 и не верно задаете настройки. Все заявленное в описании PEF22622 должно нормально работать.

Советую через управляющий микроконтроллер и RS-232 вывести для анализа трассу состояний PEF22622 и работать далее в режиме G.hs.

В приложении возможный вариант сервисной программы при снятии реальной трассы состояний.

Doc1.doc

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насчет заявленного infineon- у меня есть errata, в которой говорится о проблемах с hdlc_bz, если

нужно могу выслать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я использовал Errata Sheet DS 7, 2002-02-05. В частности, исправлял свою схему для соответствия Figure 2. Если есть что-то новое, то это будет интересно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А можно Errata Sheet DS 7 выложить здесь? Или сбросить мне на мыло? А то у меня почему-то только 6-я... Может именно из-за этого половина чипов и не живет:( Тем более если там изменения в схеме...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Выложил - Errata Sheet DS 7, да простит меня NDA....

Socrates_ds7_v1.4erratasheet.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

СПАСИБО!!! Думаю простит:) Вообще у наших программистов есть соглашение, только они все прячут. И ерраты в том числе...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...