реклама на сайте
подробности

 
 
> Помогите пожалуйста!, tms320lf2406A
alek478
сообщение Nov 3 2006, 05:41
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 24-10-06
Пользователь №: 21 631



Пытаюсь запрограамировать tms320lf2406a
программа(замечательно работавшая на ezDsp), скомпилированная на CCS 3.1, прошивается во флэш.

.cmd файл выглядит следующим образом:
-stack 0x400

MEMORY
{
PAGE 0: VECS: origin = 0000h, length = 0040h
PROG: origin = 1000h, length = 7000h

PAGE 1: B0B1: origin = 0200h, length = 200h
SARAM: origin = 8000h, length = 800h
}

SECTIONS
{
vectors : { } > VECS PAGE = 0

.cinit : { } > PROG PAGE = 0
.text : { } > PROG PAGE = 0
.const : { } > PROG PAGE = 0

.data : { } > B0B1 PAGE 1
.bss : { } > B0B1 PAGE 1
.stack : { } > SARAM PAGE 1
.sysmem : { } > B0B1 PAGE 1
}

в свойствах проекта автоинициализация памяти под RAM (т.е. опция -сr)
при прошивке все замечательно
но реакции никакой,там дисплей подсоединенsmile.gif
путем измеренний выяснили, что если инициализировать через _с_int0, то постоянно срабатывает WD.Если сразу после RESET точкой входа объявлять main(), не _с_int0, то вроде работает все нормально, но не получается стэк инициализаровать, а без него все очень объемно получается.

вставил в проект BOOT.asm из все того же ezDsp, все равно никакого результата.

После того как в ССS, посмотрел код в режиме дизассемблирования, то выяснил следующее:

после RESET, бит ILLADR в SCSR1 сразу оказывается в 1.

а после строк в _с_int0 (BOOT.asm)

LDP #0E0h
SPLK #0068h,WD_CNTL
KICK_DOG

значение регистра WDCR становится равным 0х0040.

все тоже самое и еще на 4 процессорах.

и еще выяснил, что NMI срабатывает в конце куска
;
; Perform the copy of data from program to data
;
copy:
ADDK 1 ; increment pointer to data
TBLR *+,AR3 ; copy data from program to variable
BANZ copy,*-,AR2 ; until count is zero

в стандартном BOOT.asm

Это какая-то ошибка в алгоритме прошивки программы?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 2)
chan
сообщение Dec 3 2006, 18:59
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 68
Регистрация: 8-05-05
Пользователь №: 4 846



Если еще интересно могу скинуть проект для этого камня
Go to the top of the page
 
+Quote Post
=GM=
сообщение Dec 5 2006, 13:29
Сообщение #3


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(alek478 @ Nov 3 2006, 02:41) *
Пытаюсь запрограммировать tms320lf2406a
программа(замечательно работавшая на ezDsp), скомпилированная на CCS 3.1, прошивается во флэш.

в свойствах проекта автоинициализация памяти под RAM (т.е. опция -сr)
при прошивке все замечательно
но реакции никакой,там дисплей подсоединенsmile.gif
Это какая-то ошибка в алгоритме прошивки программы?

Не видно, как вы выставляете стартовый адрес своей программы. Посмотрите после прошивки, куда переходит программа (адрес 0х0000), на 0х0040 (userstart) или 0х3F00(bootloader)?


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 08:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01361 секунд с 7
ELECTRONIX ©2004-2016