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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Собственный Bootloader для MSP430
rezident
сообщение Apr 4 2013, 11:00
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Ave @ Apr 4 2013, 15:52) *
Не могли бы подсказать где находится оригинальный bootloader от TI.
Сейчас пытаюсь с компилировать из примеров. Компилятор говорит что мало место под прошивку в области BSL.

Про какой именно кристалл MSP430 вопрошаете?
Go to the top of the page
 
+Quote Post
Ave
сообщение Apr 5 2013, 07:46
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 12-09-05
Пользователь №: 8 478



Интересует кристалл MSP430F5528. И возможно прошить область BSL под работу с USB.
Go to the top of the page
 
+Quote Post
Shread
сообщение Apr 14 2013, 14:54
Сообщение #18


иногда заглядывающий
****

Группа: Свой
Сообщений: 900
Регистрация: 18-05-05
Из: Зеленоград
Пользователь №: 5 170



Цитата(Ave @ Apr 5 2013, 11:46) *
Интересует кристалл MSP430F5528. И возможно прошить область BSL под работу с USB.

Открываете оригинальный даташить на контроллер:
http://www.ti.com/lit/ds/symlink/msp430f5528.pdf и поиском по слову memory находим на 22й странице "Table 6. Memory Organization"
Как видно из таблицы часть флеш памяти отведена под USB bootloader "Bootstrap loader (BSL) memory (flash)"
Если памяти мало и бутлоадер родной не нужен, можно эту память использовать для своих нужд.
Go to the top of the page
 
+Quote Post
Ave
сообщение May 3 2013, 09:56
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 12-09-05
Пользователь №: 8 478



Добрый день

Спасибо за ответ. Пробывал передать управление в область BSL виснет процессор.
Смотрю в отладчике значение памяти 0x3fff. Возникает сомнение в наличие там кода.
Чем можно записать BSL область или как правильно передать управление.
Go to the top of the page
 
+Quote Post
jack_avenger
сообщение May 3 2013, 18:55
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 170
Регистрация: 30-06-05
Из: Киев
Пользователь №: 6 426



Цитата(Ave @ May 3 2013, 12:56) *
Добрый день

Спасибо за ответ. Пробывал передать управление в область BSL виснет процессор.
Смотрю в отладчике значение памяти 0x3fff. Возникает сомнение в наличие там кода.
Чем можно записать BSL область или как правильно передать управление.

Скорее всего Вы затерли BSL. Вот здесь есть софт чтоб перезаписать в область BSL, а вот где сам код взять - не знаю, наверное на TI
Go to the top of the page
 
+Quote Post
Ave
сообщение Jul 25 2013, 11:29
Сообщение #21


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 12-09-05
Пользователь №: 8 478



Спасибо за ответы.
Разобрался у MSP430F55xx стандартный загрузчик HID устройство с PID 0x0200 VID 0x2047.
Я в программе на РС изменил PID на 0x0301 и устройство не определялось.
Go to the top of the page
 
+Quote Post
slavokhire5
сообщение Aug 28 2015, 10:50
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 31-03-14
Из: Харьков
Пользователь №: 81 165



Привет всем. Делаю блютуз-бутлоадер для msp430. Флеш будет разбит на 2 части. По стартовым адресам сидит бутлоадер и проверяет, есть ли новый файл прошивки. Если есть - шьет. Если нет - переходит в область флеш, где записана основная прошивка.
Вопрос: как правильно настроить ИАР, чтобы он генерировал файл без отладочной инфо и всякого барахла, чтобы бутлоадр мог его писать сразу во флеш?

поставил во вкладку options->linker->output маркер other, выбрал output format: msp430-txt.
но меня смущает размер данных в получившемся файле - 2.5 кБ, а при билде иар сообщает, что размер кода должен быть около 900 байт. Что нужно еще настроить?
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
controller_m30
сообщение Aug 28 2015, 11:17
Сообщение #23


Местный
***

Группа: Участник
Сообщений: 356
Регистрация: 24-02-09
Пользователь №: 45 309



Если вместо формата "msp430-txt" выбрать в том-же списке формат "raw-binary" - то получится файл с расширением *.BIN, и готовым машинным кодом.
Go to the top of the page
 
+Quote Post
d7d1cd
сообщение Aug 30 2015, 12:27
Сообщение #24


Местный
***

Группа: Участник
Сообщений: 442
Регистрация: 26-11-10
Пользователь №: 61 199



Цитата(jack_avenger @ May 3 2013, 21:55) *
Скорее всего Вы затерли BSL.

Разве BSL можно стереть??? blink.gif
Go to the top of the page
 
+Quote Post
slavokhire5
сообщение Aug 31 2015, 06:46
Сообщение #25


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 31-03-14
Из: Харьков
Пользователь №: 81 165



