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

Проблема программирования TMS320LF2402

Помогите кто-нибудь, может грабли в ДНК, т.к. первый раз пользуюсь этим процессором (С2000) и средой. Может где-то что-то просто не включил. :(

 

Проблема заключается в том, что я не могу загрузить программу после компиляции.

Используется процессор TMS320LF2402APGA.

Для примера пытаюсь загружать программу hellodsp из C:\ti\tutorial\dsk2407\gelsolid\

как в исходном виде:

 

MEMORY

{

PAGE 0: VECS: origin = 0000h, length = 0040h

PROG: origin = 0040h, length = 3fc0h

 

PAGE 1: B0B1: origin = 0200h, length = 200h

SARAM: origin = 8000h, length = 1000h

}

 

SECTIONS

{

vectors : { } > VECS PAGE = 0

.cinit : { } > PROG PAGE = 0

.text : { } > PROG PAGE = 0

 

 

.const : { } > B0B1 PAGE 1

.data : { } > B0B1 PAGE 1

.bss : { } > SARAM PAGE 1

.stack : { } > SARAM PAGE 1

.sysmem : { } > SARAM PAGE 1

}

 

так и с изменениями для 2402:

 

MEMORY

{

PAGE 0: VECS: origin = 0000h, length = 0040h

PROG: origin = 0044h, length = 1fbch

 

PAGE 1: B0B1: origin = 0200h, length = 200h

SARAM: origin = 8000h, length = 200h

}

SECTIONS

{

vectors : { } > VECS PAGE = 0

.cinit : { } > PROG PAGE = 0

.text : { } > PROG PAGE = 0

 

 

.const : { } > B0B1 PAGE 1

.data : { } > B0B1 PAGE 1

.bss : { } > SARAM PAGE 1

.stack : { } > B0B1 PAGE 1

.sysmem : { } > SARAM PAGE 1

}

 

также в main убрал вызов библиотечной функции:

void main()

{

#if defined(_TMS320C2XX)

Disable_WD();

#endif

 

/*while (TRUE) {

printf("Welcome to the World of DSP. %d\n", counterValue );

}*/

 

}

 

в результате загрузки hellodsp.out в обоих случаях выдает:

 

Load failed. A section of your program falls into a memory region that is not writable. Check your linker configuration and/or memory map.

 

а в диалоге загрузки:

 

vectors: 0 of 128 at 0x0

 

я так понял вектора не хотят грузиться с нулевого адреса, хотя что-бы им мешало? :(

 

Среда - С2000_2.21.00 Full

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

Создается впечатление, что проблема во Flash, но какая?

 

В SDConfig tool эмулятор определил как XDS510PP port mode: SPP8

 

Verify connection, Emulator test, Emulator reset и Diagnostics работают без проблем

 

в режиме EPP почему-то не работает, хотя в BIOS стоит EPP.

 

В чем может быть проблема?

 

Эмулятор вроде работает 100%

кстати просили похвалить минский эмулятор - хвалю, надеюсь не зря :)

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


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

так до сих пор никто и не ответил...

Ну ну.

Дело в том, что в данной системе можно загрузить программу ТОЛЬКО В ОЗУ. Для этого я на своей плате c TMS320LF2407A делаю внешнее озу, объявляю что програмная память внешняя и туда гружу программу.

в 2402 это вообще не возможно. Только программировать flash с каждой версией программы.

 

Во общем надо отлаживать программу на 2407 потом портировать ее на 2402. 2402 пригодна для конечных устройств, но не годится для отладки ситсем на ней.

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


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

Давно тут не был...

Вообщем могу вот что добавить. Минский эмулятор, это клон, а не родной XDS510PP. Я тут выкладывал описания, как такое сделать. Этот эмуль не поддерживает ничего кроме SPP8, потому как вместо родного чипа SMC34C60 он использует плисину XC95108. Изначально этот проект был выложен на электроде. Цена, по которой продают Минский вариант, необосновано высока, за те же деньги можно собрать SM510PCI, который имеет большую функциональность и производительность, нежели XDS510PP_CPLD.

Для отладки под 2402 нужно использовать TMS320LF2407A, с внешней RAM большой. Если вариантов нет и нужно работать с готовой платой, придется использовать программирование флеши, для этого с сайта Spectrum Digital нужно скачать SDFlash плагин для композера и радоваться :)

Благо количество циклов записи-перезаписи у 24xx большое.

Удачи.

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


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

