问题标签 [stm32f4discovery]

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 投票
1 回答
1848 浏览

c++ - STM32F4浮点到整数转换

在 STM32F4 MCU 上,我需要将浮点数转换为整数。

我有 FP 数字作为 arm_pid_f32() 函数的结果,但后来我需要更新接受 12 位整数的内部 DAC 值。

我知道我会失去一些“精确度”,但如果我不转换它并让它直接传递给 DAC 更新功能,我会遇到一些奇怪的行为,这让我有问题。

最好的方法是什么?

我正在使用 KEIL MDK-ARM IDE + CMSIS DSP 库。

BTW:MCU 用于 PID 控制回路,我有 12 位 A/D,PID 算法和我的系数和 DAC 作为输出设备。DAC 目前用于调试目的,稍后将被同样需要整数的 PWM 模块取代。

0 投票
2 回答
8749 浏览

tcp - LwIP Netconn API + FreeRTOS TCP 客户端缓冲区问题

我一直在尝试使用 STM32F4DISCOVERY 板上的 LwIP 修改 tcp 服务器示例。我必须写一个不一定要回复服务器响应的发件人。例如,它可以以 100 ms 的频率发送数据。

首先,TCP服务器的例子是这样的:

我修改了这段代码以获得客户端版本,这就是我到目前为止所得到的:

当写入操作有效时,netconn_write 发送其缓冲区中的内容。它不关心是否b_data为NULL。我已经通过添加行对其进行了测试b_data = NULL;

所以 Comm Operator 中的结果输出是这样的:

但是,我希望它像这样工作:

当我再次按下按钮之前等待大约 8 秒时,就会发生所需的写入操作。

由于 netconn_write 函数不允许写入缓冲区,我无法清除它。而 netconn_send 只允许用于 UDP 连接。

我需要一些指导来理解问题并为其生成解决方案。任何帮助将不胜感激。

0 投票
1 回答
5444 浏览

stm32 - 了解 CAN 过滤器

我无法理解 stm32f4-discovery 的 CAN 过滤器配置。

有人可以向我解释这是如何工作的吗?还是在任何地方都有记录?我找不到它。

0 投票
1 回答
869 浏览

c - Using GDB to find were assertion failed (Discovering STM32 Microcontroller book)

我一直在研究 Geoffrey Brown 的《发现 STM32 微控制器》一书发现 STM32,其中一个练习(第 60 页)是修改闪烁的 LED 程序以导致断言违规并使用 gdb 在发生这种情况的代码。我真的不知道该怎么做。任何帮助将不胜感激,一两个晚上。

修改您的程序以导致断言冲突——例如,在初始化引脚时将 GPIOC 替换为 66——并使用 GDB 在库源代码中查找断言失败的位置。

0 投票
4 回答
4964 浏览

embedded - F4 Discovery 的 STM32 嵌入式 GUI 库移植

我正在尝试将STM32 嵌入式 GUI 库与 STM32F4 探索板一起使用。有没有人已经在发现时移植了这个库?否则,我该如何尝试移植它?就这种移植的工作而言,“重量”是多少?(我是嵌入式设备编程的新手)

0 投票
2 回答
4253 浏览

c - STM32F4加速度计

我需要从 STM32F4 Discovery 中的加速度计 LIS3DSH 读取一些数据。我有这个主要代码:

但它只收到第一个值。例如:

我使用 USART2 来读取这些数据。有人可以说如何实时更新数据吗?例如,如果我把板子翻过来,数据会改变吗?

0 投票
1 回答
2839 浏览

c - STM32F4 SPI 配置 SPI_Init 导致 assert_failed 循环

我正在尝试将 SPI 配置为与此处给出的 ST7565 GLCD 库一起使用。目前,我正在尝试使用 SPI1 来实现这一点。当在 main() 中调用下面给出的 init 函数时,它会导致程序在 assert_failed 函数中循环。

我注意到程序在到达 SPI_Init() 行时进入了 assert_failed 函数内部的无限循环:

assert_failed 函数(固件库中的默认值)如下:

我不知道它在 assert_failed 函数中循环是什么意思。SPI配置有问题吗?我需要指导来理解问题并提出解决方案。任何帮助将不胜感激。提前致谢。

编辑:我检查了 stm32f4xx_spi.c 中的 SPI_Init 函数内部

由于库被锁定,我无法在里面输入任何内容以在 Live Watch 中进行调试。(我正在使用 IAR EWARM)

0 投票
1 回答
1441 浏览

c - 嵌入式系统上的频率相关正弦波发生器

我对这个主题有一个类似的问题:将音符写入 wav 文件。但是,我是 stackoverflow.com 的初学者,我没有足够的声誉来添加命令,我不确定是否允许在 Q 下发布 Q。

请让我解释一下我的目的和问题。

我想用 I2S 从 stm32f4 微控制器向 DAC 发送 16 位 48kHz 采样率正弦波。我用 C 和 sin() 函数的数学库生成一个波。生成后,我正在用耳机测试声音。但是,它似乎与频率无关,但也确实如此。当频率发生变化时。参数变化,但音色没有区别。可能我需要一个 FIR 低通滤波器,但我不确定。实际上,我还尝试使用 FIR 低通滤波器(来自 Andreas Finkelmeyer 的网站,mind-dump.net)。但是,它并没有改变我的正弦波发生器代码的任何意义。

最后,我主要尝试在我的代码上遵循 Eric 的明智建议(在该主题中),但我做的事情是错误的。请帮忙!我将不胜感激。

这是我生成正弦波的代码。

非常感谢!

0 投票
2 回答
1399 浏览

makefile - 我正在尝试这个命令。“制作 stm32f429-发现”

我正在尝试这个命令。make stm32f429-discovery 我有 stm32f429-discovery board(arm cortex M3)。我想在它上面安装u-boot,我正在按照教程中给出的方法尝试这个,并得到这个错误.......

0 投票
1 回答
1528 浏览

memory - MCU 可以直接从闪存运行代码吗?

我正在使用 STM32F4Discovery 板,并且我需要使用编译时需要大约 500KB 的库来运行我的代码。我怀疑这个系统是否可以支持库的内存需求。该 MCU 具有 192KB 的 RAM 和 1MB 的闪存。这个单片机可以直接从闪存运行代码吗?

如果这个微控制器不能支持这个要求,有没有一种商业可用的方法来扩展这个系统上的 RAM?我应该使用什么技术?