Привет всем. Пишу бутлоадер для msp430f6721 в IAR.
Память разбил на 3 части:
- бутлоадер (E000-FFFF) - в памяти пока записан только он;
- рабочая программа (B000-DFFF);
- файл прошивки (8000-AFFF);
Пытаюсь записать бутлоадером тестовую страницу памяти (512 байт) по адресу 0x8000 - пишет правильно, но после повторного запуска отладки страница оказывается забита какими-то левыми данными.
Когда пытаюсь писать по адресу 0xC000 - все ок.
Помогите пожалуйста разобраться. грешу на настройки линкера. на всякий случай вот ф-ция записи флеш:
CODE
uint8_t flash_write(int addr, uint8_t *data)
{
flash_erase(addr);

char *addr_ptr;
char *data_ptr;
addr_ptr = (char*)(addr);
data_ptr = (char*)(data);

__disable_interrupt();
FCTL3 = FWKEY; // Clear Lock bit
FCTL1 = FWKEY + WRT; // Set WRT bit for write operation

for (uint16_t i = 0; i < MCU_PAGE_SIZE; i++)
{
*addr_ptr++ = *data_ptr++;
}

FCTL1 = FWKEY; // Clear WRT bit
FCTL3 = FWKEY + LOCK; // Set LOCK bit
while(BUSY & FCTL3);
__enable_interrupt();

addr_ptr = (char*)(addr);
data_ptr = (char*)(data);
for (uint16_t i = 0; i < MCU_PAGE_SIZE; i++)
{
if ((*data_ptr++) != (*addr_ptr++))
{
return MCU_FLASH_WRITE_ER;
}
}
return MCU_FLASH_WRITE_OK;
}


вот файл линкера для бутлоадера:
// -------------------------------------
// Code
//

-Z(CODE)CSTART,ISR_CODE,CODE_ID=E000-FF7F
-P(CODE)CODE,CODE16=E000-FF7F

// -------------------------------------
// Interrupt vectors
//

-Z(CODE)INTVEC=FF80-FFFF
-Z(CODE)RESET=FFFE-FFFF
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
KARLSON
сообщение Sep 16 2015, 06:16
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819



Цитата(slavokhire5 @ Aug 28 2015, 13:50) *
но меня смущает размер данных в получившемся файле - 2.5 кБ, а при билде иар сообщает, что размер кода должен быть около 900 байт.

Это нормально. Т.к. значение байта во флеше отображено обычными символами (формат то текстовый выбрали), причём тремя. 1 символ на каждую декаду байта плюс пробел. Вот и получается 900 * 3 = 2700 байт.


--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
Go to the top of the page
 
+Quote Post
slavokhire5
сообщение Mar 26 2016, 14:07
Сообщение #27


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 31-03-14
Из: Харьков
Пользователь №: 81 165



Привет всем. Пытаюсь разобраться с разблокированием JTAG на msp430f6721. Использую программатор MSP-FET (который черный, версия прошивки по утверждению MSPFlasher_1.3.8 - последняя), в качестве ПО - BSL_scripter v3.1.0.0. Win7 x64
после чтения бесчисленной документации от TI я пришел к выводу, что можно через BSL залить в МК прошивку, которая стирает адреса 0x17fc-0xf17ff (устанавливает в ff), тем самым сбрасывая лок JTAG-a
Проблема в том, что я не могу достучаться через BSL до МК - скриптер пытается что-то делать, довольно долго. Но содержимое флеш не меняется
Вот мой скрипт:
Код
LOG
MODE 6xx UART COM5
VERBOSE
RX_PASSWORD pass32_wrong.txt
MASS_ERASE
RX_DATA_BLOCK jtag_unlock.txt
TX_DATA_BLOCK 0x17f0 0x10 Data_Read.txt

COM5 в моей системе - MSP Application UART1

Схема включения:
Код
МК                      MSP-FET
RST/SBWTDO  -    TDO/TDI (pin1)
TEST/SBWTCK -    TCK       (pin7)
VCC            -    VCC_TOOL (pin2)
GND            -     GND (pin9)
BSL_TX        -     UART_TXD (pin12)
BSL_RX        -     UART_RXD (pin14)


пробовал эту схему включения, тоже без результата https://e2e.ti.com/cfs-file/__key/community...-Connection.png

Сообщение отредактировал slavokhire5 - Mar 26 2016, 15:32
Go to the top of the page
 
+Quote Post
mcheb
сообщение Mar 27 2016, 04:49
Сообщение #28


Местный
***

Группа: Участник
Сообщений: 326
Регистрация: 30-05-06
Пользователь №: 17 602



Для обращения к области BSL её надо разблокировать, иначе - сброс по ресету.
Go to the top of the page
 
+Quote Post
slavokhire5
сообщение Mar 27 2016, 09:44
Сообщение #29


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 31-03-14
Из: Харьков
Пользователь №: 81 165



Цитата(mcheb @ Mar 27 2016, 08:49) *
Для обращения к области BSL её надо разблокировать, иначе - сброс по ресету.


да, я знаю. я пробовал лочить JTAG из кода - получается. Теперь тем же кодом хочу его разлочить (только записывая ff). Но не могу его залить с помощью MSP-FET и BSL Scripter

Сообщение отредактировал slavokhire5 - Mar 27 2016, 09:48
Go to the top of the page
 
+Quote Post
mcheb
сообщение Mar 27 2016, 15:47
Сообщение #30


Местный
***

Группа: Участник
Сообщений: 326
Регистрация: 30-05-06
Пользователь №: 17 602



BSL Scripter должен уметь разлочивать область BSL. Пишите свой BSL Scripter.
Go to the top of the page
 
+Quote Post

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

 


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


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