Привет всем!

Ну вы тут оперативные :a14: :)

Все равно спасибо за ответы.

Короче, с тем что тут писалось, я, естественно, уже разобрался...

Но появилось еще пару вопросов.

Постоянно перепрошивать Flash и не иметь возможность дебагать, мягко говоря, не очень удобно.

Я так понял для отладки нужно покупать Evaluation Module TMDS3P701016AE для 24xx, либо Starter Kit TMDSEZD2407-0E.

Цена ихняя ~2000 и ~400 уёв соответственно и не у нас.

1 вопрос - чем они отличаются функционально (кроме наличия на плате ЦАПов и в комплекте CCS у первого), и можно ли приобрести что-либо дешевле, если да, то что и где?

2 - это только у меня такие глюки: CCS 3.1 периодически вешается, после перепрошивки тормозит (приходится перезагружать среду), переодически вылетает эмулятор (нет связи с таргетом или типа того).

3 - не вопрос, скорее предложение. На этом процессоре был выполнен проект motion control в плане управления синхронным двигателем в замкнутом режиме без датчика, все вроде хорошо работает, но осталось пару непоняток; если кто желает пообщаться - велкам.

4 - в догонку. Имеет ли смысл ориентироваться на 24хх, может лутше 28хх - цены уже практически одинаковые. У кого какие мысли?

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


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

Ну вы тут оперативные :a14: :)

Все равно спасибо за ответы.

Короче, с тем что тут писалось, я, естественно, уже разобрался...

Насчет оперативности. Вы тоже хороши, раз в полгода появляетесь, в смысле тоже не проявляете активности(:-)

И обращаясь не только к вам, но и ко всем остальным участникам форума, скажу, что методологически было бы правильнее рассказать здесь, на форуме, каким образом была решена проблема, какие решения рассматривались, а не просто сказать, что "вы, естественно, уже разобрались". Надо делиться с людьми, кому-то поможет решить его частную проблему, кто-то вспомнит похожее и поделится на форуме... обмен опытом - великая вещь, и всем будет хорошо.

Но появилось еще пару вопросов.

3 - не вопрос, скорее предложение. На этом процессоре был выполнен проект motion control в плане управления синхронным двигателем в замкнутом режиме без датчика, все вроде хорошо работает, но осталось пару непоняток; если кто желает пообщаться - велкам.

4 - вдогонку. Имеет ли смысл ориентироваться на 24хх, может лучше 28хх - цены уже практически одинаковые. У кого какие мысли?

Смысл перейти на 2808, 2806, 2802, 2801 есть. Преимущества очевидны, 32-разрядная машинка 100 мипс, флеши 64Кслова, озу 18Кслов, разнообразная периферия, каналов шим - море, 12-битный ацп 6.5 Мвыборок, большая преемственность (подходы, архитектура, композер).

По третьему вопросу. Мне было бы интересно, но здесь я выступаю скорее как любитель, хочу вот прикрутить 500Вт движок к однофазной сети с помощью шима.

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


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

1 вопрос - чем они отличаются функционально (кроме наличия на плате ЦАПов и в комплекте CCS у первого), и можно ли приобрести что-либо дешевле, если да, то что и где?

Только тем и отличаются, в основном. Ну и схемой, разумеется.

Самое дешевое решение будет сделать прототип под свои задачи, поставив в плату TMS320LF2407A и память(это если у вас уже есть эмулятор).

2 - это только у меня такие глюки: CCS 3.1 периодически вешается, после перепрошивки тормозит (приходится перезагружать среду), переодически вылетает эмулятор (нет связи с таргетом или типа того).

С минским это возможно :) Смертельные висуны бывают редко. CCS вешалась на старой машине, сейчас все ок!

3 - не вопрос, скорее предложение. На этом процессоре был выполнен проект motion control в плане управления синхронным двигателем в замкнутом режиме без датчика, все вроде хорошо работает, но осталось пару непоняток; если кто желает пообщаться - велкам.

Тоже заниаюсь движками иногда. BLDC в осноном(безсенсорное управление) и коллекторники. Пишите в асю(в профиле).

4 - в догонку. Имеет ли смысл ориентироваться на 24хх, может лутше 28хх - цены уже практически одинаковые. У кого какие мысли?

Это вопрос сугубо личный. Для некоторых задач 2401A достаточно, там ставить 28xx неразумно.

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


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

