我在 ubuntu 18.04 上使用 keil MDK 时遇到问题。经过几次试用后,我可以在我的 ubuntu 操作系统上使用 keil 的 uVision IDE。一切正常,但在尝试对我的 mcu 进行编程时,它显示“未找到 ST-Link”。但是当我坚持使用 linux 时,我尝试安装 stm32cube 程序员跳跃尝试使用 hex 文件做一些事情,但没有成功。但不知何故,我管理了 st-link 实用程序(在命令行上工作)。
现在,如果我将 eclipse 的 elf 文件转换为 bin 或 hex 并通过 st-link 实用程序加载到我的 stm32f103vet 中,它就很好用!但是当我刷新由 keil 生成的十六进制文件时,它什么也没显示。不起作用。我厌倦了尝试使用keil MDK 编写stm32。
所以如果有人在他的 linux 操作系统上使用 Keil MDK,请敲这里。请帮帮我!
我正在查看为STM32F微控制器编写的一些代码,我在初始化变量之前发现了这些关键字.我想知道使用这个" __IO "和" 静态 "关键字有什么意义?
代码行是这样给出的:
static __IO uint32_t sysTickCounter;
Run Code Online (Sandbox Code Playgroud) 众所周知,微处理器执行任务的过程只是从存储器一个接一个地执行二进制指令,并且有一个程序计数器保存下一条指令的地址。因此,如果我没有记错的话,这就是处理器执行任务的方式。但是还有另一个名为堆栈指针的指针,它的作用与程序计数器几乎相同。我的问题是为什么我们需要一个堆栈指针来指向内存(堆栈)的地址?有人可以告诉我堆栈指针和程序计数器之间的主要区别吗?
我正在阅读一篇关于联合的文章,我了解到联合的大小取决于最大的变量大小,并且变量共享相同的内存。所以这个概念对我来说很清楚,但在文章中作者说当二叉树有两个指针指向另外两个孩子时,对二叉树使用“联合”是值得的。“什么是联合的应用?”在我的脑海中出现了一个问题。那篇文章的部分,联合内部指针的可能解释是什么?链接已在下面给出。
https://www.geeksforgeeks.org/union-c/
所以,就是这样。有谁能帮帮我吗?