Jump to content

    

MasterElectric

Участник
  • Content Count

    62
  • Joined

  • Last visited

Community Reputation

0 Обычный

About MasterElectric

  • Rank
    Участник

Recent Profile Visitors

391 profile views
  1. AleksBak, вы же видели картинку контроллера флеш памяти и наверняка заметили что за один раз он считывает по 256 бит данных (даже есть FIFO небольшой), а это 16 инструкций или в худшем случае 8. Шина AXI 64 битная и пересылки идут по 64 бита. Не так все и плохо. А для циклов кэш как раз и хорошо дополняет. Но запустив DWT вы всегда можете сравнить что да как.
  2. VOS0 range 1.26 V - 1.40 V, где оно пониженное? как раз на таком напряжении ядра и возможно тактирование при 480. это стандартная опция, можно и так и так. Кстати по этому поводу в Y есть эррата что на самом деле не делит, в V исправили.
  3. Смотрите. Модуль FLASH. Далее по тексту табличка с сигналами и написано что sys_ck - D1 domain bus clock (embedded Flash memory AXI interface clock), т.е. это тактовая шины AXI. Хотя название сигнала sys_ck странно выбрано.
  4. Alex Golubev Вам нужно все-таки почитать Reference manual, табличка оттуда, страницу видно на скрине. en.DM00314099.pdf
  5. Правильно даже 4WS это настройка с Y перекочевала случайно.
  6. FLASH->ACR = FLASH_ACR_LATENCY_3WS | FLASH_ACR_WRHIGHFREQ_1;
  7. а почему QSPI именно 66 МГц, шина вроде как должна уметь 133 МГц или это ограничение вашей памяти?
  8. короткая таблица это только системные прерывания. т.е. нет смысла создавать таблицу которая будет просто висеть, вектора то в ОЗУ. Ну это не тот случай много все-таки телодвижений еще нужно сделать... плохая идея.
  9. _Desh, еще для экономии флеша можно сделать короткую таблицу прерываний во флеше, экономит приличное количество памяти. Вы собираетесь что затирать весь флешь и бутлоадер тоже?
  10. Интереснее было бы с исходниками. Я хотел бы изучить возможности этой SysnemView и хотел бы прикрутить к своему диспетчеру задач.
  11. BUSY goes high as soon as the first memory-mapped access occurs. Because of the prefetch operations, BUSY does not fall until there is a timeout, there is an abort, or the peripheral is disabled.
  12. Да действительно не были указаны параметры ОЗУ, странно в JLinkDevices.xml взял такой же МК скопировал и переделал только путь к внешнему загрузчику. Как же он узнает параметры ОЗУ у него? <Device> <ChipInfo Vendor="ST" Name="STM32H750VB" Core="JLINK_CORE_CORTEX_M7" JLinkScriptFile="Devices/ST/STM32H7/ST_STM32H7xx.pex"/> <FlashBankInfo Name="QSPI Flash" BaseAddr="0x90000000" MaxSize="0x08000000" Loader="Devices/ST/STM32H7/ST_STM32H745I_Disco_QSPI.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" /> </Device> <Device> <ChipInfo Vendor="ST" Name="STM32H750VB_QSPI_BK2" Core="JLINK_CORE_CORTEX_M7" WorkRAMAddr="0x24000000" WorkRAMSize="0x8000" JLinkScriptFile="Devices/ST/STM32H7/ST_STM32H7xx.pex"/> <FlashBankInfo Name="QSPI Flash" BaseAddr="0x90000000" MaxSize="0x08000000" Loader="Devices/ST/STM32H7/ST_STM32H7_QSPI.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" /> </Device> Добавил WorkRAMAddr="0x24000000" WorkRAMSize="0x8000" и начало все работать, но это из J-Flash. Как себя поведет из CubeIDE буду смотреть ну и еще отладить нужно работу с самой QSPI флешкой. VladislavS спасибо за помощь.
  13. Не пойму до конца в чем проблема. В Segger Embedded Studio открыл проект, плюс к тем что в вики нашел еще на гите. Переделал под себя, в дебаг конфигурации все работает нормально, в каждой из функций сделал ногодрыг. Далее все по инструкции, но судя по логу J-Flash не может запустить код из ОЗУ - ERROR: Failed to initialize RAMCode это лог: - J-Link found 1 JTAG device. Core ID: 0x6BA02477 (None) - Connected successfully Erasing selected sectors ... - 4096 of 4096 sectors selected, 1 range, 0x90000000 - 0x90FFFFFF - Start of determining flash info (Bank 0 @ 0x90000000) - End of determining flash info - Flash bank info: - 4096 * 4 KB @ 0x90000000 - Start of preparing flash programming - End of preparing flash programming - Start of determining dirty areas in flash cache - End of determining dirty areas - CPU speed could not be measured. - Start of erasing sectors - ERROR: Timeout while preparing target, core does not stop. (PC = 0x080201B2, XPSR = 0x01000003, SP = 0x000008E0)! - ERROR: Failed to initialize RAMCode - Erasing range 0x90000000 - 0x9001FFFF ( 32 Sectors, 128 KB) - ERROR: Timeout while erasing sectors, core does not stop. (PC = 0x000004EE, XPSR = 0x41000003, SP = 0x00000928)! - ERROR: Failed to erase sectors. - End of erasing sectors - ERROR: Erase failed - Start of restoring - End of restoring - ERROR: Failed to erase sectors Disconnecting ... - Disconnected Куда копать дальше, у меня идей пока нет. Блин попробую еще под st-link сделать.
  14. VladislavSСпасибо то что надо.
  15. Я извиняюсь что пишу тут. Локализовал свою проблему и встал вопрос как написать свой лоадер для внешней QSPI памяти под J-Link? Где брать исходники для правки тех что предоставлены производителем. Ну или как объяснить ему что у меня есть только Flash 2 (BK2). При загрузке J-Link использует программу ST_STM32H753_Eval_QSPI.elf