问题标签 [nucleo]
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.
c - UART 接收中断检查数据结束
我想使用 RX 中断通过 UART 从我的 ESP2866 接收数据,所以我不需要轮询数据。
代码工作正常,我可以在调试时看到 rx_buffer 中的响应,但是如何检查我的 ESP 何时完成发送?
ESP 发送的最后一个字符是 \r\n 但它在传输过程中也会这样做几次,所以我不能真正依赖它。
我知道我应该以某种方式检查缓冲区中是否有 '\0' 终止符,但处理程序会在收到最后一个字符时停止。因此在处理程序中检查 '\0' 不起作用。
这可能是我想念的简单的东西,但我希望有人能帮助我。
c - STM32L0 GPIO中断不起作用
每次单击 PC13 按钮时,我都会尝试闪烁 GPIO PA5 端口上的 LED。但是,它不起作用。能否请您指教,我该如何解决这个问题?
main.c - 主程序
GPIO 端口配置部分。PA5 和 PC13 端口已配置。EXTI13 上的中断已启用。
stm32l0xx_it.c - 中断文件。定义了 IRQ 处理程序和回调函数。
此致,
c++ - ESP8266 不响应 AT 命令
我有一个Nucleo F103RB和一个Sparkfun ESP8266。
我想通过 Nucleo 向 ESP8266 发送 AT 命令。
我使用的接线:
我使用了 Serial1 的 D8
和,因为默认情况下,和引脚不可用,因为它们被 STLink 虚拟通信端口使用。我也尝试过,而不是穿上和倒置和D2
D0
D1
D10
D8
RST
3V3
TX
RX
这是我在 mbed 上的代码:
我使用Serial
而不是RawSerial
因为RawSerial
根本不适合我,我不知道为什么。
ESP8266 模块不响应工厂固件可用的任何 AT 命令。esp.readable()
无论如何都返回 false 并且esp.printf("AT+RST\r\n");
不做任何事情。
电路板是全新的,LED 工作正常。
debugging - 在 Nucleo STM32 板上设置 SWV printf
我正在使用 Atollic Truestudio IDE(基本上是 Eclipse)在各种 STM32L4 Nucleo 板上开发固件。到现在为止,我通过 UART 使用 printf,这要归功于 Virtual COM 端口。
我想使用 STM32 ITM 迁移到 printf。
更准确地说,我在 Nucleo-L4A6ZG 上工作。调试是通过 gdb 服务器进行的。
在 Atollic 上,我修改了我的调试配置以启用 SWV,其核心时钟为 80MHz。我已经按照 STM32L4 参考手册中的描述修改了我的启动脚本,如下所示。我不确定是否有必要,因为 TrueStudio/Eclipse 允许从 GUI 设置 SWV,但这样似乎更容易:
我修改了我的 _write 函数如下:
一步一步调试我看到我上线了ITM->PORT[0U].u8 = (uint8_t)ch;
最后,我在 IDE 的 SWV 控制台中启动了跟踪,但没有得到任何输出。
知道我缺少什么吗?SWV 的核心时钟呢?我不确定它对应的是什么。
c - STM32F401RE Nucleo 板,无法切换用户 LED
我试图弄清楚如何切换 Nucleo 板上的 LED,但我只是没有看到用户 LED 切换。在网上看似乎这就是你所要做的。有没有其他人遇到过这个问题?
usb - STML4 USB 虚拟串口
我有核板(nucleo-L4R5ZI)并想编写一个代码,以便能够通过 USB 将数据从 uC 发送到 PC。我遵循了一些教程,使用了 STM32CubeMx,以及在 Internet 上找到的其他解决方案,但无论如何我都失败了。我可以在 PC 端打开 vcp(使用 Hterm、TeraTerm 和 Realterm),但无法获取任何数据。
我使用 Eclipse 和内置调试器,我将其闪到 JLink。
主循环:
执行此功能后,蓝色 LED 仅亮一次,并且永远不会改变其状态(不闪烁)。这意味着 CDC_Transmit_FS(...) 只返回一次 USBD_OK,接下来的调用会给出 USBD_Busy。
MX_USB_DEVICE_Init() 如下所示:
CDC_Transmit_FS 看起来像这样:
有谁知道如何让它运行?我想念什么?
最好的,
stm32 - 备份或读取核板 stm32 的设置
我想知道是否可以备份或读取核板 stm32 的设置。它被设置为 P-NUCLEO-LRWAN1 Nucleo 包。它使用 LoRaWAN 将数据发送到网关,并且运行良好。我现在想知道是否可以更改配置(例如 lora 设置、数据格式等)。
我已经尝试过使用 stm32 st-link 实用程序和 Keil IDE。但他们只会刷写或擦除电路板。我不知道怎么读。
我没有这方面的任何背景,所以细节会很棒。如果我用了错误的词来描述事物,我深表歉意。谢谢!
stm32 - STM3 USART+DMA 收不到
我一直在学习如何对 stm32 进行编程,但遇到了一个我似乎无法自行调试的问题。基本上,我想通过 UART 接收 3 个字节并使用 DMA 将它们存储到内存中。任何帮助将不胜感激。确切的模式是 nucleo-f401RE 上的模式
基本上,代码应该做的是等待接收三个字节并打开一个 LED。USART 的时钟在 hal_msp 以及引脚配置中启用,这是正确的,因为我使用 CubeMX 生成该代码。
timer - stm32 计时器 HAL_TIM_PerioidElapsedCallback() 未触发
我刚刚开始学习如何使用 ST 的 HAL 对 ARM 微控制器进行编程。所以我有这段代码,它在输出比较模式下使用定时器生成 1khz 和 20khz 信号。一切都很好,我用示波器对其进行了测试,结果符合预期。问题在于 HAL_TIM_PeriodElapsedCallback() 应该在定时器溢出并切换 LED 时调用。LED 的配置是正确的。HAL_TIM_PeriodElapsedCallback() 被 HAL_TIM_IRQHandler(&htim3) 调用;每当定时器 3 的中断被触发时,例如定时器溢出时,都会调用它。HAL_TIM_IRQHandler(&htim3); 当输出比较寄存器与定时器“计数”寄存器匹配时也经常调用它,它调用 HAL_TIM_OC_DelayElapsedCallback()。这一切都有效,所以我知道 timer3 中断配置正确,但我无法弄清楚为什么当定时器溢出时没有调用正确的回调。我猜是输出比较触发的中断以某种方式与溢出中断混淆。我也尝试过使用调试器并遵循代码,但只是跳过了 HAL_TIM_OC_DelayElapsedCallback()。我已经包含了我的 main() 以及处理所有中断的 HAL_Timer 库中的相关代码。请帮我调试一下!PS。Nucleo_BSP_Init(); 只需配置时钟和 GPIO,因此我不会放置此代码,因为我知道 LED 可以工作,并且时钟是使用 CubeMX 配置的,所以应该没问题。我的猜测是输出比较触发的中断以某种方式与溢出中断混淆。我也尝试过使用调试器并遵循代码,但只是跳过了 HAL_TIM_OC_DelayElapsedCallback()。我已经包含了我的 main() 以及处理所有中断的 HAL_Timer 库中的相关代码。请帮我调试一下!PS。Nucleo_BSP_Init(); 只需配置时钟和 GPIO,因此我不会放置此代码,因为我知道 LED 可以工作,并且时钟是使用 CubeMX 配置的,所以应该没问题。我的猜测是输出比较触发的中断以某种方式与溢出中断混淆。我也尝试过使用调试器并遵循代码,但只是跳过了 HAL_TIM_OC_DelayElapsedCallback()。我已经包含了我的 main() 以及处理所有中断的 HAL_Timer 库中的相关代码。请帮我调试一下!PS。Nucleo_BSP_Init(); 只需配置时钟和 GPIO,因此我不会放置此代码,因为我知道 LED 可以工作,并且时钟是使用 CubeMX 配置的,所以应该没问题。请帮我调试一下!PS。Nucleo_BSP_Init(); 只需配置时钟和 GPIO,因此我不会放置此代码,因为我知道 LED 可以工作,并且时钟是使用 CubeMX 配置的,所以应该没问题。请帮我调试一下!PS。Nucleo_BSP_Init(); 只需配置时钟和 GPIO,因此我不会放置此代码,因为我知道 LED 可以工作,并且时钟是使用 CubeMX 配置的,所以应该没问题。
IRQ 处理程序代码,每当触发中断时都会被调用。
stm32 - 使用外部开关作为中断
如何在 Nucleo STM32L073RZ 微控制器中使用外部开关作为中断?
这是我的代码:
另外,如何将外部开关连接到我的电路板?