你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F030 API 功能 基于CUBE库工程移植失败

[复制链接]
luscu 提问时间:2016-11-23 16:04 /
阅读主题, 点击返回1楼
收藏 2 评论24 发布时间:2016-11-23 16:04
24个回答
任风吹吹 回答时间:2016-11-23 18:27:55
由于下班了,时间不够,感觉还是欠考虑,不过可以先试下替换实用你那工程下的binary目录下的system....文件试试
liuxy236@tom.co 回答时间:2016-11-23 19:07:11
路过                    
党国特派员 回答时间:2016-11-23 21:24:01
  1. /* Includes ------------------------------------------------------------------*/
  2. #include "main.h"
  3. #include "stm32f0xx_hal.h"
  4. #include "gpio.h"

  5. /* USER CODE BEGIN Includes */

  6. /* USER CODE END Includes */

  7. /* Private variables ---------------------------------------------------------*/

  8. /* USER CODE BEGIN PV */
  9. /* Private variables ---------------------------------------------------------*/
  10. #define APPLICATION_ADDRESS     (uint32_t)0x08003000

  11. __IO uint32_t VectorTable[48] __attribute__((at(0x20000000)));

  12. pFunction Jump_To_Application;
  13. uint32_t JumpAddress;

  14. /* USER CODE END PV */

  15. /* Private function prototypes -----------------------------------------------*/
  16. void SystemClock_Config(void);
  17. void Error_Handler(void);

  18. /* USER CODE BEGIN PFP */
  19. /* Private function prototypes -----------------------------------------------*/

  20. /* USER CODE END PFP */

  21. /* USER CODE BEGIN 0 */

  22. /* USER CODE END 0 */

  23. int main(void)
  24. {

  25.   /* USER CODE BEGIN 1 */
  26.   for(uint8_t i = 0; i < 48; i++)
  27.   {
  28.     VectorTable[i] = *(__IO uint32_t*)(APPLICATION_ADDRESS + (i<<2));
  29.   }
  30.   /* USER CODE END 1 */

  31.   /* MCU Configuration----------------------------------------------------------*/

  32.   /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  33.   HAL_Init();

  34.   /* Configure the system clock */
  35.   SystemClock_Config();

  36.   /* Initialize all configured peripherals */
  37.   MX_GPIO_Init();

  38.   /* USER CODE BEGIN 2 */
  39.     /* Test if user code is programmed starting from address "APPLICATION_ADDRESS" */
  40.     //if (((*(__IO uint32_t*)APPLICATION_ADDRESS) & 0x2FFE0000 ) == 0x20000000)
  41.     {
  42.       /* Jump to user application */
  43.       JumpAddress = *(__IO uint32_t*) (APPLICATION_ADDRESS + 4);
  44.       Jump_To_Application = (pFunction) JumpAddress;
  45.       
  46.       /* Initialize user application's Stack Pointer */
  47.       __set_MSP(*(__IO uint32_t*) APPLICATION_ADDRESS);
  48.       
  49.       /* Jump to application */
  50.       Jump_To_Application();
  51.     }
  52.   /* USER CODE END 2 */

  53.   /* Infinite loop */
  54.   /* USER CODE BEGIN WHILE */
  55.   while (1)
  56.   {
  57.   /* USER CODE END WHILE */
  58.         HAL_GPIO_TogglePin(LD3_GPIO_Port,LD3_Pin);
  59.         HAL_Delay(100);
  60.   /* USER CODE BEGIN 3 */

  61.   }
  62.   /* USER CODE END 3 */

  63. }
复制代码
peter001 回答时间:2016-11-24 00:25:38
帮顶
zbber 回答时间:2016-11-24 07:28:40
在说一点,改为:
高二毛 回答时间:2016-11-24 08:26:56
关注一下。。。。
luscu 回答时间:2016-11-24 08:36:59
任风吹吹 发表于 2016-11-23 18:01
看了下,应该是SystemInit()函数问题,从IAP跳转到APP后第一件事情就是需要立即重置VectorTable,你的Syste ...

谢谢,我改为从IAP跳转到APP后第一件事情就是需要立即重置VectorTabl:
int main(void)
{

  /* USER CODE BEGIN 1 */
        uint32_t i = 0;
        for(i = 0; i < 48; i++)
  {
    VectorTable = *(__IO uint32_t*)(APPLICATION_ADDRESS + (i<<2));
  }
  /* USER CODE END 1 */
               
  /* MCU Configuration----------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* Configure the system clock */
  SystemClock_Config();
这样也是不行。
luscu 回答时间:2016-11-24 08:37:55
任风吹吹 发表于 2016-11-23 18:27
由于下班了,时间不够,感觉还是欠考虑,不过可以先试下替换实用你那工程下的binary目录下的system....文件 ...

当时我也匆匆下班了 ,天气冷了早点回家!
luscu 回答时间:2016-11-24 08:52:16
党国特派员 发表于 2016-11-23 21:23
用CubeMX NUCLEO-F042做了个项目测试了下,没有什么,主要是就是设置IRAM1的起始地址为:0x200000C0
...

非常感谢你的关注!   这个地方我也留意到了 我的APP工程的 flash的起始地址改为:0x8003000, IRAM1的起始地址也是改为:0x200000C0。(API工程是flash的起始地址改为:0x8000000, IRAM1的起始地址也是改为:0x20000000) 还是不行。.请问是否方便把你做成功的工程发过来一起探讨,API工程和APP工程,谢谢
!谢谢!
chaplin1999-262 回答时间:2016-11-24 09:16:06
QQ截图20161124091507.jpg 设置下就好了,我f0 产品一直这么用的

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

关于 意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
13245底部标题123相同标题
12底部标题123相同标题
33333底部标题123相同序号
3435底部标题-无链接
关注我们
st-img 微信公众号
st-img 手机版