接下来配置引脚 ,这里我们采用的是PWM+DMA的方式来驱动WS2812,通过WS2812的手册可以得知驱动需要800KHZ的频率好的我们现在来配置定时器,这里以定时器1为例来配置。如下图所示。计算方法79=(64M/800K)-1得出。下面的Pulse是指一个周期的脉冲数
2022-11-17 11:07
STM32G070RB 使用jlink命令行下载无法识别芯片,想手动添加芯片,请问哪里可以下载驱动.elf文件 或者有什么方法能够实现jlink命令行下载
2024-04-02 06:15
STM32G070RB 部分代码不运行 主循环代码运行一会就不运行了,但定时器、串口都正常在工作。 单片机没有死机,就是主循环代码里的代码不运行了 请问谁知道这个是什么情况?
2024-04-02 06:55
STM32G070RB在FreeRTOS系统中,如何通过Tickless 来进入LPSleep模式或Stop模式, 以达到降低睡眠功耗的目的?
2024-03-21 07:55
预分频器,将 2000 设置为自动重载值)继续检查 STM32G070RB 上的所有定时器时,我在示波器上测量了所有定时器的 51.25Hz。所以我需要使用 TRIM 寄存器来加速定时器来校准定时器计数器,但是定时器中断都搞砸了?难道我做错了什么?
2023-01-09 06:33
大家好,我现在正在使用STM32G070RBT6。 使用CUBE MX 配置的时候发现,这个芯片的复位引脚NRST可以配置为输出,并且拥有自己的IO编号PG10 看了下datasheet,可以做
2024-04-10 06:32
根据数据表,第 3.13.3 节说 VBAT 电压由 ADC 测量为 VBAT/3,或三分之一 Vbat。使用 :uint64_t 伏特 = (uint64_t)(((uint64_t)3300U*adc_result)/(uint64_t)4095U);我得到 2/3 Vbat更改为 uint64_t volt = (uint64_t)(((uint64_t)4950U*adc_result)/(uint64_t)4095U);我记录了以下内容测得的输入电压0.500 684(似乎是最低的)1.000 9971.500 14962.000 19992.500 24963.000 29923.500 3.492那么在RM0454中,14.3.6 VBat/3,14.10 Digital值为Vbat电压的一半。同时显示 Vbat/3。但我清楚地看到来自 ADC 的 Vbat *2/3。数据表错误?谢谢
2023-01-06 07:42
我们产品有3个模式,正常工作模式(48MHZ HSI),休眠模式(8MHZ HSI),省电模式(48MHZ HSI) 1, 上电默认会将产品配置到正常工作模式,但是当系统从省电模式恢复到正常工作模式时,系统会死机。(注:当我们MASK下面的时钟初始化代码就不会有这个问题。而且不是所有的机子都会出现) 2, 可是在休眠模式恢复到正常工作模式时,就不会死机。是运行同一段代码。 时钟初始化代码为: LL_RCC_DeInit(); LL_FLASH_SetLatency(LL_FLASH_LATENCY_0); /[i] LSI configuration and activation / if(0 == LL_RCC_LSI_IsReady()) { LL_RCC_LSI_Enable(); while(0 == LL_RCC_LSI_IsReady());} s_eClockFreq = eClock; LL_UTILS_PLLInitTypeDef stPllConf = {LL_RCC_PLLM_DIV_1, 1, LL_RCC_PLLR_DIV_2}; LL_UTILS_ClkInitTypeDef stClkConf = {LL_RCC_SYSCLK_DIV_1, LL_RCC_APB1_DIV_1}; /[i] Main PLL configuration and activation / switch(eClock) { case E_CLOCK_FREQ_48MHZ: // 16 * 12 / 2 / 2 = 48MstPllConf = {LL_RCC_PLLM_DIV_2, 12, LL_RCC_PLLR_DIV_2};stClkConf = {LL_RCC_SYSCLK_DIV_1, LL_RCC_APB1_DIV_1};LL_PLL_ConfigSystemClock_HSI( stPllConf, stClkConf);break;case E_CLOCK_FREQ_32MHZ: // 16 * 8 / 2 = 64MstPllConf = {LL_RCC_PLLM_DIV_1, 8, LL_RCC_PLLR_DIV_2};// 64 / 2 = 32MstClkConf = {LL_RCC_SYSCLK_DIV_2, LL_RCC_APB1_DIV_1};LL_PLL_ConfigSystemClock_HSI( stPllConf, stClkConf);break;case E_CLOCK_FREQ_24MHZ: // 16 * 12 / 2 / 2 = 48MstPllConf = {LL_RCC_PLLM_DIV_2, 12, LL_RCC_PLLR_DIV_2};// 48 / 2 = 24MstClkConf = {LL_RCC_SYSCLK_DIV_2, LL_RCC_APB1_DIV_1};LL_PLL_ConfigSystemClock_HSI( stPllConf, stClkConf);break;case E_CLOCK_FREQ_16MHZ: // default is HSIbreak;case E_CLOCK_FREQ_4MHZ: LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_4);break;case E_CLOCK_FREQ_8MHZ: default: LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_2);break;} // update system clock frequency SystemCoreClockUpdate(); LL_RCC_GetSystemClocksFreq( s_stSystemClocks); // system tick configure LL_SYSTICK_SetClkSource(LL_SYSTICK_CLKSOURCE_HCLK); SysTick_Config((s_stSystemClocks.HCLK_Frequency / 1000)); // Enable used peripheral clock Drv_Clk_EnableUsedPeripheralsClock();
2024-03-20 08:15
元旦放假在家得到一块Nucleo-64 STM32G070RBT的开发板通过STM32CubeMX 生成的串口 无法接收数据,发送数据不会进入中断,发送数据正常 /* Includes
2024-04-09 07:13
如题 ,我想同时配置TIM1的 通道1、2、3的PWM输出,但是看魔方好像2、3没有pwm模式的选项,是不支持么,通道1可控,求大佬解惑
2024-03-11 08:30