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

программирование TMS320F28035

Товарищи, подскажите начинающему.

Начинаю изучать C2000, соответственно нужно прошивать в какой то таргет свой код.

У меня есть CCS4.2 , XDS100v2 и некоторая серийная плата с TMS320F28035, которую очень удобно использовать для разработки своего кода. На этой плате выведены JTAG и serial.

При попытке запустить Debug, не устанавливается соединение с таргетом, на осциллографе видны сигналы на TMS, TDI, TCK, TRST=1 - а на TDO всегда 1, т.е. ответа нет от контроллера. CCS иногда подвисает, иногда выдают ошибку соединения.

Пробовал очистить flash через утилиту Uniflash (как я понимаю это тоже самое что и on-chip flash program, которой нет в меню Tools). Результат такой же что и из CCS - TDO всегда 1.

 

Отсюда вопросы:

1) При прошивке контроллера на заводе производитель мог вообще отключить JTAG? В описании на блок защиты нет явного указания что JTAG полностью отключается, написано что блокируется доступ к определенным адресам памяти и регистрам.

2) Как прошить flash не через JTAG, есть ли какой софт прошивания через serial?

 

Соответственно если мои рассуждения правильные - то необходимо как то очистить flash через serial или купить чистый контроллер и запаять его вместо старого.

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


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

JTAG должен работать всегда. Варианты, почему он не работает: а) он просто убит; б) нет тактовой; в) процессор в резете; г) EMU0/1 не в единицах; д) что-то с питанием. Ну и подобное. Проверьте его работу при помощи утилиты xdsprobe из состава CCS.

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


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

JTAG должен работать всегда.

Так-ли?

К примеру в даташите на F28M35 вроде написано, что можно заблокировать JTAG (см. раздел "JTAG Lock").

На ARM-ах NXP к примеру тоже можно заблокировать.

 

2) Как прошить flash не через JTAG, есть ли какой софт прошивания через serial?

Например в ARM-ах NXP если флешь заблокирована и считать/записать её нельзя и JTAG заблокирован, то можно только выполнить полное стирание флешь (через UART), после этого и защита тоже сбрасывается.

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


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

У меня есть другая плата с F2806. Мой XDS100 ее видит, но не может прошить (ответ по TDO есть), пишет что таргет залочен. Значит программатор исправен скорее всего. На этой плате контроллер тактируется от кварца.

На плате с F28035 контроллер тактируется внутренним генератором, но я думаю что это не является причиной проблемы поскольку в описании на его JTAG написано что соединение возможно независимо от наличия любого тактирования у микроконтроллера.

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

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


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

вроде написано, что можно заблокировать JTAG

 

Вроде нельзя его заблокировать так, чтобы он тупо оторвал TDO. Он при этом не должен переставать пропускать через себя сигнал в байпасе - позволяя работать с другими девайсами в цепочке. То есть сигнал через жтаг проходить все равно должен, и должны измеряться длины IR/DR

 

На плате с F28035 контроллер тактируется внутренним генератором, но я думаю что это не является причиной проблемы поскольку в описании на его JTAG написано что соединение возможно независимо от наличия любого тактирования у микроконтроллера.

 

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

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


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

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

 

Контроллер тактируется и не в ресете, потому что плата работает - контроллер управляет переферией по программе.

Ладно, заменю контроллер на новый и отпишу.

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

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


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

Собственно заменил контроллер на пустой и все заработало.

Видимо либо так лочится JTAG либо на заводе после прошивки специально выжигают TDO пин.

 

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


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

... либо на заводе после прошивки специально выжигают TDO пин.

Интересно как это делается, нагружают этот порт больше допустимого, или есть какой-то другой метод?

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


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

Собственно заменил контроллер на пустой и все заработало.

Видимо либо так лочится JTAG либо на заводе после прошивки специально выжигают TDO пин.

корее всего он мертвый, нет смысла на заводе так заморачиваться, тем более деструктивным способом, это нелогично

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


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

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

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

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

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

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

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

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

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

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