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

Помогите плиз запустить программу из Flash

В общем у меня такая ситуация: есть плата ezdsp TMS320f28335, эмулятор SAU510-usb isoplus, CCSv5, далеко не идеальное знание англйского языка и мало времени.

Я написал програмку которая через прерывания на gpio разные сигналы посылает, запустить я ее пока что могу через дебаг в CCS.

Вопрос в том как записать эту программу на флэш и потом ее оттуда запустить ? Могу ли я просто готовый .out файл засандалить в флэш с помощью sausvf или sdflash и затем переключив загрузку флэш запустить программу просто подав питание на плату, или для этого необходимо произвести какие-то дополнительные с самой программой.

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

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


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

В общем у меня такая ситуация: есть плата ezdsp TMS320f28335, эмулятор SAU510-usb isoplus, CCSv5, далеко не идеальное знание англйского языка и мало времени.

Я написал програмку которая через прерывания на gpio разные сигналы посылает, запустить я ее пока что могу через дебаг в CCS.

Вопрос в том как записать эту программу на флэш и потом ее оттуда запустить ? Могу ли я просто готовый .out файл засандалить в флэш с помощью sausvf или sdflash и затем переключив загрузку флэш запустить программу просто подав питание на плату, или для этого необходимо произвести какие-то дополнительные с самой программой.

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

 

Для того чтобы загрузить программу во флэш использую F28xx On-Chip Flash Programmer встроенный в CCS (у меня CCS 3.3). При этом в проекте в cmd файле должно быть указано что в какую область загружать. В примерах есть cmd для загрузки и выполнения программы в ОЗУ(после снятия питания естественно все слетает) и для Flash. Вам соответственно нужен файл для Flash. Никаких доп. действий предпринимать не нужно.

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


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

Для того чтобы загрузить программу во флэш использую F28xx On-Chip Flash Programmer встроенный в CCS (у меня CCS 3.3). При этом в проекте в cmd файле должно быть указано что в какую область загружать. В примерах есть cmd для загрузки и выполнения программы в ОЗУ(после снятия питания естественно все слетает) и для Flash. Вам соответственно нужен файл для Flash. Никаких доп. действий предпринимать не нужно.

 

У меня пятый CCS ничего похожего на " On-Chip Flash Programmer" я в нем увы не нашел :(, возможно правда в нем нет необходимости его функции могут выполняться автоматически при запуске дебагера.

По поводу cmd файла я заменил F28335_RAM_lnk.cmd файлом F28335.cmd после чего, при нажати на дебаг, увидел довольно долгую очистку флеш памяти и следом заливку моей программы ( вродебы).

Опять же программа успешно работает под управлением CCS, однако, при переключении на загрузку с флеш, запуска программы не произошло :(.

Посоветуйте плиз, что делать :) друзья советуют купить ящик жидкости для протирки контактов, но это врядли поможет.

 

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


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

Сконфигурите bootpin-ы на загрузку из флеш.

+ - возможно, что необходимо чтобы точка входа в _c_int00 находилась по определённому адресу флеш (например в F28M35H52 это адрес 0x20004FF8 - после сброса запускается код в ROM, который

по состоянию bootpin-ов определяет как грузиться и если стоит "флеш", переходит на этот адрес).

Читайте даташит, секцию о загрузке.

 

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


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

Сконфигурите bootpin-ы на загрузку из флеш.

+ - возможно, что необходимо чтобы точка входа в _c_int00 находилась по определённому адресу флеш (например в F28M35H52 это адрес 0x20004FF8 - после сброса запускается код в ROM, который

по состоянию bootpin-ов определяет как грузиться и если стоит "флеш", переходит на этот адрес).

Читайте даташит, секцию о загрузке.

 

Да я вроде бы все правильно делаю. Ну по крайней мере джамперы в положение загрузка с флеш переключаю, в cmd файлике :

MEMORY { PAGE 0: BEGIN : origin = 0x33FFF6, length = 0x000002

и

SECTIONS { codestart : > BEGIN PAGE = 0

 

Вроде как все по феншую, но не запускается зараза :( ( при загрузке SPI-A и запуске дебагера работает на ура)

 

Может еще есть какие идеи у кого ? Я все никак не могу понять, что я делаю неправильно.

 

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


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

Проверьте что Ваш код записался во флеш (под отладчиком посмотрите область флеш).

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

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


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

Не понял я ни что такое бряк на точку входа, ни как стартануть со стартового адреса :( Однако программа всетаки запустилась но не при выставлении boot to flash, а при выборе "Branch to check boot mode". Может ктонить обьяснить почему

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


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

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

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


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

Я просто все не правильно понял

у меня в cmd файлике была следующая часть кода:

 

ramfuncs : LOAD = FLASHD,

RUN = RAML0,

LOAD_START(_RamfuncsLoadStart),

LOAD_END(_RamfuncsLoadEnd),

RUN_START(_RamfuncsRunStart),

PAGE = 0

которая вроде как при включении загружает все мои функции в saram ну и соответственно загрузку надо было ставить на saram

а для того чтобы работала загрузка с флэш надо было мои функции в этом самом флэш и оставить :

ramfuncs : > FLASHD PAGE = 0

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


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

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

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

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

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

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

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

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

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

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