问题标签 [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.
discovery - STM32F4如何从Can1获取第一条消息并将其发送到Can2,Can1和Can2具有不同的速度
我有一个开发套件 STM32f4 发现套件,它有双 Canbus 接口模块。如何从 Can1 获取第一条消息并将其发送到 Can2 , Can1 和 Can2 具有不同的速度
arm - 补偿ARM中断的延迟?
我正在 STM32F4 CPU 上开发一个项目,生成信号。
我在 STM32 上的 CPU 时钟(无预分频器)上有一个通用定时器,在溢出时触发中断,之后使用 GPIO 生成周期性信号。
我需要在非常精确的时间触发 GPIO(基本上低至一个 CPU 周期精度)。我已经设法通过设置优先级和 al 将这种抖动减少到 +-5 个周期,但是这种抖动存在,具体取决于 CPU 正在做什么。
我需要补偿这几个周期的抖动。只要我在精确的时间切换 GPIO,增加几个周期的延迟就不是问题。
我的想法是读取计数器的当前值,并有一个 FIXED_NUMBER-CURRENT_VALUE 时间的活动循环,确保我会在精确的时间退出循环。
然而,在 C 中做一个简单的循环——作为一个 FOR 循环,或者一个 while(counter->value < TARGET) 不起作用,因为它增加了抖动而不是减少它。
我做错了什么/天真吗?我应该在汇编中这样做吗?这与 C 有何不同(我用 GCC 检查了反汇编以检查循环没有被优化掉,也没有达到内存?)
(我确保使用空的、未优化但未命中内存循环体)
编辑:在 AVR 上查看这个示例(我知道更稳定) 参见示例http://lucidscience.com/pro-vga%20video%20generator-7.aspx (搜索“jitter”)
edit2:我在程序集中尝试了一个简单的循环,例如(r0 是我的计数器,要等待的周期数,在寄存器中)
而且,没有它,抖动会更好。
总而言之,我已经知道我应该延迟多少。我只需要一种方法让代码分支在一个案例中可靠地消耗 N 个周期,在另一个案例中消耗 M 个周期。不幸的是,单独的分支似乎不起作用,因为管道重新填充似乎不需要可靠数量的周期,而条件表达式也不是,因为它们总是需要相同数量的周期(有时什么都不做)。
从 RAM 而不是闪存运行会提高一致性吗?(NB stm32f4 有一个闪存预取..)
c - STM32F103x_XL FLASH bank 2 保持 BUSY
我正在使用带有 STM32F10x_StdPeriph 库的 STM32F103ZG。我开始使用 Keil ARM-MDK 开发该项目,但现在转移到了 GCC。到目前为止,切换过程非常顺利。我使用FLASH的最后一页作为配置页来存储产品的具体参数。这个页面显然位于 bank 2。在某些情况下,这些配置参数需要在运行时更新,但是现在我已经转移到 GCC,当我尝试写入时,第二个 memory bank 进入忙碌状态然后它一直很忙,直到我重新启动电源。擦除工作正常,但写入失败。我确实解锁了所有 FLASH 并确保所有时钟都已初始化以访问 FLASH。几个论坛上的其他一些帖子表明我的链接器文件存在问题,但我使用的所有示例都没有区别。
如果有人能告诉我我做错了什么,我将不胜感激。
谢谢,
H
c - USART接收中断stm32
我在处理 STM32 和 USART 中断的地图上进行开发。配置 USART1 并启用接收中断后。没有检测到接收中断的问题???
stm32 - 在 STM32/CC1120 上实现无线 m-bus 协议
我正在尝试在 STM32/CC1120 系统上实现无线 m-bus 协议,但我找不到任何有关 wmbus 工作原理或任何实现示例的有用文档。任何人都可以帮我找到一些教程/文档/规范吗?谢谢 :)
sensors - 当外部温度传感器连接到 STM32F207VC 时产生 EXTI0 中断
我正在使用 STM32F207VC 控制器。我将外部探头温度传感器连接到 stm32 的内部 ADC 通道之一。
当它连接到控制器时,我想生成一个外部中断,我应该从外部温度传感器开始测量。
请任何人都可以提供我的代码或任何帮助
谢谢
user-interface - 嵌入式 GUI - 类似于 GWEN?
我编写了一个库来使用不同的 LCD,例如带有触摸屏的 TFT LCD 和现有的 RTOS。该库确实包含所有高级例程,如绘制线条、圆圈、渲染字体等。
现在,我想让这个库更有用,并给它一个小的 GUI 工具包,这样用户就可以创建按钮、滑块、单选按钮和所有其他经典的 GUI 元素。有GWEN效果很好。
我的问题:是否有像 GWEN 这样易于使用的免费开源库来满足我的目的?我不能接受像 Qt 这样的东西,因为我需要实现整个内部结构,比如事件处理和东西。此外,RTOS 需要支持 POSIX。我真的只想要 GUI 元素,仅此而已。它必须非常轻量级,并且只实现所有高级类。它应该尽可能轻巧,因为它应该在 STM32F1(ARM Cortex-M3,RAM 小于 100kB)等小型微控制器上运行。
upgrade - STM32如何升级固件?
大家好,
我认为这可能是个愚蠢的问题。
我正在使用 STM32F2XXX 系列控制器。我想升级我的固件。我的新固件将存储在控制器的 RAM 中。
因此,如果我想使用这个新固件并升级设备的固件,我需要在引导加载程序代码中进行哪些更改?
谢谢
eclipse - Eclipse 抱怨“未加载符号表”,而 elf 文件包含调试信息
我正在研究 STM32 处理器。使用 readelf -w,可以从我的 elf 文件中提取大量调试信息。一小段输出如下所示:
dwarfdump 还确认调试信息在 elf 文件中可用。
我正在使用以下软件包:Eclipse Juno arm-2011.03/bin/arm-none-eabi-gdb OpenOCD 和 JTAG 密钥
生成elf文件后,将其烧录到STM32处理器中,并在Eclipse中启动调试会话。JTAG 可以启动和停止,所以我猜 OpenOCD 守护进程很好。由于“未加载符号表”,无法设置断点。我注意到的一件事是在“变量/断点/寄存器/模块”窗口中,显示加载的 elf 文件的模块选项卡包含以下详细信息:类型:可执行符号:未加载符号文件:BuildResult.elf
在调试配置->启动选项卡中,选中/取消选中“加载图像/加载符号”没有区别。我想知道eclipse如何将包含符号信息的elf文件加载到调试过程中?
非常感谢任何建议,提示。
stm32 - 使用 Keil STM32 构建时未定义的符号 SystemInit(引用自 startup_stm32f2xx.o)
我正在使用 STM32F207VC 控制器。我正在使用 uvision4 IDE,当我尝试编译一个简单的代码时,我收到错误 tst1.axf: Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f2xx.o)。. 我已将 stm32f2x 文件放置到我的项目目录中。
但仍然是同样的问题。
请帮助解决这个问题。
谢谢