чипы dsPIC, работающие с частотой нормальной скорости


9

У меня есть две платы. У одного dsPIC30F6012a, у другого dsPIC30F6015. Оба программируются из отдельных автономных проектов HEX в MPLAB X с использованием PICkit 3. Обе прошивки были применены к десяткам устройств до этого момента без каких-либо трудностей. В настоящее время прошивка работает правильно при программировании со всех компьютеров, кроме одного. На этом компьютере, начиная со вчерашнего дня , обе прошивки программируются без явной ошибки, но выполняются со скоростью примерно 1/20 нормальной скорости. До вчерашнего дня этот компьютер также без проблем программировал эти платы.

Заставки занимают две минуты вместо пяти секунд, свет мигает очень медленно, но, кроме того, все работает правильно. Это почти как если бы биты конфигурации генератора были изменены, но я не знаю нигде в MPLAB X, что можно сделать для отдельного проекта.

Таким образом, две разные прошивки, на двух разных чипах, на нескольких экземплярах одной и той же конструкции печатной платы, работают на разных скоростях в зависимости только от ПК, используемого для их программирования. Перепрограммирование медленной платы на «хорошем» ПК решает проблему; перепрограммирование той же платы на «плохом» ПК возвращает ее обратно. Все, что я могу понять, это то, что на этом компьютере кто-то нажал кнопку «заставь это идти медленно», но я не могу найти ничего, помеченного этим. (Наши специалисты довольно креативны.) В настоящее время я деинсталлирую MPLAB X, стираю пользовательские настройки и переустанавливаю более свежую версию. (Переход с 1.3 на 1.6.) Но даже если это и исправит это, я все равно не рад, что не знаю, что происходит. У кого-нибудь есть понимание этой проблемы?


Проверяет ли компьютер после программирования? Вы можете проверить биты конфигурации с этим, потому что похоже, что это проблема.

Проверка запущена, да. Не было выдано никаких ошибок, поэтому я предположил, что это включает биты конфигурации, но я не проверял вручную. Вероятно, следовало бы, просто для получения дополнительных данных, но я был вынужден потратить немного времени и пошел прямо к решению удалить / переустановить. В ожидании сообщения о том, сработало ли это или нет!
Стивен Коллингс

Будет ли плата, запрограммированная медленным ПК, проверять на «хорошем» ПК?
Крис Страттон

К сожалению (ха!) Переустановка устранила проблему, поэтому я не могу собрать больше данных ... затрудняет получение окончательного ответа!
Стивен Коллингс

Этот вопрос звучит как что-то из « The Onion» на техническую тему .
Кевин Чен

Ответы:


1

В MPLAB X биты конфигурации не могут быть установлены отдельно от кода (как MPLAB 8, используемый для этого). Единственный способ, которым биты конфигурации могут быть «неправильными», - это если кто-то изменил код. Поскольку вы используете автономный HEX-файл проекта, это маловероятно.

Вы еще не сказали, если перепрограммирование одной из «плохих» плат на «работающем» ПК действительно решит проблему. Дайте это попробовать.

Еще одна вещь, которую вы можете сделать (если вы не используете защиту кода), - это прочитать HEX-файл из «работающей» установки и перенести его на одну из неисправных плат. Это должно исключить изменение кода как одну из неопределенностей.

Другой (маловероятный) сценарий состоит в том, что ваш запас dsPIC покрывает несколько ревизий, и резкое изменение каким-то образом лишило законной силы ваш код. Убедитесь, что номера деталей микросхемы правильные, и когда PICkit3 подключится, вы должны увидеть код ревизии, который можно сопоставить с ревизией кремния.

РЕДАКТИРОВАТЬ: Пришло время убедиться, что различные установки MPLAB X совпадают на всех ПК - это одна и та же версия? Это последняя версия?

Всякий раз, когда появляется новая версия MPLAB X, микропрограмма PICkit3 имеет тенденцию обновляться - может быть ошибка или несовместимость со старой версией микропрограммы PICkit3 и вашим HEX-файлом.

Недавно у меня была похожая ситуация (теперь, когда меня осенило - дух), когда HEX-файл, который я генерировал на своей машине с MPLAB X и XC16, правильно программировал на моей машине, но не на другой машине, использующей MPLAB 8 v8. 50 - код, казалось, работал медленнее (светодиоды инициализации казались вялыми). Когда этот ПК был обновлен до MPLAB 8 v8.88 с использованием того же программатора и того же файла HEX, все снова заработало. Weird.


Я перепрограммировал одну и ту же плату на «хорошие» и «плохие» ПК, и проблема возникла и пошла вслед за ПК, который использовался для программирования платы. Я отредактировал вопрос, чтобы отразить это.
Стивен Коллингс
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.