stm32f4相关内容

如何在APP(Stm32f4 HAL)中更改SCB->VTOR?

我为STM32F4构建引导加载程序,并使用在system_stm32f4xx.c文件中手动更改scb->VTOR的Vect_TAB_Offset值构建用户应用程序,但如果我在应用程序中这样做的话。它工作不正常。 我在main()的开头调用了SCB->VTOR=0x8040000,但它不起作用。BOOTLOADER USER APPLICATION 推荐答案 启动代码在main() ..
发布时间:2022-04-10 17:46:52 其他开发

STM32F4定时器-计算周期和预缩放,并生成1毫秒延迟

我正在使用STM32F407VGT6和CubeMX。 所以我从通用计时器开始使用,但我遇到了预定标和周期值的问题。 基本上,我希望每隔n(其中n=1,2,3.)生成一个计时器中断并执行一些任务。 计算周期和定标前的值的公式有很多变化 公式的某些版本包括: TIMupdate Freq(HZ)=Clock/((PSC-1)*(Period-1)) 更新事件=Tim CLK/((P ..
发布时间:2022-04-10 17:22:14 其他开发

在没有“循环"的情况下重复某条指令一定次数?

我以前用过 PIC,现在我用的是 STM32F415.在我的代码的时间关键部分,我需要设置一个非常精确的延迟来调整 DAC-DMA 的周期,这些 DAC-DMA 一起工作以创建周期性模拟信号. 我想添加的延迟从 0 到 63 个时钟周期(如果我能够做 10-63 个时钟周期,那也可以).在 PIC24F 汇编中,有一条指令“REPEAT",它允许我将下一条指令重复一定次数.这对我很有用,因为 ..
发布时间:2021-11-17 22:24:58 其他开发

为什么随着 APB1 频率的变化,USART 传输的数据不正确.(RCC <= 21MHz)

我想在我的项目中使用 USART 通信协议.提供了通信,但发送了错误数据(STM> PC). 我会尝试: 边界带相同. 测试了 PLL 源多路复用器 (HSI-HSE) 和系统时钟多路复用器 (HSI-HSE-PLLCLK) 的合适组合.可用:HSE 和 PLLCLK APB1 时钟频率在允许范围内改变.观察到在每次变化时获得的数据也发生了变化.有时 STM 发送的数据非常 ..
发布时间:2021-08-30 19:28:33 其他开发

当数据大小较小时,内存到内存 DMA 传输是否存在折衷?

我正在学习 STM32 F4 微控制器.我试图找出使用 DMA 的限制. 根据我的理解和研究,我知道如果数据量小(即设备使用DMA产生或消耗少量数据),开销会增加,因为DMA传输需要DMA控制器来执行操作,从而不必要地增加系统成本. 我做了一些研究,发现了以下内容: DMA 的限制 CPU 将其所有线路置于高阻抗状态,以便 DMA 控制器可以直接在设备和内存之间传输数据,而 ..
发布时间:2021-08-30 19:27:17 其他开发

在STM32的HAL中实现单按,长按和双按功能

我正在尝试实现单按,双按和长按功能,以执行不同的功能.到目前为止,我已经了解了单按和长按的逻辑,但是我不知道如何检测到双按.至于代码,我已经使用一个计数器实现了单按和长按,但是代码只在第一个if条件下停留. bool single_press = false;bool long_press = false;如果(HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_13)){HAL_ ..
发布时间:2021-05-04 19:03:02 其他开发

什么是弱函数及其用途?我正在使用STM32F429微控制器

维基百科说: 弱符号表示在链接的过程中经过特殊注释的符号 可执行和可链接格式(ELF)对象文件.默认情况下,不带 任何注释,目标文件中的符号都是很强的.在链接期间, 强符号可以覆盖同名的弱符号.在 相反,两个共用一个名称的强符号会产生链接错误 在链接时.链接二进制可执行文件时,弱声明 符号不需要定义.相比之下,(默认情况下)a 没有定义的声明的强符号将触发未定义 符号链接错误. C或C ++ ..
发布时间:2020-07-25 20:35:07 其他开发

lwip stm32-HTTP请求失败

我使用在stm32处理器(stm32f407)上使用的套接字api运行freeRTOS和lwip 1.4.1. 总的来说,它工作得很好. 我可以使用udp和tcp发送和接收数据. 但是在3到7天的时间内,我看到了一种奇怪的行为. 我的问题 我的客户端(Windows 10,每秒发送1-2个HTTP请求)每隔3到7天无法发送这些请求.发生这种情况时,将连续有约10个请求失败.在极短 ..
发布时间:2020-06-29 21:16:00 其他开发

如何在STM32F4,Cortex M4上写入/读取FLASH

我想向FLASH中写入一个变量,例如一个数字为5的整数,然后在断电并重新打开设备电源后再读取它. 我已经知道,要写东西,我首先需要擦除页面然后再写. 在手册中说: 在Flash选项密钥寄存器(FLASH_OPTKEYR)中写入OPTKEY1 = 0x0819 2A3B 在Flash选项密钥寄存器(FLASH_OPTKEYR)中写入OPTKEY2 = 0x4C5D 6E7F ..
发布时间:2020-06-15 18:45:10 其他开发

重复一个指令一定次数而没有“循环”?

我之前使用过PIC,现在我正在使用STM32F415。 在我的代码的时间关键部分,我需要非常精确的延迟来调整正在协同工作的DAC-DMA周期以创建周期性模拟信号。 我想添加的延迟从0到63个时钟周期(如果我能够做10-63个时钟周期,那将是正常的)。在PIC24F程序集中,有一个指令“REPEAT”允许我重复下一个指令一定次数。这对我来说很有用,因为我可以做到这一点: REPEAT ..
发布时间:2017-08-15 20:51:25 HTML/CSS