野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 28813|回复: 1

求H750从外部Flash启动程序例程

[复制链接]
发表于 2021-6-22 11:55:41 | 显示全部楼层 |阅读模式
求H750从外部Flash启动程序例程:BOOT+APP的方式。


BOOT部分已做尝试:
1、QSPI_FLASH驱动部分:
  1. uint32_t QSPI_EnableMemoryMappedMode(void)
  2. {
  3.         QSPI_CommandTypeDef      s_command;
  4.         QSPI_MemoryMappedTypeDef s_mem_mapped_cfg;


  5.         s_command.InstructionMode   = QSPI_INSTRUCTION_1_LINE;
  6.         s_command.Instruction       = QUAD_INOUT_FAST_READ_CMD_4BYTE;
  7.         s_command.AddressMode       = QSPI_ADDRESS_4_LINES;
  8.         s_command.AddressSize       = QSPI_ADDRESS_32_BITS;
  9.         s_command.DataMode          = QSPI_DATA_4_LINES;
  10.         s_command.DummyCycles       = 6;
  11.         s_command.DdrMode           = QSPI_DDR_MODE_DISABLE;
  12.         s_command.DdrHoldHalfCycle  = QSPI_DDR_HHC_ANALOG_DELAY;
  13.         s_command.SIOOMode          = QSPI_SIOO_INST_EVERY_CMD;

  14.         /* Configure the memory mapping pattern */
  15.         s_mem_mapped_cfg.TimeOutActivation = QSPI_TIMEOUT_COUNTER_DISABLE;
  16.         s_mem_mapped_cfg.TimeOutPeriod     = 0;

  17.         if (HAL_QSPI_MemoryMapped(&QSPIHandle, &s_command, &s_mem_mapped_cfg) != HAL_OK)
  18.         {
  19.                 return QSPI_ERROR;
  20.         }

  21.         return QSPI_OK;
  22. }
复制代码


2、BOOT部分代码:
  1. <font face="宋体">static void JumpToApp(void)
  2. {
  3.         uint32_t i=0;
  4.         void (*AppJump)(void);
  5.         __IO uint32_t AppAddr = 0x90000000;

  6. //DISABLE_INT</font>
复制代码

    执行完“AppJump = (void (*)(void)) (*((uint32_t *) (AppAddr + 4)));”之后,程序就跑飞了。。。。。




回复

使用道具 举报

 楼主| 发表于 2021-6-24 16:31:21 | 显示全部楼层
已解决,在APP程序开始第一句增加
        //Set Interrupt vectoring address
        SCB->VTOR = QSPI_BASE;        //0x90000000
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-24 14:28 , Processed in 0.027435 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表