stm32cubemx生成代码不自动打开keil5

stm32cubemx生成代码不自动打开keil5,第1张

跳转到MDK5界面,并出现MDK已停止工作提示框,界面呆滞不动了。
此时只能关闭MDK,有时必须调用任务管理器才能关闭此界面。可见由cubemx直接打开mdk不能成功。
尝试由文件夹来打开MDK程序,找到保存程序的文件夹,可见MDK程序已经创建直接双击f072c8t6uvprojx打开MDK程序
出现刚才停止工作的提示框,可见由文件夹直接打开工程也不行。
找了好多方法来尝试解决,如网上有说中文路径问题,java版本问题等,都没有效果。最后找到方法:用cubemx生成STM32F103的MDK程序(简单的一个空工程即可),因为生成103系列的程序可以直接打开。然后在MDK中重新选择工程路径,打开刚才F072的工程。找到刚才打开失败的F072工程,双击完美打开。
以前由cubemx生成MDK是可以直接打开的,后来突然就不能了。也不知道是哪里来的坑。有此方法能解决,记录下来。
打开CSDN,阅读体验更佳
使用STM32CubeMX生成Keil工程并完成流水灯_甜心猛男的博客_c
代码生成完以后我们点击打开工程,即可跳到我们的Keil工程中了。 注意到我们左侧的工程栏里,可以看到gpioc文件还有mainc文件,这些就是依靠STM32CubeMX给我们生成的代码了,怎么样,是不是比我们自己来写代码初始化简单多了方便多了,所以
STM32 CubeMX 生成 IAR 工程_渡己之道的博客
点击右上方的generate code 生成工程,等待完成后可选择直接打开工程。
最新发布 keil5MDK 及cubeMX安装教程
本篇文章主要带大家安装keil5和cubeMX这两个软件安装完成后就可以开始STM32的开发了。
继续访问
三、如何使用STM32CubeMx构建keil5,并且配置时钟系统
1、STM32时钟系统概述 11 时钟系统的概念及意义 111 概念 时钟系统是由振荡器(信号源)、定时唤醒器、分频器等组成的电路。常见的信号源有晶体振荡器和RC振荡器。 112 意义 时钟是嵌入式系统的脉搏,处理器内核在时钟驱动下完成指令执行,状态变化等动作,外设部件 在时钟的驱动下完成各种工作,比如串口数据的发送,A/D转换,定时器计数等等。因此时钟对于计 算机系统是至关重要的,通常时钟系统出现问题也是致命的,比如振荡器不起振、震荡
继续访问
CubeMX创建KEIL工程_ReadAir的博客_cubemx生成keil工程
1 打开CubeMX新建一个工程 2 选择工程所使用的芯片 3 设置好工程的相关参数 4 时钟配置 5 外设设置 6 生成代码 1 打开CubeMX新建一个工程 File -> NewProject,也可以使用快捷键Ctrl+N
STM32CubeMx使用教程(二)—— 创建工程、点亮LED_宝玺的博客-CSDN博
首先,打开cubemx 我们点击选择MCU型号,创建工程 选择相应的芯片类型,双击进入工程 进入工程界面,首先配置时钟 ,配置时钟为外部高速时钟,选择晶振,此时可以看到右侧芯片的OSC引脚变成绿色(1绿色代表已配置 2代表不可配置,例如电源VBAT
在STM32CubeMX生成的MDK5工程上添加RT-Thread Nano后双击工程名无法打开map文件的解决方法
RT-Thread Nano版本和RT-Thread Master版本的关系: RT-Thread Master版本不仅仅是一个实时内核,还包含了丰富的中间层组件。 RT-Thread Nano是RT-Thread Master之上进行剪裁后形成的精简版,去掉了一些组件和各种开发板的BSP,仅保留了最核心的实时内核。 当项目中使用的芯片容量较小,项目也不复杂的时候,无需使用RT-Thread Master版本中完整的组件和软件包等功能,只需最基本的内核部分就可以完成项目的开发。在RT-Thre
继续访问
关于STM32CubeMX生成不了Keil代码的解决办法
关于STM32CubeMX生成Keil代码时d出but MDK-ARM project generation have a problem的问题 有两种可能: 1、输出路径或文件名包含中文 2、Java环境版本不匹配 下载:下载地址 我的是第一种情况,设置英文路径后就可以生成Keil代码了
继续访问
STM32CubeMX生成的例程工程文件夹介绍_whalefall的博客
STM32CubeMX生成MDK-ARM工程 讨厌水的鱼 760 SMT32CubeMX的安装可以参考博客:>在原来没有复用功能的代码上你需要做的修改(这里以UART1复用为例):
1:打开重映射时钟和USART重映射后的I/O口引脚时钟, RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);
2:I/O口重映射开启
GPIO_PinRemapConfig(GPIO_Remap_USART1,ENABLE);
3:配制重映射引脚, 这里只需配置重映射后的I/O,原来的I/O配置删除或保留都行
GPIO_InitStructureGPIO_Pin = GPIO_Pin_6;
GPIO_InitStructureGPIO_Mode = GPIO_Mode_AF_PP;
GPIO_InitStructureGPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_InitStructureGPIO_Pin = GPIO_Pin_7;
GPIO_InitStructureGPIO_Mode = GPIO_Mode_IN_FLOATING;
GPIO_Init(GPIOB,&GPIO_InitStructure);

