|
Начальная загрузка PEF22622 |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 14)
|
Aug 17 2006, 14:39
|
Частый гость
 
Группа: Свой
Сообщений: 93
Регистрация: 8-05-06
Пользователь №: 16 880

|
Цитата(Волощенко @ Aug 17 2006, 12:59)  Привет! Какая схема загрузки и какой используется вспомогательный микроконтроллер? Какие есть загрузочные файлы и какая используется документация (наименование и дата)? Есть ли соглашение с 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 и еще куча вопросов Если есть инфа, которой можете поделиться,вышлите на anmur@rambler.ru
Сообщение отредактировал Kazap - Aug 17 2006, 14:42
|
|
|
|
|
Aug 18 2006, 06:33
|
Местный
  
Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377

|
Та документация, что перечислена, достаточна для работы. Видимо, немецкий инженер описывал ее на английском языке, поэтому написано мало. У меня используется 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?
Сообщение отредактировал Волощенко - Aug 18 2006, 06:38
|
|
|
|
|
Aug 18 2006, 09:03
|
Частый гость
 
Группа: Свой
Сообщений: 93
Регистрация: 8-05-06
Пользователь №: 16 880

|
Цитата(Волощенко @ Aug 18 2006, 11:33)  Та документация, что перечислена, достаточна для работы. Видимо, немецкий инженер описывал ее на английском языке, поэтому написано мало. У меня используется 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 - Aug 18 2006, 09:08
|
|
|
|
|
Aug 18 2006, 11:34
|
Местный
  
Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377

|
Еще одна картинка внутренних регистров в приложении (это по поводу кодов)
Прикрепленные файлы
Doc2.doc ( 166.5 килобайт )
Кол-во скачиваний: 185
|
|
|
|
|
Aug 18 2006, 14:50
|
Частый гость
 
Группа: Свой
Сообщений: 93
Регистрация: 8-05-06
Пользователь №: 16 880

|
Цитата(Волощенко @ Aug 18 2006, 16:34)  Еще одна картинка внутренних регистров в приложении (это по поводу кодов) Большое спасибо за помощь- более-менее с начальной загрузкой разобрались . Начинаем линковать
|
|
|
|
|
Aug 21 2006, 05:59
|
Местный
  
Группа: Свой
Сообщений: 347
Регистрация: 16-02-06
Из: г.Николаев, Украина
Пользователь №: 14 377

|
Ваша программа что-то портит или Вы, возможно, еще не разобрались в работе с PEF22622 и не верно задаете настройки. Все заявленное в описании PEF22622 должно нормально работать. Советую через управляющий микроконтроллер и RS-232 вывести для анализа трассу состояний PEF22622 и работать далее в режиме G.hs. В приложении возможный вариант сервисной программы при снятии реальной трассы состояний.
Прикрепленные файлы
Doc1.doc ( 38 килобайт )
Кол-во скачиваний: 130
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|