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

Установил, но CyConsole не видит мое устройство. В диспетчере устройств оно есть, я уже писал оттуда VID и PID. Может сначала драйвер для этого устройства поставить нужно? А какой?

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


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

Прошил, достаточно было установить для устройства без EEPROM драйвер CyUSB, базовую прошивку оно имеет в ROM, я и подумать не мог. Только файлы inf почему-то имели расширение bak, исправил и драйвер установился. Но только под XP, с этим тоже была проблема. Оказалось все намного проще, я думал EEPROM прошивать как-то отдельно. Спасибо!

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


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

Подскажите, так можно ли очистить EEPROM без прямого доступа к ней. Т.е. есть закрытый прибор на FX2, в нем доступ возможен только к USB порту. Прошивка убита - при подсоединению к компу определяется как неизвестное устройство (VID/PID = 0).

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


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

Подскажите, так можно ли очистить EEPROM без прямого доступа к ней. Т.е. есть закрытый прибор на FX2, в нем доступ возможен только к USB порту.

Нет конечно. Если только сама прошивка, находящаяся в EEPROM, не позволяет этого.

 

Прошивка убита - при подсоединению к компу определяется как неизвестное устройство (VID/PID = 0).

Насколько помню: если в EEPROM нет прошивки или она невалидна, то сабж должен переходить в режим загрузки прошивки по USB.

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


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

Насколько помню: если в EEPROM нет прошивки или она невалидна, то сабж должен переходить в режим загрузки прошивки по USB.

И как определяется её невалидность? Грубо говоря при обновлении прошивки вместо 16Кб данных записалось только 8, после этого работоспособность была утеряна (хотя до этого родная прошивка слетела по непонятным причинам).

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


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

И как определяется её невалидность?

Очевидно, что это описано в документации. Помнится там должен быть какой-то заголовок.

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


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

Очевидно, что это описано в документации. Помнится там должен быть какой-то заголовок.

Если только по первому байту, то про 0xC0, 0xC2 - это понятно. Сейчас там 0xC2 - загрузка из EEPROM. Просто здесь на форуме описывали чудесную программу CyConsole, с помощью которой можно перепрошивать FX2 и которая лучше EzMr (я ей всё прошивал). Вот я и интересуюсь.

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


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

Если только по первому байту, то про 0xC0, 0xC2 - это понятно. Сейчас там 0xC2 - загрузка из EEPROM. Просто здесь на форуме описывали чудесную программу CyConsole, с помощью которой можно перепрошивать FX2 и которая лучше EzMr (я ей всё прошивал). Вот я и интересуюсь.

А что в ней чудесного? Ну если нужна, то она есть в составе "Cypress Suite USB".

Я EEPROM прошивал сам... насколько помню.

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


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

А что в ней чудесного? Ну если нужна, то она есть в составе "Cypress Suite USB".

Я EEPROM прошивал сам... насколько помню.

 

На основе этого сообщения вопрос и появился

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


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

Связался с техподдержкой по нерабочему прибору - ответили, есть всё-таки SCL/SDA на внешнем разъёме. Алгоритм действий прислали - отключаете прибор, перемычку SDA к земле, подключаете к компу, перемычку убираете и шьёте нашей утилитой. Попробовал, не работает)) Посмотрел осциллографом - как только перемычка убирается (хоть через 10 секунд, хоть через минуту) сразу идет 500мс загрузка с EEPROM (судя по всему), т.е. сброса контроллера не происходит. Так как его правильно сбросить?

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


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

Связался с техподдержкой по нерабочему прибору - ответили, есть всё-таки SCL/SDA на внешнем разъёме. Алгоритм действий прислали - отключаете прибор, перемычку SDA к земле, подключаете к компу, перемычку убираете и шьёте нашей утилитой. Попробовал, не работает)) Посмотрел осциллографом - как только перемычка убирается (хоть через 10 секунд, хоть через минуту) сразу идет 500мс загрузка с EEPROM (судя по всему), т.е. сброса контроллера не происходит. Так как его правильно сбросить?

