Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2020-май-28 04:19

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 31 сообщение ]  На страницу « 1 2 3 »
Автор Сообщение
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-16 06:44 
Не в сети

Зарегистрирован: 2018-июл-26 07:26
Сообщения: 8
Организация: АО СПС
Проверил в режиме UART0+JA (PE15, PE16), ситуация такая-же. Синхронизация проходит, после boot load выдает ошибку обмена.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-16 06:51 
Не в сети

Зарегистрирован: 2018-июл-26 07:26
Сообщения: 8
Организация: АО СПС
Разобрался с проблемой.
Нормально программируется только на скоростях 57600 и 115200, в обоих режимах.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-16 08:50 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 738
Откуда: г. Санкт-Петербург
Alex6151 писал(а): *
Разобрался с проблемой.
Нормально программируется только на скоростях 57600 и 115200, в обоих режимах.
Проверил UART0+JB с ft232rl на всех скоростях. Замечаний нет. Видимо у Вас какие-то проблемы с настройками драйвера для CP2101.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-16 16:05 
Не в сети

Зарегистрирован: 2019-фев-14 12:54
Сообщения: 15
Организация: "Аэроприбор-Восход"
Здравствуйте, использовали вашу утилиту для прошивки InitOTP.hex и далее сформированный файл прошивки с нашей бортовой программой.
Возникла проблема с контроллерами, имеющими маркировку 2002(с более старыми проблем не было).
При попытке использования вашей утилиты после синхронизации и сообщения "boot load..." выдаёт "ошибка обмена".
Смена скорости в программе, смена рабочего места, смена uart адаптера(ch340 и ch341) не помогли.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-16 23:39 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 738
Откуда: г. Санкт-Петербург
Voshod писал(а): *
Здравствуйте, использовали вашу утилиту для прошивки InitOTP.hex и далее сформированный файл прошивки с нашей бортовой программой.
Возникла проблема с контроллерами, имеющими маркировку 2002(с более старыми проблем не было).
При попытке использования вашей утилиты после синхронизации и сообщения "boot load..." выдаёт "ошибка обмена".
Смена скорости в программе, смена рабочего места, смена uart адаптера(ch340 и ch341) не помогли.
По всей видимости у Вас 5-я ревизия МК. В ней изменен bootloader в части загрузки через UART. Перед выполнением команды "R" новый ВООТ деинициализирует контроллер UART, и поэтому текущая версия утилиты для 5-й ревизии не годится.
Сообщите какую версию утилиты вы используете (с кварцем на HSE0 или при работе на HSI). Смогу подготовить и выложить новую версию.
Предпочтительно использовать внешний кварц на HSE0, чтобы выполнить все требования спецификации в части программирования OTP.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-17 07:56 
Не в сети

Зарегистрирован: 2019-фев-14 12:54
Сообщения: 15
Организация: "Аэроприбор-Восход"
vasili писал(а): *
Voshod писал(а): *
Здравствуйте, использовали вашу утилиту для прошивки InitOTP.hex и далее сформированный файл прошивки с нашей бортовой программой.
Возникла проблема с контроллерами, имеющими маркировку 2002(с более старыми проблем не было).
При попытке использования вашей утилиты после синхронизации и сообщения "boot load..." выдаёт "ошибка обмена".
Смена скорости в программе, смена рабочего места, смена uart адаптера(ch340 и ch341) не помогли.
По всей видимости у Вас 5-я ревизия МК. В ней изменен bootloader в части загрузки через UART. Перед выполнением команды "R" новый ВООТ деинициализирует контроллер UART, и поэтому текущая версия утилиты для 5-й ревизии не годится.
Сообщите какую версию утилиты вы используете (с кварцем на HSE0 или при работе на HSI). Смогу подготовить и выложить новую версию.
Предпочтительно использовать внешний кварц на HSE0, чтобы выполнить все требования спецификации в части программирования OTP.
Спасибо за ответ.
Используем утилиту на HSI(от 11 мая 2017).
На плате прибора, где производится прошивка, на HSE0 заведен генератор на 40Мгц.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-17 09:26 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 738
Откуда: г. Санкт-Петербург
Voshod писал(а): *
Спасибо за ответ.
Используем утилиту на HSI(от 11 мая 2017).
На плате прибора, где производится прошивка, на HSE0 заведен генератор на 40Мгц.
Не могу послать Вам ЛС (видимо у Вас они запрещены) поэтому отвечу здесь.
1. Для 5-й ревизии сделать возможность изменения скорости обмена проблематично(потребуется существенная доработка ПО), поэтому предлагаю ограничится 115200(или другой по Вашему желанию).
2. Задать частоту ядра 25(24) МГц при программировании OTP используя HSE0 40 МГц не получится (макс. частота для PLL 16 МГц).
3. Поэтому могу подготовить версию утилиты с HSI и фиксированной скоростью (при этом м.б. проблемы в части соответствия параметров программирования требованиям СП из-за нестабильной частоты HSI).
Жду ответа(лучше через ЛС).


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-17 20:11 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 738
Откуда: г. Санкт-Петербург
Версия утилиты программирования OTP для 4 и 5 ревизии МК с уточненными алгоритмами программирования на частоте ядра 22,7-25 Мгц в зависимости от частоты HSI. Прошу пользователей по возможности протестировать и сообщить о результатах.


