问题标签 [stm32]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4408 浏览

stm32 - 如何编程STM32

我是 ARM 微控制器编程的初学者,但我确实有使用 AVR 和 PIC 微控制器的经验。

几天前,我从 ebay.com 购买了(STM32 STM32F103VET6 开发)。我现在正在尝试对这个板进行编程,但我不知道从哪里开始。我还收到了一张光盘,里面有一些数据表和一些文件(都是中文的)。

有人可以告诉我如何开始吗?或者有一些源样本...

我已经安装了 Keil uVision4。我还有一个 J-link 调试器。

谢谢你。

0 投票
1 回答
1725 浏览

c - 对 extern int stm32 的未定义引用

我正在使用 Atrollic Studio(Eclipse 中也存在问题)。

.h 文件

.c 文件

我有一个问题:未定义对 `i2cIO' 的引用。这个项目需要通过 ARM 工具链编译。StM32F103VET6 - 高密度设备。我使用 ST-Link。

UPD:我的 .h 文件 - http://pastebin.com/52ftBxR9

和 c。文件 - http://pastebin.com/CcjpVZUP

编译器调用命令 - 没有大括号的“gcc”。

编译器调用参数 - “-E -P -v -dD ${plugin_state_location}/specs.c” 不带大括号。

0 投票
4 回答
31421 浏览

arm - 如何正确初始化 I2C stm32?

我想从 ADXL345 加速度计获取数据,但似乎我连接错误。

SCL-PC6(带10k电阻)

SDA-PC7(带10k电阻)

SDO-地

CS - VCC

地 - 地

3.3v - VCC

这是我的初始化代码:

在我看到的一个例子中

但我没有这个 API 可用。

请帮我。我尝试了很多解决方案,也尝试通过 SPI 连接,但没有成功:(请帮助 I2C。

0 投票
2 回答
4017 浏览

variables - STM32:非初始化变量?

使用 uvision IDE 进行 STM32 开发,我想让一些定时器变量在启动时不初始化。我努力了:

但似乎没有任何效果。根据其他地方的提示,我还在 options/target/IRAM1 中检查了 NoInit。尽管如此,变量在重置后仍设置为零。

有人可以帮忙吗?

0 投票
2 回答
3028 浏览

c++ - 为 STM32 编译时,“从 'uint8_t*' 转换为 'uint16_t' 会失去精度”

我正在尝试移植 Arduino 以太网库以libmapleSTM32设备一起使用。编译时(使用CodeSourcery GCC 工具链)。我明白了

围绕代码段:

0 投票
2 回答
1684 浏览

c - 二进制补码 stm32 c

我有一个数字是“有效字节”,它可能是 0 或 255。

这意味着 0 或 -1。

如何一次将 255 转换为 -1。

我有一个对我不起作用的功能:

0 投票
1 回答
6302 浏览

c - 如何通过 I2C 读取字节序列?

我想从我的加速度计中读取一个字节序列。我无法让它工作。当我逐字节读取时,一切正常,但是当我尝试读取序列时,我无法获得真实值。

我做错了什么?我将此函数从使用 SPI http://code.google.com/p/flyless/source/browse/trunk/FLYLess/src/hal/adxl345.c的其他函数转换

0 投票
2 回答
1311 浏览

c++ - 来自事件处理程序的 STM32 函数指针

我想知道在 STM32 的事件处理程序中通过函数指针调用函数是否安全。事件处理程序用于 I2C 并具有最高优先级。可以假设要调用的函数很快(只是一些字节重新排序)。

感谢您的任何提示或评论。

阿恩

0 投票
6 回答
28324 浏览

embedded - 如何调试 STM32 设备中的意外复位?

我正在使用 STM32F107 芯片在 C 语言中进行一些开发,并且在某些时候,当我调用特定函数时,设备开始重置。我没有调试器,我的调试只是串行端口上的纯文本。

我使用了其他一些微控制器,在这些微控制器中我能够访问寄存器以查看重置的原因,但我似乎无法找到该设备的等价物。我知道 Cortex-M3 的硬件异常,但我不知道其中一个是否被触发,因为当我在这些处理程序中时,我似乎无法通过 usart 发送文本(可能是因为我的 TX函数使用中断?)。

所以,我决定问问在这个设备上比我更有经验的人:调试这种情况通常会做什么?

编辑

其中一位开发人员激活了 WWDG 看门狗,它正在重置硬件,然后我才能从故障处理程序中获取我的信息。这是一个硬故障,因为通过指向错误位置的指针调用函数。但是,我会保留这个问题,希望有人能提供更多详细信息(或有关它的材料),以便从保存在硬故障(@dwelch 想法)中的寄存器中指向 C 代码。

0 投票
2 回答
17055 浏览

cortex-m3 - 有人知道任何非常基本的stm32教程吗?

最近我开始了一个需要 Cortex M3 处理器的项目。我以前有一些使用 8 位 AVR 微控制器的经验,所以我希望不会有太大的转变。

所以我买了一个 STM32L-Discovery 套件(因为低功耗是很重要的一点)并开始查看一些示例。但是,我一开始就完全卡住了。当使用 AVR 编程时,这一切都非常简单,只需包含 2 或 3 个文件,就可以编写一个简单的 main.c,比如一个闪烁的 LED。

然而,IAR EWARM(我正在使用)中的示例看起来都非常臃肿,文件很多,难以启动。我对大多数在线教程都有同样的问题。

有谁知道任何(非常)简单的教程可以帮助我。我正在考虑购买“ARM Cortex-M3 权威指南”,因为它似乎受到强烈推荐。

这可能是一个非常愚蠢的问题,但我现在被困太久了,我感到有点绝望。