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

 
 
> [Решено] LPC1788 bootloader переход на адрес приложения, приводит к lockup
Cosmojam
сообщение Aug 15 2013, 12:11
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 311
Регистрация: 12-01-11
Из: Калининград (Koenigsberg)
Пользователь №: 62 182



Не получается запустить приложение из загрузчика. Пример из AN10866 работает на LPC1768, но на LPC1788
Код
static void boot(uint32_t a)
{
    __asm volatile (
    "LDR SP, [R0]\n"
    "LDR PC, [R0, #4]\n"
            );
}

вызывает сброс в lockup и так по кругу. На следующем старте источник сброса SYSRESET и LOCKUP в RSID.
Посмотреть отладчиком что там происходит крайне затруднительно по причине его тормознутости и глючности (китайский j-link, кое-как с openocd рабоает и вообще никак с фирменной софтиной)

Код
__disable_irq();
__disable_fault_irq();

delay_loop(3000000u);
SCB->VTOR = (start_address & 0x1FFFFF80);
__asm volatile (
            "dmb\n"
            "dsb\n"
            "isb\n"
        );
boot(start_address);


Приложение записано с помощью IAP и судя по содержимому памяти записано верно. На LPC1768 помню приходилось перед модификацией PC переключаться на встроенный RC генератор и отключать PLL Тут это тоже пробовал - не помогает, либо я не правильно читаю даташит.

Поделитесь у кого есть реально рабочий код запуска приложения из загрузчика на этом процессоре с gcc.


--------------------
typedef enum { no, yes, maybe } bool; | блог тут
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Cosmojam   [Решено] LPC1788 bootloader переход на адрес приложения   Aug 15 2013, 12:11
- - Axel   Цитата(Cosmojam @ Aug 15 2013, 15:11) Под...   Aug 15 2013, 12:44
|- - ar__systems   Цитата(Axel @ Aug 15 2013, 07:44) Делюсь:...   Sep 30 2013, 17:17
|- - Dunduk   Цитата(ar__systems @ Sep 30 2013, 21:17) ...   Nov 11 2013, 14:58
|- - Dunduk   Oops... Сам себя обманул :-) У меня в проекте там ...   Nov 13 2013, 07:18
- - _Артём_   Цитата(Cosmojam @ Aug 15 2013, 15:11) Не ...   Aug 15 2013, 12:55
|- - Cosmojam   Спасибо за код и подсказку. Буду внимательнее смот...   Aug 15 2013, 18:02
- - Fedor   Попробуйте обявить эту функцию с __attribute__((na...   Aug 16 2013, 08:29
|- - Cosmojam   Цитата(Fedor @ Aug 16 2013, 11:29) Попроб...   Aug 16 2013, 09:09
- - yanvasiij   У меня схожая проблема. При переключении из bootlo...   Nov 6 2013, 07:38
- - Cosmojam   Попробуйте отключить systick перед запуском прилож...   Nov 6 2013, 17:10
- - Bass   В таблице векторов прерываний по нулевому смещению...   Nov 6 2013, 17:39
- - yanvasiij   Cosmojam Отключение systick не помогло. Bass Не со...   Nov 7 2013, 03:25
- - yanvasiij   Я понял в чем проблема. Все дело в функции systemI...   Nov 7 2013, 07:56
|- - Cosmojam   Цитата(yanvasiij @ Nov 7 2013, 10:56) Вых...   Nov 7 2013, 09:08
- - yanvasiij   Cosmojam Где определен указатель g_pfnVectors?   Nov 7 2013, 10:02
- - Cosmojam   Цитата(yanvasiij @ Nov 7 2013, 13:02) Cos...   Nov 7 2013, 17:02


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

 


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


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