上传的代码未在 Nucleo H745ZI 上执行
Posted
技术标签:
【中文标题】上传的代码未在 Nucleo H745ZI 上执行【英文标题】:Uploaded code not executing on the Nucleo H745ZI 【发布时间】:2021-06-06 14:42:11 【问题描述】:这是为熟悉 Nucleo H745ZI 或 H7 的人提出的问题。
当我收到 Nucleo H745ZI 时,它上面有闪烁的 LED 程序。这工作正常。
现在我正在尝试上传我自己的程序,但它根本没有做任何事情。 LED 和 UART 都没有输出。这是在 CubeMXIDE 中生成一个新项目之后。一切都是默认的。
我的代码;
HAL_GPIO_TogglePin (GPIOB, GPIO_PIN_14);
HAL_Delay(50);
HAL_GPIO_TogglePin (GPIOE, GPIO_PIN_1);
HAL_Delay(100);
HAL_GPIO_TogglePin (GPIOB, GPIO_PIN_0);
HAL_Delay(200);
uint8_t buff[4] = 3, 4, 5, 6;
HAL_UART_Transmit(&huart3, buff, sizeof(buff), HAL_MAX_DELAY);
我已经尝试过构建和手动上传 CM7.bin 文件并使用 CubeMXIDE 中的调试工具。两者都不起作用。
固件已更新。
顺便问一下,有谁知道我在哪里可以找到这个默认程序?
【问题讨论】:
【参考方案1】:当我们在 NUCLEO-H745ZI-Q 上工作时,请记住我们有一个双核架构,因此我们必须在 CubeMX 项目中或在 System Core > GPIO 选项卡上的 Cube IDE 配置窗口中为每个内核配置外设LEDS 和 UART 相同
一旦你生成了代码,你就会在 M4 和 M7 子项目目录中使用它们自己的源文件和 main.c 文件。
另外,根据我的经验,我注意到您必须编译和上传 core-main.c-program 才能在板上运行您的代码,特别是当您在核心 M4 上编程时,因为上传的代码在您上传之前不会执行M7 程序。
【讨论】:
嗨,JCTV。请使用 cmets 部分的 cmets。【参考方案2】:为 NUCLEO-H745ZI-Q 找到解决方案: 请勿在 Nucleo 板存储中拖放 CM4 或 CM7 bin 文件。使用STM32CubeIDE将程序上传到每一台。创建新项目时使用默认的 NUCLEO-H745ZI-Q 板设置。您只需连接 ST Link USB。
【讨论】:
以上是关于上传的代码未在 Nucleo H745ZI 上执行的主要内容,如果未能解决你的问题,请参考以下文章
CAN BUS STM32 Nucleo F429ZI CAN 写入失败
RTThread-NUCLEO-L4R5ZI-OTG(USBHOST)功能实现和测试
RTThread-NUCLEO-L4R5ZI-OTG(USBHOST)功能实现和测试