Там скорей всего встроенный ROM-загрузчик непрерывно сканирует все источники загрузки (USB, EEPROM, ...) откуда можно загрузиться и грузит с того, которое первое ответит.

Я помню делал так (когда в EEPROM почему-либо оказывалось нерабочее ПО, которое блокировало загрузку по USB и при этом само не работало): отключал SCL перемычкой (у нас была на плате) от EEPROM, грузил по USB прошивальщик в CY7C68013, возвращал перемычку на место, шил рабочую прошивку в EEPROM через загруженный прошивальщик. Прошивальщик можно написать отдельный (а может он даже есть у Cypress), но у нас он входил в состав рабочего firmware. Собственно я им самим его самого и шил в EEPROM. Посмотрите - может в составе примеров или Cypress Suite есть такой прошивальщик. Я уже плохо помню, так как работал с CY7C68013 несколько лет назад.

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


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

Связался с техподдержкой по нерабочему прибору - ответили, есть всё-таки SCL/SDA на внешнем разъёме. Алгоритм действий прислали - отключаете прибор, перемычку SDA к земле, подключаете к компу, перемычку убираете и шьёте нашей утилитой. Попробовал, не работает)) Посмотрел осциллографом - как только перемычка убирается (хоть через 10 секунд, хоть через минуту) сразу идет 500мс загрузка с EEPROM (судя по всему), т.е. сброса контроллера не происходит. Так как его правильно сбросить?

Мы для таких случаев специально делали перемычку на линии SDA, и не к земле, а разрывали саму SDA между EEPROM и контроллером. Сколько раз эта перемычка выручала. Может быть, если просто притянуть к земле, контроллер воспринимает это как неготовность EEPROM и намертво зависает ожидании. Он выставляет на линию 1, а там всегда 0. Как только вы убираете перемычку, он это дело тут же прочухивает и загружает битую прошивку. Попробуйте разорвать саму линию SDA, если это возможно, должно гарантированно сработать.

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


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

В общем получилось - просто подключился к SCL/SDA другим устройством (тоже на FX2, программатора I2C поблизости не было) и прошил EEPROM из вне))

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


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

Мы для таких случаев специально делали перемычку на линии SDA, и не к земле, а разрывали саму SDA между EEPROM и контроллером. Сколько раз эта перемычка выручала. Может быть, если просто притянуть к земле, контроллер воспринимает это как неготовность EEPROM и намертво зависает ожидании. Он выставляет на линию 1, а там всегда 0. Как только вы убираете перемычку, он это дело тут же прочухивает и загружает битую прошивку. Попробуйте разорвать саму линию SDA, если это возможно, должно гарантированно сработать.

SDA разрывать как-то не красиво, достаточно изменить адрес. Т.е. ножку адреса микросхемы EEPROM соединить перемычкой с землей (в боевом режиме подтяжка к 3.3В).

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

Ещё вариант (если есть доступ только к SCL/SDA) и если защита от записи EEPROM управляется контроллером (по умолчанию т.е. прошить не получится) - подсоединить параллельно внутренней EEPROM внешнюю с таким же адресом, но с зашитыми "0". По идее одновременный доступ к шине 2 EEPROM считаются "0", соответственно загрузка по I2C будет отменена.

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


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

SDA разрывать как-то не красиво, достаточно изменить адрес. Т.е. ножку адреса микросхемы EEPROM соединить перемычкой с землей (в боевом режиме подтяжка к 3.3В).

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

У нас эта перемычка на SDA закладывалась сразу при проектировании платы. С адресом тоже способ интересный, возможно, что при отсутствии заранее предусмотренного джампера на SDA это было бы лучшим вариантом.

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


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

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

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

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

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

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

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

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

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

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