前文已经描述STM32CubeIDE的一些基本 *** 作,基于前两篇文章,已经可以完成配置工程然后编译下载的目的,但是STM32开发,最重要的是实时调试,这一章描述STM32CubeIDE通过ST-Link调试,并对照Keil进行对比。
在Keil中,如果想调试,只需要将调试器和MCU连接好后,按下Keil中的这个按钮即可,随后程序会自动暂停到main函数第一行。
Keil中进入调试按钮
在STM32CubeIDE中,选中工程的情况下,也可以在工程上右键点击如图红框所示选项或者菜单栏上的按钮进入调试状态。
STM32CubeIDE进入调试
如果该工程是第一次进入调试状态,则会d出下图所示配置窗口。
调试配置窗口
在Keil中也有类似的配置,我们对比进行说明,下图左图就是STM32CubeIDE的调试器配置栏,右图是Keil的调试配置栏目。
下列所有中,左图是STM32CubeIDE的页面截图,右图是Keil中对应页面截图,下文不在说明。
调试器配置栏
Keil中支持很多的调试器,每种调试器都有自己不同的协议和优缺点。STM32CubeIDE目前只支持三种调试器,可通过该选项配置,其中ST-Link、J-Link,对于搞单片机的人来说再熟悉不过了,OpenOCD是一个开源的功能强大的调试器,如果要使用别的调试器,例如CMSIS-DAP等,可以通过ST-Link(OpenOCD)来实现。
选择调试器
接口和频率选择,现在搞STM32一般都使用三线的SWD,特别是ST-Link OB,JLink OB出现后,方便、小巧,板子上也只需要留出SWDIO、SWCLK和GND三根线就行,很难看见JTAG口了。如果板子调试线过长或者干扰太大,可以尝试降低频率提高通信成功率。
接口和频率配置
复位选项,这里介绍下STM32CubeIDE中的各个选项含义,Keil中的选项可自行参考:>有生成代码、生成工程报告以及设置选项,这些选项需要你建立一个实际的工程以后才能使用。
STM32CubeMx软件是ST公司为STM32系列单片机快速建立工程,并快速初始化使用到的外设、GPIO等。

在 CubeIDE 中使用 STLink 仿真时,可以通过调试功能查看 printf 输出。具体步骤如下:
在代码中添加需要输出的 printf 语句。
点击 CubeIDE 工具栏中的 Debug 按钮,进入调试模式。
在调试视图中,选择 Console 标签页。
在 Console 标签页中,点击 Show Console 按钮,打开 Console 窗口。
在 Console 窗口中,可以看到程序输出的 printf 信息。
需要注意的是,为了在 STLink 仿真中查看 printf 输出,需要在代码中添加一些初始化代码和配置。具体而言,需要在 main 函数中添加以下代码:
c
Copy code
#include "stdioh"
#include "sys/unistdh" // 包含 _write 函数原型
int _write(int file, char ptr, int len)
{
HAL_UART_Transmit(&huart2, (uint8_t )ptr, len, 0xFFFF);
return len;
}
其中,_write 函数是一个系统调用,用于将 printf 输出重定向到串口。在上面的代码中,将 printf 输出重定向到了 USART2 串口,需要根据实际情况修改为对应的串口。
另外,需要在 CubeIDE 的工程配置中,将 printf 输出重定向到串口。具体而言,可以在工程属性中的 C/C++ Build - Settings - MCU GCC Compiler - Symbols 中添加下面两个宏定义:
c
Copy code
USE_FULL_ASSERT
PRINTF_USES_HAL_DRIVER
添加了这两个宏定义后,printf 输出就会自动重定向到串口,方便在 STLink 仿真中查看。

有生成代码、生成工程报告以及设置选项,这些选项需要你建立一个实际的工程以后才能使用。
STM32CubeMx软件是ST公司为STM32系列单片机快速建立工程,并快速初始化使用到的外设、GPIO等。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13387533.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-26
下一篇 2023-07-26

发表评论

登录后才能评论

评论列表(0条)

保存