И обращаясь не только к вам, но и ко всем остальным участникам форума, скажу, что методологически было бы правильнее рассказать здесь, на форуме, каким образом была решена проблема, какие решения рассматривались, а не просто сказать, что "вы, естественно, уже разобрались". Надо делиться с людьми, кому-то поможет решить его частную проблему, кто-то вспомнит похожее и поделится на форуме... обмен опытом - великая вещь, и всем будет хорошо.

Дело в том, что моя основная проблема заключалась в том, что этот процессор я начинал щупать практически с нуля, имея опыт работы с ADSP21xx и MSP430, где я проблем с программированием и отладкой никогда не наблюдал. К примеру: для прошивки MSP430 достаточно средств среды IAR, а для TMS требуется plugin; ADSP - другой разговор, но там встроенной Flash никто и не обещал. В случае TMS на мой взгляд присутствует излишняя, ничем не оправданная, сложность, но это личное мнение.

В плане motion control контроллер очень продуман (именно Event Manager), плюс наработанная библиотека DMC, но с точки зрения отладки и надежности Flash (один уже выбросили, и, судя по высказываниям на форуме, очень повезло что только один :) ) - есть над чем работать техасу.

Вопрос - кто работал с контролерами Freescale и Renesas, ориетнированными на motion control, у вас будут какие либо комментарии?

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


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

Мне было бы интересно, но здесь я выступаю скорее как любитель, хочу вот прикрутить 500Вт движок к однофазной сети с помощью шима.

 

Делал я такое на PIC18F2431. В качестве силовой части использовал IRAMS06UP60B (инвертор + драйвер + шунт) на 500 Вт. При этом не делал никакой гальванической развязки. Вместо контроллера можно использовать микросхемки от IR - IRMCF3xx и IRMCK20x. В них уже прошиты алгоритмы бездатчикового векторного управления асинхронниками. Среди них есть и двухдвигательные контроллеры с корректором коэффициента мощности. Вобщем, отличная вещь для быстрой разработки, когда не требуется чего-то особенного.

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

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


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

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

---

Меня тоже волнует тема перехода на 28хх - останавливает только одно: Где их покупают? Я послал два запроса на эту тему... В ответ SCAN молчит, SCANTI поступает аналогично.

 

В то время как 2407 можно купить в 10 местах, даже в удобной для меня Терраэлектронике...

У 28хх , для меня есть ряд "фичей", которые мне очень удобны, так что для меня вопрос уже решен в пользу 28хх, только нужно время.

---

Что касается отладчика, у меня серии устойств не больше 100, поэтому все делается на 2407, но на стадии отладки в устройство вставляется отладочный модуль (отличается от обычного напаянной памятью на 32К слов. Потом прошивается боевой модуль и привет. Я этот модуль сделал для себя еще в 2002 году и пока желания менять нет.

 

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

post-19188-1165505975_thumb.jpg

post-19188-1165506000_thumb.jpg

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


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

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

Триггерный эффект(:-)? Или тиристорный?

Меня тоже волнует тема перехода на 28хх - останавливает только одно: Где их покупают? Я послал два запроса на эту тему... В ответ SCAN молчит, SCANTI поступает аналогично.

Что я вам скажу, с ними надо работать, лучше всего лично. Если у них есть, там можно и купить, я так делал со SCANTI, правда в далеком 1998..99, не помню уже, не знаю, где они сейчас сидят, тогда к ним было неудобно добираться.

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

Респект! Что делает эта плата? И зачем переходить на другой контроллер, если этот обеспечивает все нужды?

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


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

квадратная плата:

- модуль с процессором, монитором сброса (сбросов) и питанием.

+ возможность напаять на обратной стороне память,

+ тригер, который позволяет загружать процессор из внутренней flash или из внешнего ОЗУ.

Все нужные выводы процессора на разъеме.

 

В новый проект вставляю распиновку разъемов и при необходимости вывод на JTAG.

В комплекте еще есть плата переходник (могу опубликовать фото), которая включаестя в промежуток между процессорнным модулем и платой проекта и позволяет подключить JTAG и терминал PC через 485-USB.

 

----

есть ряд задач, которые лучше будут решаться на 28хх (скорость, быстрый АЦП, два УАРТа

а в обеих фирмах меня знают лично. Конечно, не все. Я раньше работал во Ефремовском МХАТе (ныне МХТ) и всех забавляло - человек из МХАТа и процессоры, эмуляторы и т.п.

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


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

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

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

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

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

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

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

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

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

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