Вложения:
PRG_OTP_UART_5_HSI.rar [425.55 КБ]
37 скачиваний
Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-мар-18 08:12 
Не в сети

Зарегистрирован: 2019-фев-14 12:54
Сообщения: 15
Организация: "Аэроприбор-Восход"
vasili писал(а): *
Версия утилиты программирования OTP для 4 и 5 ревизии МК с уточненными алгоритмами программирования на частоте ядра 22,7-25 Мгц в зависимости от частоты HSI. Прошу пользователей по возможности протестировать и сообщить о результатах.
Спасибо, всё заработало.
Программирование прошло без проблем.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-апр-01 17:23 
Не в сети

Зарегистрирован: 2018-фев-11 17:46
Сообщения: 10
Организация: ФГБУ «ИПГ»
vasili писал(а): *
Версия утилиты программирования OTP для 4 и 5 ревизии МК с уточненными алгоритмами программирования на частоте ядра 22,7-25 Мгц в зависимости от частоты HSI. Прошу пользователей по возможности протестировать и сообщить о результатах.
Vasili у меня вопрос,а откуда берется параметр divisor при входе void bootuart_otp(int divisor)
Извиняюсь, может что то не разглядел.
вижу startup_uart_loader_otp.s

MOV R0,R8

а с чего с R8 ?
Поделитесь тайными знаниями.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-апр-01 20:29 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 738
Откуда: г. Санкт-Петербург
В Cи для Cortex первый параметр функции передается через R0.
При работе BOOTLOADER 5-й ревизии после подстройки частоты в регистре R8 остается значение divisor*9600.


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-апр-02 00:15 
Не в сети

Зарегистрирован: 2018-фев-11 17:46
Сообщения: 10
Организация: ФГБУ «ИПГ»
vasili писал(а): *
При работе BOOTLOADER 5-й ревизии.
А где можно взглянуть исходники загрузчика 5-й ревизии ?


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-апр-02 08:16 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 738
Откуда: г. Санкт-Петербург
Piton писал(а): *
vasili писал(а): *
При работе BOOTLOADER 5-й ревизии.
А где можно взглянуть исходники загрузчика 5-й ревизии ?


Вложения:
boot_process13_rev5.zip [13.37 КБ]
20 скачиваний
Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-апр-02 11:44 
Не в сети

Зарегистрирован: 2018-фев-11 17:46
Сообщения: 10
Организация: ФГБУ «ИПГ»
Спасибо.
Поделюсь своими попытками проекта загрузчика под GNU MCU Eclipse ARM Embedded GCC.
Вложение:
Boot.zip [179.79 КБ]
31 скачивание


Вернуться к началу
 Заголовок сообщения: Re: Утилиты для отладочной платы
СообщениеДобавлено: 2020-апр-05 20:59 
Не в сети

Зарегистрирован: 2018-янв-05 23:41
Сообщения: 188
Организация: ФГУП "РФЯЦ-ВНИИЭФ"
Глянул мельком только момент перехода из загрузчика в основную программу. По-моему там неоправданно много ассемблера.
Я бы сделал как-то так:
Открыть
// deinit clk
void deinitCLK() {
   MDR_CLK->KEY         = 0x8555AAA1;
   MDR_CLK->PER0_CLK    = 0x00000000;
   MDR_CLK->PER1_CLK    = 0x00000000;
   MDR_CLK->KEY         = 0x00000000;
}



/*  init sp, vtor and jump to user App      */              
void runAppOTP() {
    struct VTableHeader_st {
        volatile uint32_t  MSPinitVal;
        volatile void(*ResetHandlerFuncPtr)(void);
    };
    setFPOR();
    deinitCLK();
    __DMB();
    __DSB();
    __ISB();
    register const struct VTableHeader_st *NewVTable_p = (const struct VTableHeader_st *)__OTP_BASE;
    SCB->VTOR = __OTP_BASE;
    __set_MSP(NewVTable_p->MSPinitVal);
    NewVTable_p->ResetHandlerFuncPtr();  
    __ISB();
}
Закрыть
Как это работает подробно описано в этом сообщении.
Макросы __DMB(), __DSB(), __ISB() должны определяться в файле поддержки ядра - core_cm4.h.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 31 сообщение ]  На страницу « 1 2 3 »

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: 

cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB